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_128 = dword ptr -128h
- .text:00401000 var_118 = dword ptr -118h
- .text:00401000 var_114 = dword ptr -114h
- .text:00401000 var_110 = dword ptr -110h
- .text:00401000 var_108 = dword ptr -108h
- .text:00401000 var_4 = dword ptr -4
- .text:00401000
- .text:00401000 push ebp
- .text:00401001 mov ebp, esp
- .text:00401003 and esp, 0FFFFFFF8h
- .text:00401006 sub esp, 11Ch
- .text:0040100C mov eax, dword_410004
- .text:00401011 xor eax, esp
- .text:00401013 mov [esp+11Ch+var_4], eax
- .text:0040101A push ebx
- .text:0040101B push esi
- .text:0040101C push edi
- .text:0040101D push offset unk_40E9D0
- .text:00401022 call sub_40164D
- .text:00401027 lea eax, [esp+12Ch+var_108]
- .text:0040102B push eax
- .text:0040102C push offset unk_40E9E4
- .text:00401031 call sub_40152D
- .text:00401036 push 10h
- .text:00401038 lea ecx, [esp+138h+var_108]
- .text:0040103C push 0
- .text:0040103E push ecx
- .text:0040103F call sub_401484
- .text:00401044 push offset aPFqrf ; "Å-önÉö------->"
- .text:00401049 mov edi, eax
- .text:0040104B mov esi, edx
- .text:0040104D call sub_40164D
- .text:00401052 lea edx, [esp+144h+var_114]
- .text:00401056 push edx
- .text:00401057 push offset aD ; "%d"
- .text:0040105C call sub_40152D
- .text:00401061 push offset aLcxVVsiVRf ; "ïµò-é+éTë¦é¦Éö:"
- .text:00401066 call sub_40164D
- .text:0040106B lea eax, [esp+150h+var_110]
- .text:0040106F push eax
- .text:00401070 push offset aD ; "%d"
- .text:00401075 call sub_40152D
- .text:0040107A push offset aW ; "w"
- .text:0040107F lea ecx, [esp+15Ch+var_118]
- .text:00401083 push offset aResult_txt ; "result.txt"
- .text:00401088 push ecx
- .text:00401089 call sub_401606
- .text:0040108E mov edx, [esp+164h+var_118]
- .text:00401092 push offset unk_40EA1C
- .text:00401097 push edx
- .text:00401098 call sub_40170A
- .text:0040109D mov eax, [esp+16Ch+var_118]
- .text:004010A1 add esp, 44h
- .text:004010A4 push esi
- .text:004010A5 push edi
- .text:004010A6 push offset a08llx ; "%08llX,"
- .text:004010AB push eax
- .text:004010AC call sub_40170A
- .text:004010B1 xor ebx, ebx
- .text:004010B3 add esp, 10h
- .text:004010B6 cmp [esp+128h+var_114], ebx
- .text:004010BA jle short loc_40111E
- .text:004010BC lea esp, [esp+0]
- .text:004010C0
- .text:004010C0 loc_4010C0: ; CODE XREF: sub_401000+11Cj
- .text:004010C0 push 5D588B65h
- .text:004010C5 push 6C078965h
- .text:004010CA push esi
- .text:004010CB push edi
- .text:004010CC call sub_402C10
- .text:004010D1 add eax, 269EC3h
- .text:004010D6 adc edx, 0
- .text:004010D9 mov edi, eax
- .text:004010DB mov esi, edx
- .text:004010DD xor eax, eax
- .text:004010DF mov ecx, esi
- .text:004010E1 shld eax, ecx, 0Dh
- .text:004010E5 mov ecx, eax
- .text:004010E7 mov eax, [esp+128h+var_110]
- .text:004010EB cdq
- .text:004010EC push edx
- .text:004010ED push eax
- .text:004010EE push 0
- .text:004010F0 push ecx
- .text:004010F1 call sub_402C10
- .text:004010F6 shrd eax, edx, 0Dh
- .text:004010FA shr edx, 0Dh
- .text:004010FD add eax, 1
- .text:00401100 adc edx, 0
- .text:00401103 push edx
- .text:00401104 mov edx, [esp+12Ch+var_118]
- .text:00401108 push eax
- .text:00401109 push offset aD ; "%d"
- .text:0040110E push edx
- .text:0040110F call sub_40170A
- .text:00401114 inc ebx
- .text:00401115 add esp, 10h
- .text:00401118 cmp ebx, [esp+128h+var_114]
- .text:0040111C jl short loc_4010C0
- .text:0040111E
- .text:0040111E loc_40111E: ; CODE XREF: sub_401000+BAj
- .text:0040111E mov eax, [esp+128h+var_118]
- .text:00401122 push offset aB ; "üÜ\n"
- .text:00401127 push eax
- .text:00401128 call sub_40170A
- .text:0040112D mov ecx, [esp+130h+var_118]
- .text:00401131 push ecx
- .text:00401132 call sub_401792
- .text:00401137 mov ecx, [esp+134h+var_4]
- .text:0040113E add esp, 0Ch
- .text:00401141 pop edi
- .text:00401142 pop esi
- .text:00401143 pop ebx
- .text:00401144 xor ecx, esp
- .text:00401146 xor eax, eax
- .text:00401148 call sub_401151
- .text:0040114D mov esp, ebp
- .text:0040114F pop ebp
- .text:00401150 retn
- .text:00402C10 ; =============== S U B R O U T I N E =======================================
- .text:00402C10
- .text:00402C10
- .text:00402C10 sub_402C10 proc near ; CODE XREF: sub_401000+CCp
- .text:00402C10 ; sub_401000+F1p ...
- .text:00402C10
- .text:00402C10 arg_0 = dword ptr 4
- .text:00402C10 arg_4 = dword ptr 8
- .text:00402C10 arg_8 = dword ptr 0Ch
- .text:00402C10 arg_C = dword ptr 10h
- .text:00402C10
- .text:00402C10 mov eax, [esp+arg_4]
- .text:00402C14 mov ecx, [esp+arg_C]
- .text:00402C18 or ecx, eax
- .text:00402C1A mov ecx, [esp+arg_8]
- .text:00402C1E jnz short loc_402C29
- .text:00402C20 mov eax, [esp+arg_0]
- .text:00402C24 mul ecx
- .text:00402C26 retn 10h
- .text:00402C29 ; ---------------------------------------------------------------------------
- .text:00402C29
- .text:00402C29 loc_402C29: ; CODE XREF: sub_402C10+Ej
- .text:00402C29 push ebx
- .text:00402C2A mul ecx
- .text:00402C2C mov ebx, eax
- .text:00402C2E mov eax, [esp+4+arg_0]
- .text:00402C32 mul [esp+4+arg_C]
- .text:00402C36 add ebx, eax
- .text:00402C38 mov eax, [esp+4+arg_0]
- .text:00402C3C mul ecx
- .text:00402C3E add edx, ebx
- .text:00402C40 pop ebx
- .text:00402C41 retn 10h
- .text:00402C41 sub_402C10 endp
- .text:00402C41
- .text:00402C41 ; ---------------------------------------------------------------------------
Advertisement