Diassambler mach komische Sachen
-
Hi leute hab mir den IDA Pro Diassambler besorgt aber dae macht verwirrendes Zeugs.
Ich habe folgenden ASM code in eine exe Complier funktioniert auch wunderbar.
Dann hab ich ihn mit IDA Diassembliert dann kam aber ein ziemlich anderer Code rausDenn hab ich dann aber trozdem in einen Assembler gepackt aber als ich ihn assemblierern wollte funktionierte überhaubt nichts
Hoffe jemand kann mir helfen.
ASM Code Normal
; ######################################################################### .386 .model flat, stdcall option casemap :none ; case sensitive ; ######################################################################### include \masm32\include\windows.inc include \masm32\include\user32.inc include \masm32\include\kernel32.inc includelib \masm32\lib\user32.lib includelib \masm32\lib\kernel32.lib ; ######################################################################### ;============= ; Local macros ;============= szText MACRO Name, Text:VARARG LOCAL lbl jmp lbl Name db Text,0 lbl: ENDM m2m MACRO M1, M2 push M2 pop M1 ENDM return MACRO arg mov eax, arg ret ENDM ;================= ; Local prototypes ;================= WinMain PROTO :DWORD,:DWORD,:DWORD,:DWORD WndProc PROTO :DWORD,:DWORD,:DWORD,:DWORD TopXY PROTO :DWORD,:DWORD ListBox PROTO :DWORD,:DWORD,:DWORD,:DWORD,:DWORD,:DWORD ListBoxProc PROTO :DWORD,:DWORD,:DWORD,:DWORD .data szDisplayName db "List Box Demo Scheiss",0 CommandLine dd 0 hWnd dd 0 hInstance dd 0 hList1 dd 0 hList2 dd 0 lpLstBox1 dd 0 .code start: invoke GetModuleHandle, NULL mov hInstance, eax invoke GetCommandLine mov CommandLine, eax invoke WinMain,hInstance,NULL,CommandLine,SW_SHOWDEFAULT invoke ExitProcess,eax ; ######################################################################### WinMain proc hInst :DWORD, hPrevInst :DWORD, CmdLine :DWORD, CmdShow :DWORD ;==================== ; Put LOCALs on stack ;==================== LOCAL wc :WNDCLASSEX LOCAL msg :MSG LOCAL Wwd :DWORD LOCAL Wht :DWORD LOCAL Wtx :DWORD LOCAL Wty :DWORD ;================================================== ; Fill WNDCLASSEX structure with required variables ;================================================== mov wc.cbSize, sizeof WNDCLASSEX mov wc.style, CS_HREDRAW or CS_VREDRAW \ or CS_BYTEALIGNWINDOW mov wc.lpfnWndProc, offset WndProc mov wc.cbClsExtra, NULL mov wc.cbWndExtra, NULL m2m wc.hInstance, hInst ;<< NOTE: macro not mnemonic mov wc.hbrBackground, COLOR_BTNFACE+1 mov wc.lpszMenuName, NULL mov wc.lpszClassName, offset szClassName invoke LoadIcon,hInst,500 ; icon ID mov wc.hIcon, eax invoke LoadCursor,NULL,IDC_ARROW mov wc.hCursor, eax mov wc.hIconSm, 0 invoke RegisterClassEx, ADDR wc ;================================ ; Centre window at following size ;================================ mov Wwd, 470 mov Wht, 285 invoke GetSystemMetrics,SM_CXSCREEN invoke TopXY,Wwd,eax mov Wtx, eax invoke GetSystemMetrics,SM_CYSCREEN invoke TopXY,Wht,eax mov Wty, eax szText szClassName,"Template_Class" invoke CreateWindowEx,WS_EX_OVERLAPPEDWINDOW, ADDR szClassName, ADDR szDisplayName, WS_OVERLAPPEDWINDOW, Wtx,Wty,Wwd,Wht, NULL,NULL, hInst,NULL mov hWnd,eax invoke LoadMenu,hInst,600 ; menu ID invoke SetMenu,hWnd,eax invoke ShowWindow,hWnd,SW_SHOWNORMAL invoke UpdateWindow,hWnd ;=================================== ; Loop until PostQuitMessage is sent ;=================================== StartLoop: invoke GetMessage,ADDR msg,NULL,0,0 cmp eax, 0 je ExitLoop invoke TranslateMessage, ADDR msg invoke DispatchMessage, ADDR msg jmp StartLoop ExitLoop: return msg.wParam WinMain endp ; ######################################################################### WndProc proc hWin :DWORD, uMsg :DWORD, wParam :DWORD, lParam :DWORD .if uMsg == WM_COMMAND ;======== menu commands ======== .if wParam == 1000 invoke SendMessage,hWin,WM_SYSCOMMAND,SC_CLOSE,NULL .elseif wParam == 1900 szText TheMsg,"Assembler, Pure & Simple" invoke MessageBox,hWin,ADDR TheMsg,ADDR szDisplayName,MB_OK .endif ;====== end menu commands ====== .elseif uMsg == WM_CREATE invoke ListBox,20,20,200,200,hWin,500 mov hList1, eax szText Patn,"*.*" invoke SendMessage,hList1,LB_DIR,DDL_ARCHIVE or DDL_DRIVES or \ DDL_DIRECTORY,ADDR Patn invoke SetWindowLong,hList1,GWL_WNDPROC,ListBoxProc mov lpLstBox1, eax invoke ListBox,240,20,200,200,hWin,501 mov hList2, eax invoke SetWindowLong,hList2,GWL_WNDPROC,ListBoxProc mov lpLstBox1, eax jmp @@@1 lItem1 db "Roses are red,",0 lItem2 db "Violets are blue.",0 lItem3 db "If sugar is sweet,",0 lItem4 db "What happened to you ?",0 @@@1: invoke SendMessage,hList2,LB_ADDSTRING,0,ADDR lItem1 invoke SendMessage,hList2,LB_ADDSTRING,0,ADDR lItem2 invoke SendMessage,hList2,LB_ADDSTRING,0,ADDR lItem3 invoke SendMessage,hList2,LB_ADDSTRING,0,ADDR lItem4 .elseif uMsg == WM_CLOSE szText TheText,"Please Confirm Exit" invoke MessageBox,hWin,ADDR TheText,ADDR szDisplayName,MB_YESNO .if eax == IDNO return 0 .endif .elseif uMsg == WM_DESTROY invoke PostQuitMessage,NULL return 0 .endif invoke DefWindowProc,hWin,uMsg,wParam,lParam ret WndProc endp ; ######################################################################## TopXY proc wDim:DWORD, sDim:DWORD shr sDim, 1 ; divide screen dimension by 2 shr wDim, 1 ; divide window dimension by 2 mov eax, wDim ; copy window dimension into eax sub sDim, eax ; sub half win dimension from half screen dimension return sDim TopXY endp ; ######################################################################## ListBox proc a:DWORD,b:DWORD,wd:DWORD,ht:DWORD,hParent:DWORD,ID:DWORD szText lstBox,"LISTBOX" invoke CreateWindowEx,WS_EX_CLIENTEDGE,ADDR lstBox,0, WS_VSCROLL or WS_VISIBLE or \ WS_BORDER or WS_CHILD or \ LBS_HASSTRINGS or LBS_NOINTEGRALHEIGHT or \ LBS_DISABLENOSCROLL, a,b,wd,ht,hParent,ID,hInstance,NULL ret ListBox endp ; ######################################################################### ListBoxProc proc hCtl :DWORD, uMsg :DWORD, wParam :DWORD, lParam :DWORD LOCAL IndexItem :DWORD LOCAL Buffer[32] :BYTE .if uMsg == WM_LBUTTONDBLCLK jmp DoIt .elseif uMsg == WM_CHAR .if wParam == 13 jmp DoIt .endif .endif jmp EndDo DoIt: invoke SendMessage,hCtl,LB_GETCURSEL,0,0 mov IndexItem, eax invoke SendMessage,hCtl,LB_GETTEXT,IndexItem,ADDR Buffer mov eax, hList1 .if hCtl == eax szText CurSel1,"You selected from hList1" invoke MessageBox,hWnd,ADDR Buffer,ADDR CurSel1,MB_OK .else szText CurSel2,"You selected from hList2" invoke MessageBox,hWnd,ADDR Buffer,ADDR CurSel2,MB_OK .endif EndDo: invoke CallWindowProc,lpLstBox1,hCtl,uMsg,wParam,lParam ret ListBoxProc endp ; ######################################################################### end start
IDA Code
[cpp]
.text:00401000 ;
.text:00401000 ; +-------------------------------------------------------------------------+
.text:00401000 ; ¦ This file is generated by The Interactive Disassembler (IDA) ¦
.text:00401000 ; ¦ Copyright (c) 2006 by DataRescue sa/nv, ida@datarescue.com ¦
.text:00401000 ; ¦ Licensed to: Paul Ashton - Blue Lane Technologies (1-user Advanced 03/2006) ¦
.text:00401000 ; +-------------------------------------------------------------------------+
.text:00401000 ;
.text:00401000 ; Input MD5 : EDB17A3455275CB4EF4822CE0F2AC042
.text:00401000
.text:00401000 ; File Name : C:\masm32\examples\exampl01\listbox\listbox.exe
.text:00401000 ; Format : Portable executable for 80386 (PE)
.text:00401000 ; Imagebase : 400000
.text:00401000 ; Section 1. (virtual address 00001000)
.text:00401000 ; Virtual size : 0000054C ( 1356.)
.text:00401000 ; Section size in file : 00000600 ( 1536.)
.text:00401000 ; Offset to raw data for section: 00000400
.text:00401000 ; Flags 60000020: Text Executable Readable
.text:00401000 ; Alignment : default
.text:00401000
.text:00401000 .686p
.text:00401000 .mmx
.text:00401000 .model flat
.text:00401000
.text:00401000 ; ---------------------------------------------------------------------------
.text:00401000
.text:00401000 ; Segment type: Pure code
.text:00401000 ; Segment permissions: Read/Execute
.text:00401000 _text segment para public 'CODE' use32
.text:00401000 assume cs:_text
.text:00401000 ;org 401000h
.text:00401000 assume es:nothing, ss:nothing, ds:_data, fs:nothing, gs:nothing
.text:00401000
.text:00401000 ; ¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦ S U B R O U T I N E ¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦
.text:00401000
.text:00401000
.text:00401000 public start
.text:00401000 start proc near
.text:00401000 push 0 ; lpModuleName
.text:00401002 call GetModuleHandleA
.text:00401007 mov hInstance, eax
.text:0040100C call GetCommandLineA
.text:00401011 mov dword_403016, eax
.text:00401016 push 0Ah ; int
.text:00401018 push dword_403016 ; int
.text:0040101E push 0 ; int
.text:00401020 push hInstance ; hInstance
.text:00401026 call sub_401031
.text:0040102B push eax ; uExitCode
.text:0040102C call ExitProcess
.text:0040102C start endp
.text:0040102C
.text:00401031
.text:00401031 ; ¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦ S U B R O U T I N E ¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦
.text:00401031
.text:00401031 ; Attributes: bp-based frame
.text:00401031
.text:00401031 ; int __stdcall sub_401031(HINSTANCE hInstance,int,int,int)
.text:00401031 sub_401031 proc near ; CODE XREF: start+26p
.text:00401031
.text:00401031 Y = dword ptr -5Ch
.text:00401031 X = dword ptr -58h
.text:00401031 nHeight = dword ptr -54h
.text:00401031 nWidth = dword ptr -50h
.text:00401031 Msg = MSG ptr -4Ch
.text:00401031 var_30 = WNDCLASSEXA ptr -30h
.text:00401031 hInstance = dword ptr 8
.text:00401031
.text:00401031 push ebp
.text:00401032 mov ebp, esp
.text:00401034 add esp, 0FFFFFFA4h
.text:00401037 mov [ebp+var_30.cbSize], 30h
.text:0040103E mov [ebp+var_30.style], 2003h
.text:00401045 mov [ebp+var_30.lpfnWndProc], offset sub_40117C
.text:0040104C mov [ebp+var_30.cbClsExtra], 0
.text:00401053 mov [ebp+var_30.cbWndExtra], 0
.text:0040105A push [ebp+hInstance]
.text:0040105D pop [ebp+var_30.hInstance]
.text:00401060 mov [ebp+var_30.hbrBackground], 10h
.text:00401067 mov [ebp+var_30.lpszMenuName], 0
.text:0040106E mov [ebp+var_30.lpszClassName], offset ClassName ; "Template_Class"
.text:00401075 push 1F4h ; lpIconName
.text:0040107A push [ebp+hInstance] ; hInstance
.text:0040107D call LoadIconA
.text:00401082 mov [ebp+var_30.hIcon], eax
.text:00401085 push 7F00h ; lpCursorName
.text:0040108A push 0 ; hInstance
.text:0040108C call LoadCursorA
.text:00401091 mov [ebp+var_30.hCursor], eax
.text:00401094 mov [ebp+var_30.hIconSm], 0
.text:0040109B lea eax, [ebp+var_30]
.text:0040109E push eax ; WNDCLASSEXA *
.text:0040109F call RegisterClassExA
.text:004010A4 mov [ebp+nWidth], 1D6h
.text:004010AB mov [ebp+nHeight], 11Dh
.text:004010B2 push 0 ; nIndex
.text:004010B4 call GetSystemMetrics
.text:004010B9 push eax
.text:004010BA push [ebp+nWidth]
.text:004010BD call sub_40139C
.text:004010C2 mov [ebp+X], eax
.text:004010C5 push 1 ; nIndex
.text:004010C7 call GetSystemMetrics
.text:004010CC push eax
.text:004010CD push [ebp+nHeight]
.text:004010D0 call sub_40139C
.text:004010D5 mov [ebp+Y], eax
.text:004010D8 jmp short loc_4010E9
.text:004010D8 ; ---------------------------------------------------------------------------
.text:004010DA ; char ClassName[]
.text:004010DA ClassName db 'Template_Class',0 ; DATA XREF: sub_401031+3Do
.text:004010DA ; sub_401031+D7o
.text:004010E9 ; ---------------------------------------------------------------------------
.text:004010E9
.text:004010E9 loc_4010E9: ; CODE XREF: sub_401031+A7j
.text:004010E9 push 0 ; lpParam
.text:004010EB push [ebp+hInstance] ; hInstance
.text:004010EE push 0 ; hMenu
.text:004010F0 push 0 ; hWndParent
.text:004010F2 push [ebp+nHeight] ; nHeight
.text:004010F5 push [ebp+nWidth] ; nWidth
.text:004010F8 push [ebp+Y] ; Y
.text:004010FB push [ebp+X] ; X
.text:004010FE push 0CF0000h ; dwStyle
.text:00401103 push offset Caption ; "List Box Demo Scheiss"
.text:00401108 push offset ClassName ; "Template_Class"
.text:0040110D push 300h ; dwExStyle
.text:00401112 call CreateWindowExA
.text:00401117 mov hWnd, eax
.text:0040111C push 258h ; lpMenuName
.text:00401121 push [ebp+hInstance] ; hInstance
.text:00401124 call LoadMenuA
.text:00401129 push eax ; hMenu
.text:0040112A push hWnd ; hWnd
.text:00401130 call SetMenu
.text:00401135 push 1 ; nCmdShow
.text:00401137 push hWnd ; hWnd
.text:0040113D call ShowWindow
.text:00401142 push hWnd ; hWnd
.text:00401148 call UpdateWindow
.text:0040114D
.text:0040114D loc_40114D: ; CODE XREF: sub_401031+142j
.text:0040114D push 0 ; wMsgFilterMax
.text:0040114F push 0 ; wMsgFilterMin
.text:00401151 push 0 ; hWnd
.text:00401153 lea eax, [ebp+Msg]
.text:00401156 push eax ; lpMsg
.text:00401157 call GetMessageA
.text:0040115C cmp eax, 0
.text:0040115F jz short loc_401175
.text:00401161 lea eax, [ebp+Msg]
.text:00401164 push eax ; lpMsg
.text:00401165 call TranslateMessage
.text:0040116A lea eax, [ebp+Msg]
.text:0040116D push eax ; lpMsg
.text:0040116E call DispatchMessageA
.text:00401173 jmp short loc_40114D
.text:00401175 ; ---------------------------------------------------------------------------
.text:00401175
.text:00401175 loc_401175: ; CODE XREF: sub_401031+12Ej
.text:00401175 mov eax, [ebp+Msg.wParam]
.text:00401178 leave
.text:00401179 retn 10h
.text:00401179 sub_401031 endp
.text:00401179
.text:0040117C
.text:0040117C ; ¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦ S U B R O U T I N E ¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦
.text:0040117C
.text:0040117C ; Attributes: bp-based frame
.text:0040117C
.text:0040117C ; int __stdcall sub_40117C(HWND hWndParent,UINT Msg,WPARAM wParam,LPARAM lParam)
.text:0040117C sub_40117C proc near ; DATA XREF: sub_401031+14o
.text:0040117C
.text:0040117C hWndParent = dword ptr 8
.text:0040117C Msg = dword ptr 0Ch
.text:0040117C wParam = dword ptr 10h
.text:0040117C lParam = dword ptr 14h
.text:0040117C
.text:0040117C push ebp
.text:0040117D mov ebp, esp
.text:0040117F cmp [ebp+Msg], 111h
.text:00401186 jnz short loc_4011EB
.text:00401188 cmp [ebp+wParam], 3E8h
.text:0040118F jnz short loc_4011AA
.text:00401191 push 0 ; lParam
.text:00401193 push 0F060h ; wParam
.text:00401198 push 112h ; Msg
.text:0040119D push [ebp+hWndParent] ; hWnd
.text:004011A0 call SendMessageA
.text:004011A5 jmp loc_401387
.text:004011AA ; ---------------------------------------------------------------------------
.text:004011AA
.text:004011AA loc_4011AA: ; CODE XREF: sub_40117C+13j
.text:004011AA cmp [ebp+wParam], 76Ch
.text:004011B1 jnz loc_401387
.text:004011B7 jmp short loc_4011D2
.text:004011B7 ; ---------------------------------------------------------------------------
.text:004011B9 ; char Text[]
.text:004011B9 Text db 'Assembler, Pure & Simple',0 ; DATA XREF: sub_40117C+5Do
.text:004011D2 ; ---------------------------------------------------------------------------
.text:004011D2
.text:004011D2 loc_4011D2: ; CODE XREF: sub_40117C+3Bj
.text:004011D2 push 0 ; uType
.text:004011D4 push offset Caption ; "List Box Demo Scheiss"
.text:004011D9 push offset Text ; "Assembler, Pure & Simple"
.text:004011DE push [ebp+hWndParent] ; hWnd
.text:004011E1 call MessageBoxA
.text:004011E6 jmp loc_401387
.text:004011EB ; ---------------------------------------------------------------------------
.text:004011EB
.text:004011EB loc_4011EB: ; CODE XREF: sub_40117C+Aj
.text:004011EB cmp [ebp+Msg], 1
.text:004011EF jnz loc_401331
.text:004011F5 push 1F4h ; hMenu
.text:004011FA push [ebp+hWndParent] ; hWndParent
.text:004011FD push 0C8h ; nHeight
.text:00401202 push 0C8h ; nWidth
.text:00401207 push 14h ; Y
.text:00401209 push 14h ; X
.text:0040120B call sub_4013B2
.text:00401210 mov dword_403022, eax
.text:00401215 jmp short loc_40121B
.text:00401217 ; ---------------------------------------------------------------------------
.text:00401217
.text:00401217 loc_401217: ; DATA XREF: sub_40117C:loc_40121Bo
.text:00401217 sub ch, [esi]
.text:00401219 sub al, [eax]
.text:0040121B
.text:0040121B loc_40121B: ; CODE XREF: sub_40117C+99j
.text:0040121B push offset loc_401217 ; lParam
.text:00401220 push 4030h ; wParam
.text:00401225 push 18Dh ; Msg
.text:0040122A push dword_403022 ; hWnd
.text:00401230 call SendMessageA
.text:00401235 push offset sub_4013F3 ; dwNewLong
.text:0040123A push 0FFFFFFFCh ; nIndex
.text:0040123C push dword_403022 ; hWnd
.text:00401242 call SetWindowLongA
.text:00401247 mov lpPrevWndFunc, eax
.text:0040124C push 1F5h ; hMenu
.text:00401251 push [ebp+hWndParent] ; hWndParent
.text:00401254 push 0C8h ; nHeight
.text:00401259 push 0C8h ; nWidth
.text:0040125E push 14h ; Y
.text:00401260 push 0F0h ; X
.text:00401265 call sub_4013B2
.text:0040126A mov dword_403026, eax
.text:0040126F push offset sub_4013F3 ; dwNewLong
.text:00401274 push 0FFFFFFFCh ; nIndex
.text:00401276 push dword_403026 ; hWnd
.text:0040127C call SetWindowLongA
.text:00401281 mov lpPrevWndFunc, eax
.text:00401286 jmp short loc_4012D3
.text:00401286 ; ---------------------------------------------------------------------------
.text:00401288 dword_401288 dd 65736F52h, 72612073h, 65722065h
.text:00401288 ; DATA XREF: sub_40117C:loc_4012D3o
.text:00401294 db 64h, 2Ch, 0
.text:00401297 aVioletsAreBlue db 'Violets are blue.',0 ; DATA XREF: sub_40117C+16Eo
.text:004012A9 aIfSugarIsSweet db 'If sugar is sweet,',0 ; DATA XREF: sub_40117C+185o
.text:004012BC aWhatHappenedTo db 'What happened to you ?',0 ; DATA XREF: sub_40117C+19Co
.text:004012D3 ; ---------------------------------------------------------------------------
.text:004012D3
.text:004012D3 loc_4012D3: ; CODE XREF: sub_40117C+10Aj
.text:004012D3 push offset dword_401288 ; lParam
.text:004012D8 push 0 ; wParam
.text:004012DA push 180h ; Msg
.text:004012DF push dword_403026 ; hWnd
.text:004012E5 call SendMessageA
.text:004012EA push offset aVioletsAreBlue ; "Violets are blue."
.text:004012EF push 0 ; wParam
.text:004012F1 push 180h ; Msg
.text:004012F6 push dword_403026 ; hWnd
.text:004012FC call SendMessageA
.text:00401301 push offset aIfSugarIsSweet ; "If sugar is sweet,"
.text:00401306 push 0 ; wParam
.text:00401308 push 180h ; Msg
.text:0040130D push dword_403026 ; hWnd
.text:00401313 call SendMessageA
.text:00401318 push offset aWhatHappenedTo ; "What happened to you ?"
.text:0040131D push 0 ; wParam
.text:0040131F push 180h ; Msg
.text:00401324 push dword_403026 ; hWnd
.text:0040132A call SendMessageA
.text:0040132F jmp short loc_401387
.text:00401331 ; ---------------------------------------------------------------------------
.text:00401331
.text:00401331 loc_401331: ; CODE XREF: sub_40117C+73j
.text:00401331 cmp [ebp+Msg], 10h
.text:00401335 jnz short loc_401371
.text:00401337 jmp short loc_40134D
.text:00401337 ; ---------------------------------------------------------------------------
.text:00401339 ; char aPleaseConfirmE[]
.text:00401339 aPleaseConfirmE db 'Please Confirm Exit',0 ; DATA XREF: sub_40117C+1D8o
.text:0040134D ; ---------------------------------------------------------------------------
.text:0040134D
.text:0040134D loc_40134D: ; CODE XREF: sub_40117C+1BBj
.text:0040134D push 4 ; uType
.text:0040134F push offset Caption ; "List Box Demo Scheiss"
.text:00401354 push offset aPleaseConfirmE ; "Please Confirm Exit"
.text:00401359 push [ebp+hWndParent] ; hWnd
.text:0040135C call MessageBoxA
.text:00401361 cmp eax, 7
.text:00401364 jnz short loc_401387
.text:00401366 mov eax, 0
.text:0040136B leave
.text:0040136C retn 10h
.text:0040136F ; ---------------------------------------------------------------------------
.text:0040136F jmp short loc_401387
.text:00401371 ; ---------------------------------------------------------------------------
.text:00401371
.text:00401371 loc_401371: ; CODE XREF: sub_40117C+1B9j
.text:00401371 cmp [ebp+Msg], 2
.text:00401375 jnz short loc_401387
.text:00401377 push 0 ; nExitCode
.text:00401379 call PostQuitMessage
.text:0040137E mov eax, 0
.text:00401383 leave
.text:00401384 retn 10h
.text:00401387 ; ---------------------------------------------------------------------------
.text:00401387
.text:00401387 loc_401387: ; CODE XREF: sub_40117C+29j
.text:00401387 ; sub_40117C+35j ...
.text:00401387 push [ebp+lParam] ; lParam
.text:0040138A push [ebp+wParam] ; wParam
.text:0040138D push [ebp+Msg] ; Msg
.text:00401390 push [ebp+hWndParent] ; hWnd
.text:00401393 call DefWindowProcA
.text:00401398 leave
.text:00401399 retn 10h
.text:00401399 sub_40117C endp
.text:00401399
.text:0040139C
.text:0040139C ; ¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦ S U B R O U T I N E ¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦
.text:0040139C
.text:0040139C ; Attributes: bp-based frame
.text:0040139C
.text:0040139C sub_40139C proc near ; CODE XREF: sub_401031+8Cp
.text:0040139C ; sub_401031+9Fp
.text:0040139C
.text:0040139C arg_0 = dword ptr 8
.text:0040139C arg_4 = dword ptr 0Ch
.text:0040139C
.text:0040139C push ebp
.text:0040139D mov ebp, esp
.text:0040139F shr [ebp+arg_4], 1
.text:004013A2 shr [ebp+arg_0], 1
.text:004013A5 mov eax, [ebp+arg_0]
.text:004013A8 sub [ebp+arg_4], eax
.text:004013AB mov eax, [ebp+arg_4]
.text:004013AE leave
.text:004013AF retn 8
.text:004013AF sub_40139C endp
.text:004013AF
.text:004013B2
.text:004013B2 ; ¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦ S U B R O U T I N E ¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦
.text:004013B2
.text:004013B2 ; Attributes: bp-based frame
.text:004013B2
.text:004013B2 ; int __stdcall sub_4013B2(int X,int Y,int nWidth,int nHeight,HWND hWndParent,HMENU hMenu)
.text:004013B2 sub_4013B2 proc near ; CODE XREF: sub_40117C+8Fp
.text:004013B2 ; sub_40117C+E9p
.text:004013B2
.text:004013B2 X = dword ptr 8
.text:004013B2 Y = dword ptr 0Ch
.text:004013B2 nWidth = dword ptr 10h
.text:004013B2 nHeight = dword ptr 14h
.text:004013B2 hWndParent = dword ptr 18h
.text:004013B2 hMenu = dword ptr 1Ch
.text:004013B2
.text:004013B2 push ebp
.text:004013B3 mov ebp, esp
.text:004013B5 jmp short loc_4013BF
.text:004013B5 ; ---------------------------------------------------------------------------
.text:004013B7 ; char aListbox[]
.text:004013B7 aListbox db 'LISTBOX',0 ; DATA XREF: sub_4013B2+2Eo
.text:004013BF ; ---------------------------------------------------------------------------
.text:004013BF
.text:004013BF loc_4013BF: ; CODE XREF: sub_4013B2+3j
.text:004013BF push 0 ; lpParam
.text:004013C1 push hInstance ; hInstance
.text:004013C7 push [ebp+hMenu] ; hMenu
.text:004013CA push [ebp+hWndParent] ; hWndParent
.text:004013CD push [ebp+nHeight] ; nHeight
.text:004013D0 push [ebp+nWidth] ; nWidth
.text:004013D3 push [ebp+Y] ; Y
.text:004013D6 push [ebp+X] ; X
.text:004013D9 push 50A01140h ; dwStyle
.text:004013DE push 0 ; lpWindowName
.text:004013E0 push offset aListbox ; "LISTBOX"
.text:004013E5 push 200h ; dwExStyle
.text:004013EA call CreateWindowExA
.text:004013EF leave
.text:004013F0 retn 18h
.text:004013F0 sub_4013B2 endp
.text:004013F0
.text:004013F3
.text:004013F3 ; ¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦ S U B R O U T I N E ¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦
.text:004013F3
.text:004013F3 ; Attributes: bp-based frame
.text:004013F3
.text:004013F3 ; int __stdcall sub_4013F3(HWND hWnd,UINT Msg,int,LPARAM lParam)
.text:004013F3 sub_4013F3 proc near ; DATA XREF: sub_40117C+B9o
.text:004013F3 ; sub_40117C+F3o
.text:004013F3
.text:004013F3 Text = byte ptr -24h
.text:004013F3 wParam = dword ptr -4
.text:004013F3 hWnd = dword ptr 8
.text:004013F3 Msg = dword ptr 0Ch
.text:004013F3 arg_8 = dword ptr 10h
.text:004013F3 lParam = dword ptr 14h
.text:004013F3
.text:004013F3 push ebp
.text:004013F4 mov ebp, esp
.text:004013F6 add esp, 0FFFFFFDCh
.text:004013F9 cmp [ebp+Msg], 203h
.text:00401400 jnz short loc_401406
.text:00401402 jmp short loc_40141C
.text:00401404 ; ---------------------------------------------------------------------------
.text:00401404 jmp short loc_401417
.text:00401406 ; ---------------------------------------------------------------------------
.text:00401406
.text:00401406 loc_401406: ; CODE XREF: sub_4013F3+Dj
.text:00401406 cmp [ebp+Msg], 102h
.text:0040140D jnz short loc_401417
.text:0040140F cmp [ebp+arg_8], 0Dh
.text:00401413 jnz short loc_401417
.text:00401415 jmp short loc_40141C
.text:00401417 ; ---------------------------------------------------------------------------
.text:00401417
.text:00401417 loc_401417: ; CODE XREF: sub_4013F3+11j
.text:00401417 ; sub_4013F3+1Aj ...
.text:00401417 jmp loc_4014B2
.text:0040141C ; ---------------------------------------------------------------------------
.text:0040141C
.text:0040141C loc_40141C: ; CODE XREF: sub_4013F3+Fj
.text:0040141C ; sub_4013F3+22j
.text:0040141C push 0 ; lParam
.text:0040141E push 0 ; wParam
.text:00401420 push 188h ; Msg
.text:00401425 push [ebp+hWnd] ; hWnd
.text:00401428 call SendMessageA
.text:0040142D mov [ebp+wParam], eax
.text:00401430 lea eax, [ebp+Text]
.text:00401433 push eax ; lParam
.text:00401434 push [ebp+wParam] ; wParam
.text:00401437 push 189h ; Msg
.text:0040143C push [ebp+hWnd] ; hWnd
.text:0040143F call SendMessageA
.text:00401444 mov eax, dword_403022
.text:00401449 cmp [ebp+hWnd], eax
.text:0040144C jnz short loc_401481
.text:0040144E jmp short loc_401469
.text:0040144E ; ---------------------------------------------------------------------------
.text:00401450 ; char aYouSelectedFro[]
.text:00401450 aYouSelectedFro db 'You selected from hList1',0 ; DATA XREF: sub_4013F3+78o
.text:00401469 ; ---------------------------------------------------------------------------
.text:00401469
.text:00401469 loc_401469: ; CODE XREF: sub_4013F3+5Bj
.text:00401469 push 0 ; uType
.text:0040146B push offset aYouSelectedFro ; "You selected from hList1"
.text:00401470 lea eax, [ebp+Text]
.text:00401473 push eax ; lpText
.text:00401474 push hWnd ; hWnd
.text:0040147A call MessageBoxA
.text:0040147F jmp short loc_4014B2
.text:00401481 ; ---------------------------------------------------------------------------
.text:00401481
.text:00401481 loc_401481: ; CODE XREF: sub_4013F3+59j
.text:00401481 jmp short loc_40149C
.text:00401481 ; ---------------------------------------------------------------------------
.text:00401483 ; char aYouSelectedF_0[]
.text:00401483 aYouSelectedF_0 db 'You selected from hList2',0 ; DATA XREF: sub_4013F3+ABo
.text:0040149C ; ---------------------------------------------------------------------------
.text:0040149C
.text:0040149C loc_40149C: ; CODE XREF: sub_4013F3:loc_401481j
.text:0040149C push 0 ; uType
.text:0040149E push offset aYouSelectedF_0 ; "You selected from hList2"
.text:004014A3 lea eax, [ebp+Text]
.text:004014A6 push eax ; lpText
.text:004014A7 push hWnd ; hWnd
.text:004014AD call MessageBoxA
.text:004014B2
.text:004014B2 loc_4014B2: ; CODE XREF: sub_4013F3:loc_401417j
.text:004014B2 ; sub_4013F3+8Cj
.text:004014B2 push [ebp+lParam] ; lParam
.text:004014B5 push [ebp+arg_8] ; wParam
.text:004014B8 push [ebp+Msg] ; Msg
.text:004014BB push [ebp+hWnd] ; hWnd
.text:004014BE push lpPrevWndFunc ; lpPrevWndFunc
.text:004014C4 call CallWindowProcA
.text:004014C9 leave
.text:004014CA retn 10h
.text:004014CA sub_4013F3 endp
.text:004014CA
.text:004014CA ; ---------------------------------------------------------------------------
.text:004014CD align 2
.text:004014CE ; [00000006 BYTES: COLLAPSED FUNCTION CallWindowProcA. PRESS KEYPAD "+" TO EXPAND]
.text:004014D4 ; [00000006 BYTES: COLLAPSED FUNCTION CreateWindowExA. PRESS KEYPAD "+" TO EXPAND]
.text:004014DA ; [00000006 BYTES: COLLAPSED FUNCTION DefWindowProcA. PRESS KEYPAD "+" TO EXPAND]
.text:004014E0 ; [00000006 BYTES: COLLAPSED FUNCTION DispatchMessageA. PRESS KEYPAD "+" TO EXPAND]
.text:004014E6 ; [00000006 BYTES: COLLAPSED FUNCTION GetMessageA. PRESS KEYPAD "+" TO EXPAND]
.text:004014EC ; [00000006 BYTES: COLLAPSED FUNCTION GetSystemMetrics. PRESS KEYPAD "+" TO EXPAND]
.text:004014F2 ; [00000006 BYTES: COLLAPSED FUNCTION LoadCursorA. PRESS KEYPAD "+" TO EXPAND]
.text:004014F8 ; [00000006 BYTES: COLLAPSED FUNCTION LoadIconA. PRESS KEYPAD "+" TO EXPAND]
.text:004014FE ; [00000006 BYTES: COLLAPSED FUNCTION LoadMenuA. PRESS KEYPAD "+" TO EXPAND]
.text:00401504 ; [00000006 BYTES: COLLAPSED FUNCTION MessageBoxA. PRESS KEYPAD "+" TO EXPAND]
.text:0040150A ; [00000006 BYTES: COLLAPSED FUNCTION PostQuitMessage. PRESS KEYPAD "+" TO EXPAND]
.text:00401510 ; [00000006 BYTES: COLLAPSED FUNCTION RegisterClassExA. PRESS KEYPAD "+" TO EXPAND]
.text:00401516 ; [00000006 BYTES: COLLAPSED FUNCTION SendMessageA. PRESS KEYPAD "+" TO EXPAND]
.text:0040151C ; [00000006 BYTES: COLLAPSED FUNCTION SetMenu. PRESS KEYPAD "+" TO EXPAND]
.text:00401522 ; [00000006 BYTES: COLLAPSED FUNCTION SetWindowLongA. PRESS KEYPAD "+" TO EXPAND]
.text:00401528 ; [00000006 BYTES: COLLAPSED FUNCTION ShowWindow. PRESS KEYPAD "+" TO EXPAND]
.text:0040152E ; [00000006 BYTES: COLLAPSED FUNCTION TranslateMessage. PRESS KEYPAD "+" TO EXPAND]
.text:00401534 ; [00000006 BYTES: COLLAPSED FUNCTION UpdateWindow. PRESS KEYPAD "+" TO EXPAND]
.text:0040153A ; [00000006 BYTES: COLLAPSED FUNCTION ExitProcess. PRESS KEYPAD "+" TO EXPAND]
.text:00401540 ; [00000006 BYTES: COLLAPSED FUNCTION GetCommandLineA. PRESS KEYPAD "+" TO EXPAND]
.text:00401546 ; [00000006 BYTES: COLLAPSED FUNCTION GetModuleHandleA. PRESS KEYPAD "+" TO EXPAND]
.text:0040154C align 100h
.text:0040154C _text ends
.text:0040154C
.idata:00402000 ; Section 2. (virtual address 00002000)
.idata:00402000 ; Virtual size : 00000266 ( 614.)
.idata:00402000 ; Section size in file : 00000400 ( 1024.)
.idata:00402000 ; Offset to raw data for section: 00000A00
.idata:00402000 ; Flags 40000040: Data Readable
.idata:00402000 ; Alignment : default
.idata:00402000 ;
.idata:00402000 ; Imports from kernel32.dll
.idata:00402000 ;
.idata:00402000 ; ---------------------------------------------------------------------------
.idata:00402000
.idata:00402000 ; Segment type: Externs
.idata:00402000 ; _idata
.idata:00402000 ; LPSTR GetCommandLineA(void)
.idata:00402000 extrn __imp_GetCommandLineA:dword
.idata:00402000 ; DATA XREF: GetCommandLineAr
.idata:00402004 ; void __stdcall ExitProcess(UINT uExitCode)
.idata:00402004 extrn __imp_ExitProcess:dword ; DATA XREF: ExitProcessr
.idata:00402008 ; HMODULE __stdcall GetModuleHandleA(LPCSTR lpModuleName)
.idata:00402008 extrn __imp_GetModuleHandleA:dword
.idata:00402008 ; DATA XREF: GetModuleHandleAr
.idata:0040200C
.idata:00402010 ;
.idata:00402010 ; Imports from user32.dll
.idata:00402010 ;
.idata:00402010 ; BOOL __stdcall GetMessageA(LPMSG lpMsg,HWND hWnd,UINT wMsgFilterMin,UINT wMsgFilterMax)
.idata:00402010 extrn __imp_GetMessageA:dword ; DATA XREF: GetMessageAr
.idata:00402014 ; int __stdcall GetSystemMetrics(int nIndex)
.idata:00402014 extrn __imp_GetSystemMetrics:dword
.idata:00402014 ; DATA XREF: GetSystemMetricsr
.idata:00402018 ; HCURSOR __stdcall LoadCursorA(HINSTANCE hInstance,LPCSTR lpCursorName)
.idata:00402018 extrn __imp_LoadCursorA:dword ; DATA XREF: LoadCursorAr
.idata:0040201C ; HICON __stdcall LoadIconA(HINSTANCE hInstance,LPCSTR lpIconName)
.idata:0040201C extrn __imp_LoadIconA:dword ; DATA XREF: LoadIconAr
.idata:00402020 ; HMENU __stdcall LoadMenuA(HINSTANCE hInstance,LPCSTR lpMenuName)
.idata:00402020 extrn __imp_LoadMenuA:dword ; DATA XREF: LoadMenuAr
.idata:00402020 ; Loads the specified menu resource
.idata:00402020 ; from the current executable (.EXE) file
.idata:00402024 ; int __stdcall MessageBoxA(HWND hWnd,LPCSTR lpText,LPCSTR lpCaption,UINT uType)
.idata:00402024 extrn __imp_MessageBoxA:dword ; DATA XREF: MessageBoxAr
.idata:00402028 ; void __stdcall PostQuitMessage(int nExitCode)
.idata:00402028 extrn __imp_PostQuitMessage:dword
.idata:00402028 ; DATA XREF: PostQuitMessager
.idata:0040202C ; LONG __stdcall DispatchMessageA(const MSG *lpMsg)
.idata:0040202C extrn __imp_DispatchMessageA:dword
.idata:0040202C ; DATA XREF: DispatchMessageAr
.idata:00402030 ; LRESULT __stdcall SendMessageA(HWND hWnd,UINT Msg,WPARAM wParam,LPARAM lParam)
.idata:00402030 extrn __imp_SendMessageA:dword ; DATA XREF: SendMessageAr
.idata:00402034 ; BOOL __stdcall SetMenu(HWND hWnd,HMENU hMenu)
.idata:00402034 extrn __imp_SetMenu:dword ; DATA XREF: SetMenur
.idata:00402034 ; Assign a new menu to the specified window
.idata:00402038 ; LONG __stdcall SetWindowLongA(HWND hWnd,int nIndex,LONG dwNewLong)
.idata:00402038 extrn __imp_SetWindowLongA:dword
.idata:00402038 ; DATA XREF: SetWindowLongAr
.idata:0040203C ; BOOL __stdcall ShowWindow(HWND hWnd,int nCmdShow)
.idata:0040203C extrn __imp_ShowWindow:dword ; DATA XREF: ShowWindowr
.idata:00402040 ; BOOL __stdcall TranslateMessage(const MSG *lpMsg)
.idata:00402040 extrn __imp_TranslateMessage:dword
.idata:00402040 ; DATA XREF: TranslateMessager
.idata:00402044 ; BOOL __stdcall UpdateWindow(HWND hWnd)
.idata:00402044 extrn __imp_UpdateWindow:dword ; DATA XREF: UpdateWindowr
.idata:00402048 ; LRESULT __stdcall DefWindowProcA(HWND hWnd,UINT Msg,WPARAM wParam,LPARAM lParam)
.idata:00402048 extrn __imp_DefWindowProcA:dword
.idata:00402048 ; DATA XREF: DefWindowProcAr
.idata:0040204C ; HWND __stdcall CreateWindowExA(DWORD dwExStyle,LPCSTR lpClassName,LPCSTR lpWindowName,DWORD dwStyle,int X,int Y,int nWidth,int nHeight,HWND hWndParent,HMENU hMenu,HINSTANCE hInstance,LPVOID lpParam)
.idata:0040204C extrn __imp_CreateWindowExA:dword
.idata:0040204C ; DATA XREF: CreateWindowExAr
.idata:00402050 ; ATOM __stdcall RegisterClassExA(const WNDCLASSEXA
.idata:00402050 extrn __imp_RegisterClassExA:dword
.idata:00402050 ; DATA XREF: RegisterClassExAr
.idata:00402054 ; LRESULT __stdcall CallWindowProcA(WNDPROC lpPrevWndFunc,HWND hWnd,UINT Msg,WPARAM wParam,LPARAM lParam)
.idata:00402054 extrn __imp_CallWindowProcA:dword
.idata:00402054 ; DATA XREF: CallWindowProcAr
.idata:00402058
.idata:00402058
.rdata:0040205C ; ---------------------------------------------------------------------------
.rdata:0040205C
.rdata:0040205C ; Segment type: Pure data
.rdata:0040205C ; Segment permissions: Read
.rdata:0040205C _rdata segment para public 'DATA' use32
.rdata:0040205C assume cs:_rdata
.rdata:0040205C ;org 40205Ch
.rdata:0040205C db 0A8h ; ¿
.rdata:0040205D db 20h
.rdata:0040205E db 0
.rdata:0040205F db 0
.rdata:00402060 db 0
.rdata:00402061 db 0
.rdata:00402062 db 0
.rdata:00402063 db 0
.rdata:00402064 db 0
.rdata:00402065 db 0
.rdata:00402066 db 0
.rdata:00402067 db 0
.rdata:00402068 db 18h
.rdata:00402069 db 22h ; "
.rdata:0040206A db 0
.rdata:0040206B db 0
.rdata:0040206C db 10h
.rdata:0040206D db 20h
.rdata:0040206E db 0
.rdata:0040206F db 0
.rdata:00402070 db 98h ; ÿ
.rdata:00402071 db 20h
.rdata:00402072 db 0
.rdata:00402073 db 0
.rdata:00402074 db 0
.rdata:00402075 db 0
.rdata:00402076 db 0
.rdata:00402077 db 0
.rdata:00402078 db 0
.rdata:00402079 db 0
.rdata:0040207A db 0
.rdata:0040207B db 0
.rdata:0040207C db 58h ; X
.rdata:0040207D db 22h ; "
.rdata:0040207E db 0
.rdata:0040207F db 0
.rdata:00402080 db 0
.rdata:00402081 db 20h
.rdata:00402082 db 0
.rdata:00402083 db 0
.rdata:00402084 db 0
.rdata:00402085 db 0
.rdata:00402086 db 0
.rdata:00402087 db 0
.rdata:00402088 db 0
.rdata:00402089 db 0
.rdata:0040208A db 0
.rdata:0040208B db 0
.rdata:0040208C db 0
.rdata:0040208D db 0
.rdata:0040208E db 0
.rdata:0040208F db 0
.rdata:00402090 db 0
.rdata:00402091 db 0
.rdata:00402092 db 0
.rdata:00402093 db 0
.rdata:00402094 db 0
.rdata:00402095 db 0
.rdata:00402096 db 0
.rdata:00402097 db 0
.rdata:00402098 db 32h ; 2
.rdata:00402099 db 22h ; "
.rdata:0040209A db 0
.rdata:0040209B db 0
.rdata:0040209C db 24h ; $
.rdata:0040209D db 22h ; "
.rdata:0040209E db 0
.rdata:0040209F db 0
.rdata:004020A0 db 44h ; D
.rdata:004020A1 db 22h ; "
.rdata:004020A2 db 0
.rdata:004020A3 db 0
.rdata:004020A4 db 0
.rdata:004020A5 db 0
.rdata:004020A6 db 0
.rdata:004020A7 db 0
.rdata:004020A8 db 3Eh ; >
.rdata:004020A9 db 21h ; !
.rdata:004020AA db 0
.rdata:004020AB db 0
.rdata:004020AC db 4Ch ; L
.rdata:004020AD db 21h ; !
.rdata:004020AE db 0
.rdata:004020AF db 0
.rdata:004020B0 db 60h ; `
.rdata:004020B1 db 21h ; !
.rdata:004020B2 db 0
.rdata:004020B3 db 0
.rdata:004020B4 db 6Eh ; n
.rdata:004020B5 db 21h ; !
.rdata:004020B6 db 0
.rdata:004020B7 db 0
.rdata:004020B8 db 7Ah ; z
.rdata:004020B9 db 21h ; !
.rdata:004020BA db 0
.rdata:004020BB db 0
.rdata:004020BC db 86h ; å
.rdata:004020BD db 21h ; !
.rdata:004020BE db 0
.rdata:004020BF db 0
.rdata:004020C0 db 94h ; ö
.rdata:004020C1 db 21h ; !
.rdata:004020C2 db 0
.rdata:004020C3 db 0
.rdata:004020C4 db 2Ah ; *
.rdata:004020C5 db 21h ; !
.rdata:004020C6 db 0
.rdata:004020C7 db 0
.rdata:004020C8 db 0BAh ; ¦
.rdata:004020C9 db 21h ; !
.rdata:004020CA db 0
.rdata:004020CB db 0
.rdata:004020CC db 0CAh ; -
.rdata:004020CD db 21h ; !
.rdata:004020CE db 0
.rdata:004020CF db 0
.rdata:004020D0 db 0D4h ; È
.rdata:004020D1 db 21h ; !
.rdata:004020D2 db 0
.rdata:004020D3 db 0
.rdata:004020D4 db 0E6h ; µ
.rdata:004020D5 db 21h ; !
.rdata:004020D6 db 0
.rdata:004020D7 db 0
.rdata:004020D8 db 0F4h ; ¶
.rdata:004020D9 db 21h ; !
.rdata:004020DA db 0
.rdata:004020DB db 0
.rdata:004020DC db 8
.rdata:004020DD db 22h ; "
.rdata:004020DE db 0
.rdata:004020DF db 0
.rdata:004020E0 db 18h
.rdata:004020E1 db 21h ; !
.rdata:004020E2 db 0
.rdata:004020E3 db 0
.rdata:004020E4 db 6
.rdata:004020E5 db 21h ; !
.rdata:004020E6 db 0
.rdata:004020E7 db 0
.rdata:004020E8 db 0A6h ; ª
.rdata:004020E9 db 21h ; !
.rdata:004020EA db 0
.rdata:004020EB db 0
.rdata:004020EC db 0F4h ; ¶
.rdata:004020ED db 20h
.rdata:004020EE db 0
.rdata:004020EF db 0
.rdata:004020F0 db 0
.rdata:004020F1 db 0
.rdata:004020F2 db 0
.rdata:004020F3 db 0
.rdata:004020F4 db 13h
.rdata:004020F5 db 0
.rdata:004020F6 db 43h ; C
.rdata:004020F7 db 61h ; a
.rdata:004020F8 db 6Ch ; l
.rdata:004020F9 db 6Ch ; l
.rdata:004020FA db 57h ; W
.rdata:004020FB db 69h ; i
.rdata:004020FC db 6Eh ; n
.rdata:004020FD db 64h ; d
.rdata:004020FE db 6Fh ; o
.rdata:004020FF db 77h ; w
.rdata:00402100 db 50h ; P
.rdata:00402101 db 72h ; r
.rdata:00402102 db 6Fh ; o
.rdata:00402103 db 63h ; c
.rdata:00402104 db 41h ; A
.rdata:00402105 db 0
.rdata:00402106 db 54h ; T
.rdata:00402107 db 0
.rdata:00402108 db 43h ; C
.rdata:00402109 db 72h ; r
.rdata:0040210A db 65h ; e
.rdata:0040210B db 61h ; a
.rdata:0040210C db 74h ; t
.rdata:0040210D db 65h ; e
.rdata:0040210E db 57h ; W
.rdata:0040210F db 69h ; i
.rdata:00402110 db 6Eh ; n
.rdata:00402111 db 64h ; d
.rdata:00402112 db 6Fh ; o
.rdata:00402113 db 77h ; w
.rdata:00402114 db 45h ; E
.rdata:00402115 db 78h ; x
.rdata:00402116 db 41h ; A
.rdata:00402117 db 0
.rdata:00402118 db 7Eh ; ~
.rdata:00402119 db 0
.rdata:0040211A db 44h ; D
.rdata:0040211B db 65h ; e
.rdata:0040211C db 66h ; f
.rdata:0040211D db 57h ; W
.rdata:0040211E db 69h ; i
.rdata:0040211F db 6Eh ; n
.rdata:00402120 db 64h ; d
.rdata:00402121 db 6Fh ; o
.rdata:00402122 db 77h ; w
.rdata:00402123 db 50h ; P
.rdata:00402124 db 72h ; r
.rdata:00402125 db 6Fh ; o
.rdata:00402126 db 63h ; c
.rdata:00402127 db 41h ; A
.rdata:00402128 db 0
.rdata:00402129 db 0
.rdata:0040212A db 8Ch ; î
.rdata:0040212B db 0
.rdata:0040212C db 44h ; D
.rdata:0040212D db 69h ; i
.rdata:0040212E db 73h ; s
.rdata:0040212F db 70h ; p
.rdata:00402130 db 61h ; a
.rdata:00402131 db 74h ; t
.rdata:00402132 db 63h ; c
.rdata:00402133 db 68h ; h
.rdata:00402134 db 4Dh ; M
.rdata:00402135 db 65h ; e
.rdata:00402136 db 73h ; s
.rdata:00402137 db 73h ; s
.rdata:00402138 db 61h ; a
.rdata:00402139 db 67h ; g
.rdata:0040213A db 65h ; e
.rdata:0040213B db 41h ; A
.rdata:0040213C db 0
.rdata:0040213D db 0
.rdata:0040213E db 19h
.rdata:0040213F db 1
.rdata:00402140 db 47h ; G
.rdata:00402141 db 65h ; e
.rdata:00402142 db 74h ; t
.rdata:00402143 db 4Dh ; M
.rdata:00402144 db 65h ; e
.rdata:00402145 db 73h ; s
.rdata:00402146 db 73h ; s
.rdata:00402147 db 61h ; a
.rdata:00402148 db 67h ; g
.rdata:00402149 db 65h ; e
.rdata:0040214A db 41h ; A
.rdata:0040214B db 0
.rdata:0040214C db 34h ; 4
.rdata:0040214D db 1
.rdata:0040214E db 47h ; G
.rdata:0040214F db 65h ; e
.rdata:00402150 db 74h ; t
.rdata:00402151 db 53h ; S
.rdata:00402152 db 79h ; y
.rdata:00402153 db 73h ; s
.rdata:00402154 db 74h ; t
.rdata:00402155 db 65h ; e
.rdata:00402156 db 6Dh ; m
.rdata:00402157 db 4Dh ; M
.rdata:00402158 db 65h ; e
.rdata:00402159 db 74h ; t
.rdata:0040215A db 72h ; r
.rdata:0040215B db 69h ; i
.rdata:0040215C db 63h ; c
.rdata:0040215D db 73h ; s
.rdata:0040215E db 0
.rdata:0040215F db 0
.rdata:00402160 db 80h ; Ç
.rdata:00402161 db 1
.rdata:00402162 db 4Ch ; L
.rdata:00402163 db 6Fh ; o
.rdata:00402164 db 61h ; a
.rdata:00402165 db 64h ; d
.rdata:00402166 db 43h ; C
.rdata:00402167 db 75h ; u
.rdata:00402168 db 72h ; r
.rdata:00402169 db 73h ; s
.rdata:0040216A db 6Fh ; o
.rdata:0040216B db 72h ; r
.rdata:0040216C db 41h ; A
.rdata:0040216D db 0
.rdata:0040216E db 84h ; ä
.rdata:0040216F db 1
.rdata:00402170 db 4Ch ; L
.rdata:00402171 db 6Fh ; o
.rdata:00402172 db 61h ; a
.rdata:00402173 db 64h ; d
.rdata:00402174 db 49h ; I
.rdata:00402175 db 63h ; c
.rdata:00402176 db 6Fh ; o
.rdata:00402177 db 6Eh ; n
.rdata:00402178 db 41h ; A
.rdata:00402179 db 0
.rdata:0040217A db 8Ah ; è
.rdata:0040217B db 1
.rdata:0040217C db 4Ch ; L
.rdata:0040217D db 6Fh ; o
.rdata:0040217E db 61h ; a
.rdata:0040217F db 64h ; d
.rdata:00402180 db 4Dh ; M
.rdata:00402181 db 65h ; e
.rdata:00402182 db 6Eh ; n
.rdata:00402183 db 75h ; u
.rdata:00402184 db 41h ; A
.rdata:00402185 db 0
.rdata:00402186 db 9Dh ; Ø
.rdata:00402187 db 1
.rdata:00402188 db 4Dh ; M
.rdata:00402189 db 65h ; e
.rdata:0040218A db 73h ; s
.rdata:0040218B db 73h ; s
.rdata:0040218C db 61h ; a
.rdata:0040218D db 67h ; g
.rdata:0040218E db 65h ; e
.rdata:0040218F db 42h ; B
.rdata:00402190 db 6Fh ; o
.rdata:00402191 db 78h ; x
.rdata:00402192 db 41h ; A
.rdata:00402193 db 0
.rdata:00402194 db 0BFh ; +
.rdata:00402195 db 1
.rdata:00402196 db 50h ; P
.rdata:00402197 db 6Fh ; o
.rdata:00402198 db 73h ; s
.rdata:00402199 db 74h ; t
.rdata:0040219A db 51h ; Q
.rdata:0040219B db 75h ; u
.rdata:0040219C db 69h ; i
.rdata:0040219D db 74h ; t
.rdata:0040219E db 4Dh ; M
.rdata:0040219F db 65h ; e
.rdata:004021A0 db 73h ; s
.rdata:004021A1 db 73h ; s
.rdata:004021A2 db 61h ; a
.rdata:004021A3 db 67h ; g
.rdata:004021A4 db 65h ; e
.rdata:004021A5 db 0
.rdata:004021A6 db 0C8h ; +
.rdata:004021A7 db 1
.rdata:004021A8 db 52h ; R
.rdata:004021A9 db 65h ; e
.rdata:004021AA db 67h ; g
.rdata:004021AB db 69h ; i
.rdata:004021AC db 73h ; s
.rdata:004021AD db 74h ; t
.rdata:004021AE db 65h ; e
.rdata:004021AF db 72h ; r
.rdata:004021B0 db 43h ; C
.rdata:004021B1 db 6Ch ; l
.rdata:004021B2 db 61h ; a
.rdata:004021B3 db 73h ; s
.rdata:004021B4 db 73h ; s
.rdata:004021B5 db 45h ; E
.rdata:004021B6 db 78h ; x
.rdata:004021B7 db 41h ; A
.rdata:004021B8 db 0
.rdata:004021B9 db 0
.rdata:004021BA db 0E2h ; Ô
.rdata:004021BB db 1
.rdata:004021BC db 53h ; S
.rdata:004021BD db 65h ; e
.rdata:004021BE db 6Eh ; n
.rdata:004021BF db 64h ; d
.rdata:004021C0 db 4Dh ; M
.rdata:004021C1 db 65h ; e
.rdata:004021C2 db 73h ; s
.rdata:004021C3 db 73h ; s
.rdata:004021C4 db 61h ; a
.rdata:004021C5 db 67h ; g
.rdata:004021C6 db 65h ; e
.rdata:004021C7 db 41h ; A
.rdata:004021C8 db 0
.rdata:004021C9 db 0
.rdata:004021CA db 0
.rdata:004021CB db 2
.rdata:004021CC db 53h ; S
.rdata:004021CD db 65h ; e
.rdata:004021CE db 74h ; t
.rdata:004021CF db 4Dh ; M
.rdata:004021D0 db 65h ; e
.rdata:004021D1 db 6Eh ; n
.rdata:004021D2 db 75h ; u
.rdata:004021D3 db 0
.rdata:004021D4 db 1Dh
.rdata:004021D5 db 2
.rdata:004021D6 db 53h ; S
.rdata:004021D7 db 65h ; e
.rdata:004021D8 db 74h ; t
.rdata:004021D9 db 57h ; W
.rdata:004021DA db 69h ; i
.rdata:004021DB db 6Eh ; n
.rdata:004021DC db 64h ; d
.rdata:004021DD db 6Fh ; o
.rdata:004021DE db 77h ; w
.rdata:004021DF db 4Ch ; L
.rdata:004021E0 db 6Fh ; o
.rdata:004021E1 db 6Eh ; n
.rdata:004021E2 db 67h ; g
.rdata:004021E3 db 41h ; A
.rdata:004021E4 db 0
.rdata:004021E5 db 0
.rdata:004021E6 db 2Dh ; -
.rdata:004021E7 db 2
.rdata:004021E8 db 53h ; S
.rdata:004021E9 db 68h ; h
.rdata:004021EA db 6Fh ; o
.rdata:004021EB db 77h ; w
.rdata:004021EC db 57h ; W
.rdata:004021ED db 69h ; i
.rdata:004021EE db 6Eh ; n
.rdata:004021EF db 64h ; d
.rdata:004021F0 db 6Fh ; o
.rdata:004021F1 db 77h ; w
.rdata:004021F2 db 0
.rdata:004021F3 db 0
.rdata:004021F4 db 42h ; B
.rdata:004021F5 db 2
.rdata:004021F6 db 54h ; T
.rdata:004021F7 db 72h ; r
.rdata:004021F8 db 61h ; a
.rdata:004021F9 db 6Eh ; n
.rdata:004021FA db 73h ; s
.rdata:004021FB db 6Ch ; l
.rdata:004021FC db 61h ; a
.rdata:004021FD db 74h ; t
.rdata:004021FE db 65h ; e
.rdata:004021FF db 4Dh ; M
.rdata:00402200 db 65h ; e
.rdata:00402201 db 73h ; s
.rdata:00402202 db 73h ; s
.rdata:00402203 db 61h ; a
.rdata:00402204 db 67h ; g
.rdata:00402205 db 65h ; e
.rdata:00402206 db 0
.rdata:00402207 db 0
.rdata:00402208 db 4Eh ; N
.rdata:00402209 db 2
.rdata:0040220A db 55h ; U
.rdata:0040220B db 70h ; p
.rdata:0040220C db 64h ; d
.rdata:0040220D db 61h ; a
.rdata:0040220E db 74h ; t
.rdata:0040220F db 65h ; e
.rdata:00402210 db 57h ; W
.rdata:00402211 db 69h ; i
.rdata:00402212 db 6Eh ; n
.rdata:00402213 db 64h ; d
.rdata:00402214 db 6Fh ; o
.rdata:00402215 db 77h ;
-
+-------------------------------------------------------------------------+
.text:00401000 ; ¦ This file is generated by The Interactive Disassembler (IDA) ¦
.text:00401000 ; ¦ Copyright (c) 2006 by DataRescue sa/nv, ida@datarescue.com ¦
.text:00401000 ; ¦ Licensed to: Paul Ashton - Blue Lane Technologies (1-user Advanced 03/2006) ¦
.text:00401000 ; +-------------------------------------------------------------------------+soso, ida besorgt und du heißt sicher paul ashton
-
@steff3: Na sehr hilfreich.
Ich kenne zwar die Moeglichkeiten des IDA nicht (und mit MASM kenne ich mich auch nicht naeher aus), aber das, was der da ausgespuckt hat, sieht fuer mich nicht gerade nach astreinem MASM-Code aus.
--> Wie waer's mal mit Docs zum IDA lesen?BTW: Den gleichen Code, wie er im Quellcode geschrieben wurde, wirst du mit einem Disassembler sehr wahrscheinlich nie bekommen.
-
Hi, Danke
Bin ja noch echt neu in dem ganzen ASM-Zeugs.
Und ich verstehe nicht so genau was du mit dem meinst
--> Wie waer's mal mit Docs zum IDA lesen?
Docs meinst du damit tutorials ??
Oder ein Programm ??Vieleicht hast du mir ja einen Link
Gruss
ASM-Newbie
-
Damit meine ich die "Anleitung" zu diesem Disassembler (sollte mitgeliefert sein). Diese kann sowohl Tutorials als auch Beispielcodes enthalten - wie gesagt, ich kenne das Programm nicht.
Wenn deine Version irgendeine zwielichtige "raubkopierte" Klamotte sein sollte, wo die Haelfte fehlt, ist das allein dein Problem. Naehere Informationen kannst du dir mit google so oder so bitte selbst suchen. Ich bin mir ziemlich sicher, dass der Hersteller auch eine Internetseite anbietet...