Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- .text:00401000 ; =============== S U B R O U T I N E =======================================
- .text:00401000
- .text:00401000 ; Attributes: bp-based frame
- .text:00401000
- .text:00401000 sub_401000 proc near ; CODE XREF: start-5Bp
- .text:00401000
- .text:00401000 var_118 = dword ptr -118h
- .text:00401000 var_114 = dword ptr -114h
- .text:00401000 var_110 = dword ptr -110h
- .text:00401000 var_10C = dword ptr -10Ch
- .text:00401000 var_108 = dword ptr -108h
- .text:00401000 var_104 = dword ptr -104h
- .text:00401000 var_4 = dword ptr -4
- .text:00401000
- .text:00401000 push ebp
- .text:00401001 mov ebp, esp
- .text:00401003 sub esp, 118h
- .text:00401009 mov eax, dword_410004
- .text:0040100E xor eax, ebp
- .text:00401010 mov [ebp+var_4], eax
- .text:00401013 push ebx
- .text:00401014 push offset unk_40E9D4
- .text:00401019 call sub_40134F
- .text:0040101E lea eax, [ebp+var_104]
- .text:00401024 push eax
- .text:00401025 push offset unk_40E9E8
- .text:0040102A call sub_40122F
- .text:0040102F push 10h
- .text:00401031 lea ecx, [ebp+var_104]
- .text:00401037 push 0
- .text:00401039 push ecx
- .text:0040103A call sub_4016BE
- .text:0040103F push offset aII2bytexa ; "ë¦ê-2byteò¥-->"
- .text:00401044 mov [ebp+var_118], eax
- .text:0040104A call sub_40134F
- .text:0040104F lea edx, [ebp+var_10C]
- .text:00401055 push edx
- .text:00401056 push offset aD ; "%d"
- .text:0040105B call sub_40122F
- .text:00401060 push offset aPFqrf ; "Å-önÉö------->"
- .text:00401065 call sub_40134F
- .text:0040106A lea eax, [ebp+var_110]
- .text:00401070 push eax
- .text:00401071 push offset aD ; "%d"
- .text:00401076 call sub_40122F
- .text:0040107B push offset aLcxVVsiVRf ; "ïµò-é+éTë¦é¦Éö:"
- .text:00401080 call sub_40134F
- .text:00401085 lea ecx, [ebp+var_114]
- .text:0040108B push ecx
- .text:0040108C push offset aD ; "%d"
- .text:00401091 call sub_40122F
- .text:00401096 push offset aW ; "w"
- .text:0040109B lea edx, [ebp+var_108]
- .text:004010A1 push offset aResult_txt ; "result.txt"
- .text:004010A6 push edx
- .text:004010A7 call sub_401308
- .text:004010AC mov eax, [ebp+var_108]
- .text:004010B2 add esp, 48h
- .text:004010B5 push offset unk_40EA30
- .text:004010BA push eax
- .text:004010BB call sub_4016EA
- .text:004010C0 mov eax, [ebp+var_10C]
- .text:004010C6 mov ebx, eax
- .text:004010C8 neg ebx
- .text:004010CA add esp, 8
- .text:004010CD cmp ebx, eax
- .text:004010CF jg loc_401183
- .text:004010D5 push esi
- .text:004010D6 push edi
- .text:004010D7 jmp short loc_4010E0
- .text:004010D7 ; ---------------------------------------------------------------------------
- .text:004010D9 align 10h
- .text:004010E0
- .text:004010E0 loc_4010E0: ; CODE XREF: sub_401000+D7j
- .text:004010E0 ; sub_401000+17Bj
- .text:004010E0 mov ecx, [ebp+var_118]
- .text:004010E6 mov edx, [ebp+var_108]
- .text:004010EC lea esi, [ebx+ecx]
- .text:004010EF push esi
- .text:004010F0 push offset a08x ; "%08X,"
- .text:004010F5 push edx
- .text:004010F6 call sub_4016EA
- .text:004010FB xor edi, edi
- .text:004010FD add esp, 0Ch
- .text:00401100 cmp [ebp+var_110], edi
- .text:00401106 jle short loc_40114E
- .text:00401108 jmp short loc_401110
- .text:00401108 ; ---------------------------------------------------------------------------
- .text:0040110A align 10h
- .text:00401110
- .text:00401110 loc_401110: ; CODE XREF: sub_401000+108j
- .text:00401110 ; sub_401000+14Cj
- .text:00401110 imul esi, 41C64E6Dh
- .text:00401116 mov ecx, [ebp+var_108]
- .text:0040111C add esi, 6073h
- .text:00401122 mov eax, esi
- .text:00401124 shr eax, 10h
- .text:00401127 and eax, 1FFFh
- .text:0040112C imul eax, [ebp+var_114]
- .text:00401133 shr eax, 0Dh
- .text:00401136 push eax
- .text:00401137 push offset aD ; "%d"
- .text:0040113C push ecx
- .text:0040113D call sub_4016EA
- .text:00401142 inc edi
- .text:00401143 add esp, 0Ch
- .text:00401146 cmp edi, [ebp+var_110]
- .text:0040114C jl short loc_401110
- .text:0040114E
- .text:0040114E loc_40114E: ; CODE XREF: sub_401000+106j
- .text:0040114E test ebx, ebx
- .text:00401150 jnz short loc_401160
- .text:00401152 mov edx, [ebp+var_108]
- .text:00401158 push offset aB ; "üÜ\n"
- .text:0040115D push edx
- .text:0040115E jmp short loc_40116C
- .text:00401160 ; ---------------------------------------------------------------------------
- .text:00401160
- .text:00401160 loc_401160: ; CODE XREF: sub_401000+150j
- .text:00401160 mov eax, [ebp+var_108]
- .text:00401166 push offset asc_40EA48 ; "\n"
- .text:0040116B push eax
- .text:0040116C
- .text:0040116C loc_40116C: ; CODE XREF: sub_401000+15Ej
- .text:0040116C call sub_4016EA
- .text:00401171 inc ebx
- .text:00401172 add esp, 8
- .text:00401175 cmp ebx, [ebp+var_10C]
- .text:0040117B jle loc_4010E0
- .text:00401181 pop edi
- .text:00401182 pop esi
- .text:00401183
- .text:00401183 loc_401183: ; CODE XREF: sub_401000+CFj
- .text:00401183 mov ecx, [ebp+var_108]
- .text:00401189 push ecx
- .text:0040118A call sub_401772
- .text:0040118F mov ecx, [ebp+var_4]
- .text:00401192 add esp, 4
- .text:00401195 xor ecx, ebp
- .text:00401197 xor eax, eax
- .text:00401199 pop ebx
- .text:0040119A call sub_4011A3
- .text:0040119F mov esp, ebp
- .text:004011A1 pop ebp
- .text:004011A2 retn
- .text:004011A2 sub_401000 endp
Advertisement