// list.cpp

/*

10000000 cetlstub.dll

10000000 tlcesrv.dll

01A70000 rra_stm.dll

03BE0000 addrstor.dll

01A90000 pegobj.dll

01A80000 cefobj.dll

01CA0000 adosync.dll

02D60000 syscsps.dll

032F0000 msxml.dll

023B0000 sdmemory.dll

01AA0000 inreplce.dll

03B30000 mailtrns.dll

02C20000 richink.dll

02730000 msimeuic.dll

02740000 msimesp.dll

03C60000 uicom.dll

01B20000 syncres.dll

01AB0000 tmailutl.dll

01BC0000 cemapi.dll

025E0000 ccoreprv.dll

01B40000 syncmgr.dll

02FC0000 bthlink.dll

03700000 nspm.dll

027F0000 fatfsd.dll

00100000 btrez.dll

02F10000 netui.dll

02C00000 note_prj.dll

01B10000 doclist.dll

01C10000 mfcce300.dll

00100000 btchooserlib.dll

00100000 wbtapice.dll

02380000 oemnotify.dll

10000000 rsaenh.dll

028D0000 wapdrv.dll

028C0000 wap.dll

033C0000 imaging.dll

02CD0000 pimutil.dll

01BE0000 calstore.dll

03C50000 pimapi.dll

02D20000 outres.dll

02D00000 chngtrk.dll

02FF0000 cspras.dll

02FE0000 cspnet.dll

02FD0000 cspproxy.dll

01930000 configmanager.dll

03000000 connplan.dll

034A0000 shlwapi.dll

03410000 wininet.dll

03710000 wspm.dll

03030000 obexsrvr.dll

025C0000 spim.dll

029F0000 btdrt.dll

027D0000 toolhelp.dll

02E70000 ceshell.dll

03020000 cellcore.dll

02DF0000 shutil.dll

02E00000 tshres.dll

02EB0000 commctrl.dll

02990000 oleaut32.dll

028F0000 ossvcs.dll

02E40000 aygshell.dll

026E0000 touch.dll

01800000 hwtouch.dll

026D0000 keybddr.dll

026F0000 ddi.dll

023C0000 xscsdcard.dll

023D0000 sdbusdriver.dll

02AB0000 ethman.dll

03680000 eapol.dll

036A0000 wzcsvc.dll

035D0000 ipv6hlp.dll

02A10000 ndisuio.dll

02A80000 ircomm.dll

036F0000 ssllsp.dll

03720000 ws2instl.dll

02DD0000 msnsspc.dll

02A70000 spnego.dll

036B0000 ntlmssp.dll

036C0000 schannel.dll

036E0000 secur32.dll

03070000 redir.dll

02630000 bthuniv.dll

02670000 btd.dll

030D0000 irdastk.dll

035E0000 tcpip6.dll

03D50000 ipsec.dll

03560000 netbios.dll

03640000 dhcp.dll

03670000 eap.dll

03570000 tcpstk.dll

03780000 ppp.dll

02A50000 afd.dll

030A0000 unimodem.dll

030B0000 tapi.dll

029C0000 ole32.dll

03120000 softkb.dll

03D00000 ipsecsvc.dll

02A00000 msasn1.dll

02770000 crypt32.dll

03750000 iphlpapi.dll

03760000 cxport.dll

03D70000 l2tp.dll

03770000 asyncmac.dll

02A90000 pptp.dll

023F0000 irsir.dll

02A20000 ndis.dll

02AC0000 audevman.dll

03100000 waveapi.dll

030F0000 gsm610.acm

02400000 pcmcia.dll

02420000 wavedev.dll

02410000 sc2410_usb_ser.dll

023E0000 ser2410.dll

023A0000 frontlight.dll

03730000 ws2.dll

03740000 winsock.dll

00100000 btceif.dll

02390000 battdrvr.dll

02820000 regenum.dll

027C0000 ceddk.dll

02810000 pm.dll

02710000 oemregistry.dll

027E0000 relfsd.dll

03FB0000 binfs.dll

03FD0000 mspart.dll

03FC0000 flashdrv.dll

03FE0000 fsdmgr.dll

01F60000 coredll.dll

*/



#include "stdafx.h"



extern "C" void __stdcall SetProcessorMode(DWORD pMode);



int WINAPI WinMain( HINSTANCE hInstance,

                    HINSTANCE hPrevInstance,

                    LPTSTR    lpCmdLine,

                    int       nCmdShow)

{

    FILE *fp;

    unsigned int KDataStruct = 0xFFFFC800;

    void *Modules     = NULL,

         *BaseAddress = NULL,

         *DllName     = NULL;

    

	// switch to user mode

	//SetProcessorMode(0x10);



    if ( (fp = fopen("\\modules.txt", "w")) == NULL )

    {

        return 1;

    }



    // aInfo[KINX_MODULES]

    Modules = *( ( void ** )(KDataStruct + 0x324));



    while (Modules) {

        BaseAddress = *( ( void ** )( ( unsigned char * )Modules + 0x7c ) );

        DllName     = *( ( void ** )( ( unsigned char * )Modules + 0x8 ) );



        fprintf(fp, "%08X %ls\n", BaseAddress, DllName);



        Modules = *( ( void ** )( ( unsigned char * )Modules + 0x4 ) );

    }



    fclose(fp);

    return(EXIT_SUCCESS);

}

