Function at 0x404cb0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov eax, 0x9aea0
call fcn.00409160
push ebx
push ebp
push esi
push edi
push 0
call fcn.004093b6
push eax
call fcn.0040938e
lea eax, [esp + 0x1bc]
push eax
push str.3BCE22FA38DF7A3DD65B92A3EA74E192ACD6FCF7F946024C
call fcn.00408390
mov esi, dword [esp + 0x9aec4]
lea ecx, [esp + 0x20]
lea edx, [esp + 0x1c4]
push ecx
push edx
push esi
call fcn.00407210
lea eax, [esp + 0x1d0]
push eax
push str.3BCE51F99F7562138A128372C3FA6776F793FCD4
call fcn.00408390
lea ecx, [esp + 0x368c]
lea edx, [esp + 0x1d8]
push ecx
push edx
push esi
call fcn.00407290
lea eax, [esp + 0x1e4]
push eax
push str.3BCF6E11E6C84097583307410F84B31D8E6D6F4E
call fcn.00408390
lea ecx, [esp + 0x3aa0]
lea edx, [esp + 0x1ec]
push ecx
push edx
push esi
call fcn.00407210
lea edi, [esp + 0x36ac]
or ecx, 0xffffffff
xor eax, eax
add esp, 0x44
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x405165
mov esi, 0x41537c
lea eax, [esp + 0x10]
mov dl, byte [eax]
mov bl, byte [esi]
mov cl, dl
cmp dl, bl
jne 0x404d92
test cl, cl
je 0x404d8e
mov dl, byte [eax + 1]
mov bl, byte [esi + 1]
mov cl, dl
cmp dl, bl
jne 0x404d92
add eax, 2
add esi, 2
test cl, cl
jne 0x404d6a
xor eax, eax
jmp 0x404d97
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x405165
mov esi, 0x415378
lea eax, [esp + 0x10]
mov dl, byte [eax]
mov bl, byte [esi]
mov cl, dl
cmp dl, bl
jne 0x404dd0
test cl, cl
je 0x404dcc
mov dl, byte [eax + 1]
mov bl, byte [esi + 1]
mov cl, dl
cmp dl, bl
jne 0x404dd0
add eax, 2
add esi, 2
test cl, cl
jne 0x404da8
xor eax, eax
jmp 0x404dd5
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x404dfd
mov edi, 0x415374
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
lea edx, [esp + 0x10]
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x3268]
lea edx, [esp + 0x3668]
push ecx
push edx
call fcn.00402400
lea edi, [esp + 0x3270]
or ecx, 0xffffffff
xor eax, eax
lea edx, [esp + 0x1204]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
push 0x413a50
mov eax, ecx
mov esi, edi
mov edi, edx
lea edx, [esp + 0x4abc]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
xor eax, eax
and ecx, 3
push 0x413a4c
rep movsb byte es:[edi], byte [esi]
lea edi, [esp + 0x3278]
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x120c]
push ecx
call fcn.00408850
push 0x41989c
lea edx, [esp + 0x4ac8]
push 0x413a4c
push edx
call fcn.00408850
add esp, 0x20
mov esi, 0x415374
lea eax, [esp + 0x10]
mov dl, byte [eax]
mov bl, byte [esi]
mov cl, dl
cmp dl, bl
jne 0x404eca
test cl, cl
je 0x404ec6
mov dl, byte [eax + 1]
mov bl, byte [esi + 1]
mov cl, dl
cmp dl, bl
jne 0x404eca
add eax, 2
add esi, 2
test cl, cl
jne 0x404ea2
xor eax, eax
jmp 0x404ecf
sbb eax, eax
sbb eax, 0xffffffff
mov ebp, dword [sym.imp.USER32.dll_wsprintfA]
test eax, eax
je 0x405173
mov esi, 0x415370
lea eax, [esp + 0x10]
mov dl, byte [eax]
mov bl, byte [esi]
mov cl, dl
cmp dl, bl
jne 0x404f0e
test cl, cl
je 0x404f0a
mov dl, byte [eax + 1]
mov bl, byte [esi + 1]
mov cl, dl
cmp dl, bl
jne 0x404f0e
add eax, 2
add esi, 2
test cl, cl
jne 0x404ee6
xor eax, eax
jmp 0x404f13
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x405173
mov esi, 0x41536c
lea eax, [esp + 0x10]
mov dl, byte [eax]
mov bl, byte [esi]
mov cl, dl
cmp dl, bl
jne 0x404f4c
test cl, cl
je 0x404f48
mov dl, byte [eax + 1]
mov bl, byte [esi + 1]
mov cl, dl
cmp dl, bl
jne 0x404f4c
add eax, 2
add esi, 2
test cl, cl
jne 0x404f24
xor eax, eax
jmp 0x404f51
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x405173
mov esi, 0x415368
lea eax, [esp + 0x10]
mov dl, byte [eax]
mov bl, byte [esi]
mov cl, dl
cmp dl, bl
jne 0x404f8a
test cl, cl
je 0x404f86
mov dl, byte [eax + 1]
mov bl, byte [esi + 1]
mov cl, dl
cmp dl, bl
jne 0x404f8a
add eax, 2
add esi, 2
test cl, cl
jne 0x404f62
xor eax, eax
jmp 0x404f8f
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x405173
movsx eax, byte [esp + 0x11]
add eax, 0xffffffbe
cmp eax, 0x18
ja case.0x404fb0.77
xor ecx, ecx
mov cl, byte [eax + 0x4064f0]
jmp dword [ecx*4 + 0x4064c0]
lea edx, [esp + 0x14]
push edx
push str.3BCF1826391AE6BCAAF5FE5FFC83
jmp 0x4050cd
lea ecx, [esp + 0x14]
push ecx
push str.3BCE52C12EF8A69892195F302B7950DB28841CD3
call fcn.00408390
mov edi, 0x41989c
or ecx, 0xffffffff
xor eax, eax
add esp, 8
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
lea edx, [esp + 0x3c]
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x405130
lea ecx, [esp + 0x14]
push ecx
push str.38F2031D013601AB0B24
call fcn.00408390
add esp, 8
lea edx, [esp + 0x14]
lea eax, [esp + 0x3c]
push edx
push 0x415300
push eax
call ebp
lea ecx, [esp + 0x34]
push ecx
push str.38F2720DED203D878E2E2EE4
call fcn.00408390
add esp, 0x14
lea edi, [esp + 0x28]
lea edx, [esp + 0x14]
jmp 0x405138
lea ecx, [esp + 0x14]
push ecx
push str.38F204123B03C631E8E9
jmp 0x405114
lea ecx, [esp + 0x14]
push ecx
push str.38F273C5F5CE70FB8B053FB0
call fcn.00408390
lea edx, [esp + 0x44]
push edx
push str.33BCE5C13B4DAD81AB8E5DA9219C204BC03D4C3A35D89
call fcn.00408390
lea eax, [esp + 0x38]
push eax
push str.38F27140AD162A2BA21D7A6E
call fcn.00408390
add esp, 0x18
jmp case.0x404fb0.77
lea ecx, [esp + 0x14]
push ecx
push str.3BCE50BF222CA2D55BE14EA73ABA82F54CD84283
call fcn.00408390
add esp, 8
lea edx, [esp + 0x14]
lea eax, [esp + 0x3c]
push edx
push 0x415300
push eax
call ebp
lea ecx, [esp + 0x34]
push ecx
push str.38F209C52D06728B59AA59C3
call fcn.00408390
add esp, 0x14
jmp case.0x404fb0.77
lea edx, [esp + 0x14]
push edx
push str.38F202DF7F9EA5976176
call fcn.00408390
add esp, 8
lea eax, [esp + 0x14]
lea ecx, [esp + 0x3c]
push eax
push 0x415300
push ecx
jmp 0x40512b
lea ecx, [esp + 0x14]
push ecx
push str.3BCF1826391AE6BCAAF5FE5FFC83
jmp 0x405114
lea ecx, [esp + 0x14]
push ecx
push str.3BCF196E631EBC2CBC60E5E99119
jmp 0x405114
lea ecx, [esp + 0x14]
push ecx
push str.3BCF1AD7EDCB8060073D49D5DAA3
jmp 0x405114
lea ecx, [esp + 0x14]
push ecx
push str.38F2727C8183FD9933E632B6
call fcn.00408390
add esp, 8
lea edx, [esp + 0x14]
lea eax, [esp + 0x3c]
push edx
push 0x415300
push eax
call ebp
add esp, 0xc
lea edi, [esp + 0x14]
lea edx, [esp + 0x28]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea edi, [esp + 0x14]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
jne 0x4051d0
pop edi
pop esi
pop ebp
or eax, 0xffffffff
pop ebx
add esp, 0x9aea0
ret
lea ecx, [esp + 0x14]
push ecx
push str.3BCE52C12EF8A69892195F302B7950DB28841CD3
call fcn.00408390
mov edi, 0x41989c
or ecx, 0xffffffff
xor eax, eax
add esp, 8
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
lea edx, [esp + 0x3c]
mov eax, ecx
mov esi, edi
mov edi, edx
lea edx, [esp + 0x28]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
xor eax, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea edi, [esp + 0x14]
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, 0x418f64
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
jne 0x405279
mov esi, 0x4151a4
lea eax, [esp + 0x10]
mov dl, byte [eax]
mov bl, byte [esi]
mov cl, dl
cmp dl, bl
jne 0x405216
test cl, cl
je 0x405212
mov dl, byte [eax + 1]
mov bl, byte [esi + 1]
mov cl, dl
cmp dl, bl
jne 0x405216
add eax, 2
add esi, 2
test cl, cl
jne 0x4051ee
xor eax, eax
jmp 0x40521b
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x405255
mov edi, 0x41989c
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
lea edx, [esp + 0x15fc]
mov eax, ecx
mov esi, edi
mov edi, edx
lea edx, [esp + 0x1b4]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
push edx
and ecx, 3
push str.3DB580A745D78D7140DC391BDAD5F51EB8AE0E919D439D2B52EA3236C3459F21B8871CA5ABBF4125D24C96B9BE91E4A950C07A52A6DF32E23EFC3AB86EC1B47E5F44DE2C21731D948F65F3156910C92A2872E15E20BFB3747AA2DF58AC73BBA0BE3BDE6FDE3A925BFE7D2974A93E3B8C473927D2F4E180CC0B248DA6500850C813B5B4F0D02FCC2EC5724F28286A3331CC453653911679B0
rep movsb byte es:[edi], byte [esi]
jmp 0x4052af
lea ecx, [esp + 0x15fc]
push ecx
push str.3BC9AAA338FD0C3A4A0136D109DD76F8D48FC49E8D5448BA3BBE64C69204EB403129942DB0642DA7E9520D6DB601
call fcn.00408390
add esp, 8
lea edx, [esp + 0x1b4]
push edx
push str.3DB580A745D78D7140DC391BDAD5F51EB8AE0E919D439D2B52EA3236C3459F21B8871CA5ABBF4125D24C96B9BE91E4A950C07A52A6DF32E23EFC3AB86EC1B47E5F44DE2C21731D948F65F3156910C92A2872E15E20BFB3747AA2DF58AC73BBA0BE3BDE6FDE3A925BFE7D2974A93E3B8C473927D2F4E180CC0B248DA6500850C813B5B4F0D02FCC2EC5724F28286A3331CC453653911679B0
jmp 0x4052af
mov edi, 0x418f64
or ecx, 0xffffffff
xor eax, eax
lea edx, [esp + 0x15fc]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x1b4]
push ecx
push str.3A7D0D91E229804E0E5807F85BA12E8443DD6936088306B762CA8008958A6A71A0D253BDBB715E8A7EA2E2A68370000A5DA8374EBA5E2FAC70BE10D86177B137BB2C0C7958FB6D331506A228EF2B86C2905FB785FE461B0E38C6FBF6772BD91477C0B21CDE0F017A3C4675B5FEF36FB3E2189D085447503C443AB0729DA5FB90636C216D751D80A00DFB
call fcn.00408390
add esp, 8
lea edx, [esp + 0x11fc]
lea eax, [esp + 0x14]
lea ecx, [esp + 0x3c]
push edx
push eax
lea edx, [esp + 0x1bc]
push ecx
lea eax, [esp + 0x9e4]
push edx
push eax
call ebp
add esp, 0x14
mov esi, 0x415374
lea eax, [esp + 0x10]
mov dl, byte [eax]
mov bl, byte [esi]
mov cl, dl
cmp dl, bl
jne 0x40530f
test cl, cl
je 0x40530b
mov dl, byte [eax + 1]
mov bl, byte [esi + 1]
mov cl, dl
cmp dl, bl
jne 0x40530f
add eax, 2
add esi, 2
test cl, cl
jne 0x4052e7
xor eax, eax
jmp 0x405314
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x405328
lea eax, [esp + 0x9d8]
push eax
call fcn.00407e70
add esp, 4
lea edi, [esp + 0x15fc]
or ecx, 0xffffffff
xor eax, eax
lea edx, [esp + 0x4eb0]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
lea edx, [esp + 0x15fc]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
xor eax, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea edi, [esp + 0x9d8]
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x9d8]
push ecx
call fcn.00408130
push 0x4b000
push 0x41989c
lea edx, [esp + 0x4ebc]
push 0x41989c
lea eax, [esp + 0x9e8]
push edx
push eax
call fcn.00407900
lea ecx, [esp + 0x9c]
lea edx, [esp + 0xd0]
push ecx
lea eax, [esp + 0x6c]
push edx
lea ecx, [esp + 0x10c]
push eax
lea edx, [esp + 0x4ed4]
push ecx
push edx
call fcn.00403da0
add esp, 0x2c
test eax, eax
jl 0x405165
mov esi, 0x415370
lea eax, [esp + 0x10]
mov dl, byte [eax]
mov bl, byte [esi]
mov cl, dl
cmp dl, bl
jne 0x405415
test cl, cl
je 0x405411
mov dl, byte [eax + 1]
mov bl, byte [esi + 1]
mov cl, dl
cmp dl, bl
jne 0x405415
add eax, 2
add esi, 2
test cl, cl
jne 0x4053ed
xor eax, eax
jmp 0x40541a
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x40594d
lea eax, [esp + 0x3a68]
lea ecx, [esp + 0x4eb0]
push eax
push ecx
push 0
call fcn.00408790
add esp, 0xc
test eax, eax
jl 0x405165
mov al, byte [esp + 0x11]
mov bl, 0x53
cmp al, bl
jne 0x4054fa
lea edx, [esp + 0x1b4]
push edx
push str.3BCF1EBE8026B0EE368726363CFE2ADD3BAD
call fcn.00408390
lea eax, [esp + 0x1bc]
push 0x41989c
lea ecx, [esp + 0x3a74]
push eax
push ecx
call fcn.00408850
lea edx, [esp + 0x1c8]
push edx
push str.38F275C6368DB8DBAD602134CF9229344A13
call fcn.00408390
lea eax, [esp + 0x1d0]
push 0x41989c
lea ecx, [esp + 0x3a88]
push eax
push ecx
call fcn.00408850
lea edx, [esp + 0x1dc]
push edx
push str.38F1543B74ED652781B5176BBB10CAFD888EE08D7271EA46A8804BF25FC902A026ADFB18EC04E11F93DA
call fcn.00408390
lea eax, [esp + 0x1e4]
lea ecx, [esp + 0x4ee0]
push eax
push ecx
push 0
call fcn.00408790
add esp, 0x3c
test eax, eax
jge 0x4054e7
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x9aea0
ret
push eax
lea edx, [esp + 0x4eb4]
push 0
push edx
call fcn.00408a70
add esp, 0xc
lea eax, [esp + 0x1b4]
push eax
push str.38F209C5284123061F1090AED538
call fcn.00408390
lea ecx, [esp + 0x1bc]
lea edx, [esp + 0x4eb8]
push ecx
push edx
push 0
call fcn.00408790
mov edx, eax
add esp, 0x14
test edx, edx
jge 0x405539
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x9aea0
ret
lea edi, [esp + 0x4eb0]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
lea eax, [esp + 0x4eb0]
push ecx
push edx
push eax
call fcn.00408a70
lea ecx, [esp + 0x3a74]
lea edx, [esp + 0x4ebc]
push ecx
push edx
push 0
call fcn.00408790
mov esi, eax
add esp, 0x18
test esi, esi
jl 0x405165
lea eax, [esp + 0x1b4]
push eax
push str.3BBE187BFF8759F4A62704D32040FB9C641A95B61F1656A8BAE5C3184D0ED3BB1484928CDC0E43A26004681ADF35CDDAD48383EA93921B26FDF030D64B42
call fcn.00408390
lea ecx, [esp + 0x9e0]
push ecx
push str.3BCF69637A9B69777FE4992CCAFA42755A7FB0702429
call fcn.00408390
add esp, 0x10
lea edx, [esp + 0x4feb0]
lea eax, [esp + 0x9d8]
lea ecx, [esp + 0x4eb0]
push edx
push eax
push ecx
push esi
call fcn.00408790
mov edi, eax
lea edx, [esp + 0x1c4]
lea eax, [esp + 0x4ec0]
push edx
push eax
push esi
call fcn.00408790
add esp, 0x18
sub edi, eax
lea ecx, [esp + 0x1b8]
lea edx, [esp + 0x4eb4]
push edi
push ecx
push edx
push esi
call fcn.00408790
add esp, 0xc
push eax
lea eax, [esp + 0x4ebc]
push eax
call fcn.004086c0
push 0x412b14
lea ecx, [esp + 0x4fec4]
push str.amp_
push ecx
call fcn.00408850
lea edx, [esp + 0x1e3c]
lea eax, [esp + 0x4fecc]
push edx
push 0x41989c
push eax
call fcn.00407300
lea ecx, [esp + 0x1e48]
push ecx
call fcn.00408130
mov al, byte [esp + 0x3d]
add esp, 0x2c
cmp al, bl
jne 0x4056ac
lea edx, [esp + 0x1b4]
push edx
push str.3BCD99B0FB17BEEAC6CA116692304386FB83AA705BB0BF8E6EFF6D8F
call fcn.00408390
lea eax, [esp + 0x1bc]
lea ecx, [esp + 0x4feb8]
push eax
push ecx
push 0
call fcn.00408790
mov esi, eax
add esp, 0x14
test esi, esi
jl 0x405165
call fcn.00409398
cdq
mov ecx, 0x3c
idiv ecx
mov edi, edx
add edi, 0x2f
call fcn.00409398
cdq
mov ecx, 0x64
idiv ecx
mov ebx, edx
add ebx, 0x78
jmp 0x4056b4
mov edi, dword [esp + 0x10]
mov ebx, dword [esp + 0x10]
lea edx, [esp + 0x4eb0]
lea eax, [esp + 0x4feb0]
push edx
push 0x4133e4
push eax
push esi
call fcn.00408790
add esp, 0xc
sub eax, esi
lea ecx, [esp + 0x4feb4]
push eax
push esi
push ecx
call fcn.004086c0
lea edx, [esp + 0x429c]
lea eax, [esp + 0x3a78]
push edx
push eax
call fcn.004024b0
lea ecx, [esp + 0x1cc]
push ecx
push str.3CF156B3C312D7EAB8C710101D9606E537AD5F3F55999B30149CACA41B59BF2F4E0921ACEC740568850229896ACB2610A87A17491034015CBDAF76F367C8E9249D8B2249BDF2C7E1ADC78FB731F480E404CBABCD8413949F741E47236110F22A86C740028BDEE1A92C88396B30834E8FA20B6BF3B8BF498BE65AEC843ABD4A9A4E8972C4E11A8BA611881F3CC737A00F965BDD7F834FC15ABD571B21B4EF3EAF4DEDBDD003A3FB374D1C5FDC270FF668DFC14EAB854CE3FB8AD71198F7D562795A37EC131C9102C65A22CCD21A3E
call fcn.00408390
add esp, 0x20
lea edx, [esp + 0x84]
lea eax, [esp + 0x428c]
lea ecx, [esp + 0x4eb0]
push edx
push ebx
push edi
push ebx
push edi
push eax
lea edx, [esp + 0x68]
push ecx
lea eax, [esp + 0x108]
push edx
lea ecx, [esp + 0xd8]
push eax
lea edx, [esp + 0x1220]
push ecx
lea eax, [esp + 0x1dc]
push edx
lea ecx, [esp + 0xa04]
push eax
push ecx
call ebp
lea edi, [esp + 0x1630]
or ecx, 0xffffffff
xor eax, eax
lea edx, [esp + 0x4ee4]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0xa0c]
push ecx
call fcn.00408130
mov eax, dword [0x418f60]
mov ebx, dword [sym.imp.USER32.dll_MessageBoxA]
add esp, 0x38
test eax, eax
je 0x4057b7
push 0
lea edx, [esp + 0x9dc]
push 0x419790
push edx
push 0
call ebx
jmp 0x4057de
push 0x4b000
push 0x41989c
lea eax, [esp + 0x4eb8]
push 0x41989c
lea ecx, [esp + 0x9e4]
push eax
push ecx
call fcn.00407900
add esp, 0x14
lea edx, [esp + 0x9d8]
lea eax, [esp + 0x4feb0]
push edx
push 0x41989c
push eax
call fcn.00407210
lea edi, [esp + 0x1608]
or ecx, 0xffffffff
xor eax, eax
lea edx, [esp + 0x4ebc]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x9e4]
push ecx
call fcn.00408130
mov eax, dword [0x418f60]
add esp, 0x10
test eax, eax
je 0x405854
push 0
lea edx, [esp + 0x9dc]
push 0x419790
push edx
push 0
call ebx
jmp 0x40591e
push 0x4b000
push 0x41989c
lea eax, [esp + 0x4eb8]
push 0x41989c
lea ecx, [esp + 0x9e4]
push eax
push ecx
call fcn.00407900
lea edi, [esp + 0x4ec4]
or ecx, 0xffffffff
xor eax, eax
add esp, 0x14
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x40591e
lea edx, [esp + 0x4eb0]
push edx
push str.3BC9A5FF1F31F8FB95E780DB7F9434EF90653BE17F060F383247BB3A395A9E5A3550121292E84DA6336C9119DD5E83AAB647A45E8AC3D36D
call fcn.00408390
add esp, 8
lea eax, [esp + 0x10]
lea ecx, [esp + 0x3268]
lea edx, [esp + 0x428c]
push eax
push ecx
lea eax, [esp + 0x4eb8]
push edx
lea ecx, [esp + 0x9e4]
push eax
push ecx
call ebp
mov edi, 0x41989c
or ecx, 0xffffffff
xor eax, eax
lea edx, [esp + 0x4ec4]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
push 0x4b000
mov eax, ecx
mov esi, edi
mov edi, edx
push 0x41989c
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
push 0x41989c
and ecx, 3
lea edx, [esp + 0x9f8]
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x4ed0]
push ecx
push edx
call fcn.00407900
add esp, 0x28
lea eax, [esp + 0x4eb0]
push eax
push str.3BCB21621FF6078CF6B062776AD324E5EFE9B1C31CA2A18151EFB01C4ACC59F14FB47A66
call fcn.00408390
lea ecx, [esp + 0x4eb8]
push ecx
call fcn.00408130
add esp, 0xc
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x9aea0
ret
lea edx, [esp + 0x1b4]
push edx
push str.3BBD23321E8C197D06E6305A4788D41D9A15D7709836973D9B5144809228EEDE454B82C4870BFE44379F19168A1C2C598137B143DF734CB6298FD66A7B80BED828E3E5714E22
call fcn.00408390
add esp, 8
lea eax, [esp + 0xec]
lea ecx, [esp + 0x15fc]
lea edx, [esp + 0x1b4]
push eax
push ecx
lea eax, [esp + 0x9e0]
push edx
push eax
call ebp
lea edi, [esp + 0x160c]
or ecx, 0xffffffff
xor eax, eax
lea edx, [esp + 0x4fec0]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x9e8]
push ecx
call fcn.00408130
push 0x4b000
push 0x41989c
lea edx, [esp + 0x4fecc]
push 0x41989c
lea eax, [esp + 0x9f8]
push edx
push eax
call fcn.00407900
add esp, 0x28
lea ecx, [esp + 0x2644]
lea edi, [esp + 0x15fc]
xor eax, eax
push ecx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
dec ecx
lea edx, [esp + 0x1600]
push ecx
push 0x414abc
push edx
push eax
call fcn.00408790
add esp, 0xc
inc eax
push eax
lea eax, [esp + 0x1608]
push eax
call fcn.004086c0
add esp, 0x10
mov esi, 0x4151a4
lea eax, [esp + 0x10]
mov dl, byte [eax]
mov bl, byte [esi]
mov cl, dl
cmp dl, bl
jne 0x405a56
test cl, cl
je 0x405a52
mov dl, byte [eax + 1]
mov bl, byte [esi + 1]
mov cl, dl
cmp dl, bl
jne 0x405a56
add eax, 2
add esi, 2
test cl, cl
jne 0x405a2e
xor eax, eax
jmp 0x405a5b
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x405aab
lea eax, [esp + 0x1b4]
push eax
push str.3A08FEA5F2D512B662CF0E9A08D05758F45A9F263E53B7F16C7FE556B64E634DA146653FEB0FF62E9CA62E787EDCCEAB3CCC5921C8953F78BE32A0950402A8B9B2A8CCBDFEF7A50BBF35ED1F8DEA97D5403B802CC1A8181FC9B614F5DECB149750AFB39EB1AC
call fcn.00408390
add esp, 8
lea ecx, [esp + 0x2644]
lea edx, [esp + 0xec]
lea eax, [esp + 0x11fc]
push ecx
push edx
lea ecx, [esp + 0x30]
push eax
lea edx, [esp + 0x1c0]
push ecx
lea eax, [esp + 0x9e8]
push edx
push eax
call ebp
add esp, 0x18
jmp 0x405b51
mov edi, 0x418f64
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
jne 0x405b05
lea ecx, [esp + 0x1b4]
push ecx
push str.3DB7095C798514BD9CCCA12D948C157D274526CD15AAD67DE959FD4E43DF66265D81DB1B6C308B3F861598B4D21970237C9365A6F876C1CDB26A67AA9E52912A8C9C508FE1F0C27E51E37E148A8F1FA70FA120B34EBC35C321701DAE618BD1E207A66727A7FDDAD6C94003C4ACEF868EED2047ECD659B5A55C4D29E53702CDE0D6F7A4FBEC5B978C2DD3B07F03B566A8874AFF80
call fcn.00408390
add esp, 8
lea edx, [esp + 0x2644]
lea eax, [esp + 0xec]
lea ecx, [esp + 0x11fc]
push edx
push eax
lea edx, [esp + 0x30]
push ecx
lea eax, [esp + 0x1c0]
push edx
lea ecx, [esp + 0x9e8]
push eax
push ecx
call ebp
add esp, 0x18
jmp 0x405b51
lea edx, [esp + 0x1b4]
push edx
push str.3DB23C9B529592E8B7EB2EEEE3B91EE9EFC1963F95398E8A8DF6D6AF3CA86A66E770FA5631BDDF9E3A33D5ADB62C42B32BB22A387D380CDBD39EA2D9840242056126C64EFEBAFA66938C924588D50BD534023B80E162285AFBF573C4F9A16DEB8B6B87883F5BD4A70C3BF21BB64530D68C2BB98DC9CAB0589426D877CBCB1C20FA051A409252C5BCE98A0F6081BBAB2473C1C8D7B2DC37E187E23BF4DE1E
call fcn.00408390
add esp, 8
lea eax, [esp + 0x2644]
lea ecx, [esp + 0x3c]
lea edx, [esp + 0xec]
push eax
push ecx
lea eax, [esp + 0x1204]
push edx
lea ecx, [esp + 0x34]
push eax
lea edx, [esp + 0x1c4]
push ecx
lea eax, [esp + 0x9ec]
push edx
push eax
call ebp
add esp, 0x1c
lea edi, [esp + 0x15fc]
or ecx, 0xffffffff
xor eax, eax
lea edx, [esp + 0x4feb0]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x9d8]
push ecx
call fcn.00408130
push 0x4b000
push 0x41989c
lea edx, [esp + 0x4febc]
push 0x41989c
lea eax, [esp + 0x9e8]
push edx
push eax
call fcn.00407900
add esp, 0x18
mov esi, 0x4151a4
lea eax, [esp + 0x10]
mov dl, byte [eax]
mov bl, byte [esi]
mov cl, dl
cmp dl, bl
jne 0x405be1
test cl, cl
je 0x405bdd
mov dl, byte [eax + 1]
mov bl, byte [esi + 1]
mov cl, dl
cmp dl, bl
jne 0x405be1
add eax, 2
add esi, 2
test cl, cl
jne 0x405bb9
xor eax, eax
jmp 0x405be6
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x405c62
mov esi, 0x415374
lea eax, [esp + 0x10]
mov dl, byte [eax]
mov bl, byte [esi]
mov cl, dl
cmp dl, bl
jne 0x405c1b
test cl, cl
je 0x405c17
mov dl, byte [eax + 1]
mov bl, byte [esi + 1]
mov cl, dl
cmp dl, bl
jne 0x405c1b
add eax, 2
add esi, 2
test cl, cl
jne 0x405bf3
xor eax, eax
jmp 0x405c20
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x405c62
mov esi, 0x41477c
lea eax, [esp + 0x10]
mov dl, byte [eax]
mov bl, byte [esi]
mov cl, dl
cmp dl, bl
jne 0x405c55
test cl, cl
je 0x405c51
mov dl, byte [eax + 1]
mov bl, byte [esi + 1]
mov cl, dl
cmp dl, bl
jne 0x405c55
add eax, 2
add esi, 2
test cl, cl
jne 0x405c2d
xor eax, eax
jmp 0x405c5a
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x406468
mov edi, 0x41989c
or ecx, 0xffffffff
xor eax, eax
xor ebx, ebx
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
lea edx, [esp + 0x1e20]
mov eax, ecx
mov esi, edi
mov edi, edx
lea edx, [esp + 0x2a44]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
xor eax, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, 0x41989c
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x1b4]
push ecx
push str.3BCF1B8557B3DA1451B2349DC386E2B3
call fcn.00408390
lea edx, [esp + 0x1bc]
push 0x4133e4
lea eax, [esp + 0x4ebc]
push edx
push eax
call fcn.00408850
add esp, 0x14
or esi, 0xffffffff
test ebx, ebx
jne 0x405d32
call fcn.00409398
cdq
mov ecx, 0xa
mov edi, 0x41477c
idiv ecx
lea eax, [esp + 0x10]
mov ebp, edx
inc ebp
mov dl, byte [eax]
mov cl, dl
cmp dl, byte [edi]
jne 0x405d29
test cl, cl
je 0x405d25
mov dl, byte [eax + 1]
mov cl, dl
cmp dl, byte [edi + 1]
jne 0x405d29
add eax, 2
add edi, 2
test cl, cl
jne 0x405d05
xor eax, eax
jmp 0x405d2e
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x405d37
mov ebp, 1
lea eax, [ebp - 1]
cmp eax, 9
ja case.default.0x405d43
jmp dword [eax*4 + 0x40650c]
mov edi, 0x4151a4
lea eax, [esp + 0x10]
mov dl, byte [eax]
mov cl, dl
cmp dl, byte [edi]
jne 0x405d77
test cl, cl
je 0x405d73
mov dl, byte [eax + 1]
mov cl, dl
cmp dl, byte [edi + 1]
jne 0x405d77
add eax, 2
add edi, 2
test cl, cl
jne 0x405d53
xor eax, eax
jmp 0x405d7c
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x405dc5
lea eax, [esp + 0x1b4]
push eax
push str.3BCC9FDAD66099E1E5C02AEAA45C3C5A045F37F76F4B9B0D902722A1CAF34294D47F1F3C
call fcn.00408390
lea ecx, [esp + 0x1bc]
lea edx, [esp + 0x4eb8]
push ecx
push edx
push 0
call fcn.00408790
mov esi, eax
add esp, 0x14
test esi, esi
jge 0x405e63
lea eax, [esp + 0x1b4]
push eax
push str.3BCE56B80455DB2B5E8FD71AC24AA89584CE67A0CCA18CCC
jmp 0x405e08
mov edi, 0x41477c
lea eax, [esp + 0x10]
mov dl, byte [eax]
mov cl, dl
cmp dl, byte [edi]
jne 0x405df2
test cl, cl
je 0x405dee
mov dl, byte [eax + 1]
mov cl, dl
cmp dl, byte [edi + 1]
jne 0x405df2
add eax, 2
add edi, 2
test cl, cl
jne 0x405dce
xor eax, eax
jmp 0x405df7
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x405e29
lea eax, [esp + 0x1b4]
push eax
push str.3BCA61343432B637F70EF4D473A22BA9BB4118284879EF553C21243D47991EFF88D81B990D2A5E239CC17BD4
call fcn.00408390
lea ecx, [esp + 0x1bc]
lea edx, [esp + 0x4eb8]
push ecx
push edx
push 0
call fcn.00408790
add esp, 0x14
mov esi, eax
test esi, esi
jge 0x405e63
lea eax, [esp + 0x1b4]
push eax
push str.3BCC9FA4AE995238AD681B3FC0ADE1F0A5AA778071F56B061CB4F7B40F3D0EDF58A9818B
call fcn.00408390
lea ecx, [esp + 0x1bc]
lea edx, [esp + 0x4eb8]
push ecx
push edx
push 0
call fcn.00408790
mov esi, eax
add esp, 0x14
test esi, esi
jl case.0x405d43.7
lea eax, [esp + 0x4feb0]
lea ecx, [esp + 0x4eb0]
push eax
push 0x12c
push esi
push ecx
call fcn.004086c0
lea edx, [esp + 0x2a54]
lea eax, [esp + 0x4fec0]
push edx
push 0x41989c
push eax
call fcn.00407210
lea ecx, [esp + 0x4fecc]
add esi, 0xfffffed4
push ecx
push 0x1f4
lea edx, [esp + 0x4ed4]
push esi
push edx
call fcn.004086c0
lea eax, [esp + 0x1e0]
push eax
push str.3BCF1EBE8026B0EE368726363CFE2ADD3BAD
call fcn.00408390
lea ecx, [esp + 0x1e8]
lea edx, [esp + 0x4fee4]
push ecx
push edx
push 0
call fcn.00408790
mov esi, eax
add esp, 0x40
test esi, esi
jl case.0x405d43.7
push esi
lea eax, [esp + 0x4feb4]
push 0
push eax
call fcn.00408a70
lea ecx, [esp + 0x1e2c]
lea edx, [esp + 0x4febc]
push ecx
push 0x41989c
push edx
jmp 0x4062ab
lea eax, [esp + 0x1b4]
push eax
push str.3BC9D603567B5AE279A80B0B9A27B806AA0394DA417B95584A2B223D04C16B851B31B0A87F3F206DB28F9F3179BC14B2
call fcn.00408390
lea ecx, [esp + 0x1bc]
lea edx, [esp + 0x4eb8]
push ecx
push edx
push 0
call fcn.00408790
add esp, 0x14
test eax, eax
jl case.0x405d43.8
lea ecx, [esp + 0x4feb0]
lea edx, [esp + 0x4eb0]
push ecx
push 0x12c
push eax
push edx
call fcn.004086c0
lea eax, [esp + 0x1e30]
lea ecx, [esp + 0x4fec0]
push eax
push 0x41989c
push ecx
call fcn.00407210
lea edx, [esp + 0x1d0]
push edx
push str.3BCE52C6D8DA75AB77D9EB4E2E2B1493E0F6A4216929
call fcn.00408390
lea eax, [esp + 0x1d8]
lea ecx, [esp + 0x4fed4]
push eax
push ecx
push 0
call fcn.00408790
mov esi, eax
add esp, 0x30
test esi, esi
jge 0x4061ac
lea edx, [esp + 0x1b4]
push edx
push str.3BCE51FE4A5EDE5BA471282A8C372054B0DF45E4200B
call fcn.00408390
lea eax, [esp + 0x1bc]
lea ecx, [esp + 0x4feb8]
push eax
push ecx
push 0
call fcn.00408790
mov esi, eax
add esp, 0x14
test esi, esi
jge 0x4061ac
lea edx, [esp + 0x1b4]
push edx
push str.3BC749DF435EFDDE27CF76019210C7A0E673A8414D3E329038B73222B068062E11D11CC82C2B74806D777A9CC690CC95F164E01ED6005029
call fcn.00408390
lea eax, [esp + 0x1bc]
lea ecx, [esp + 0x4eb8]
push eax
push ecx
push 0
call fcn.00408790
add esp, 0x14
test eax, eax
jge 0x40604e
lea edx, [esp + 0x1b4]
push edx
push str.3BC8F7094D74186B32A0F4995A8BCD1C37628EDFA591CB42871419B702788AF6B8CEDD74C90ACBB4074029B0354E74694E134C94
call fcn.00408390
lea eax, [esp + 0x1bc]
lea ecx, [esp + 0x4eb8]
push eax
push ecx
push 0
call fcn.00408790
add esp, 0x14
test eax, eax
jl case.0x405d43.9
lea edx, [esp + 0x4feb0]
push edx
push 0x12c
push eax
lea eax, [esp + 0x4ebc]
push eax
call fcn.004086c0
lea ecx, [esp + 0x1e30]
lea edx, [esp + 0x4fec0]
push ecx
push 0x41989c
push edx
call fcn.00407210
lea eax, [esp + 0x1d0]
push eax
push str.3BCE26ED22D6719C59C087FC3FFC351A899C46A9226699D2
call fcn.00408390
lea ecx, [esp + 0x1d8]
lea edx, [esp + 0x4fed4]
push ecx
push edx
push 0
call fcn.00408790
mov esi, eax
add esp, 0x30
test esi, esi
jge 0x4060e7
lea eax, [esp + 0x1b4]
push eax
push str.3BCE5DAA1A0723CB27E192D9766C10065292670F72545F6C
call fcn.00408390
lea ecx, [esp + 0x1bc]
lea edx, [esp + 0x4feb8]
push ecx
push edx
push 0
call fcn.00408790
mov esi, eax
add esp, 0x14
test esi, esi
jl case.0x405d43.9
push esi
lea eax, [esp + 0x4feb4]
push 0
push eax
call fcn.00408a70
lea ecx, [esp + 0x2a50]
lea edx, [esp + 0x4febc]
push ecx
push 0x41989c
push edx
jmp 0x4062ab
lea eax, [esp + 0x1b4]
push eax
push str.3BC9D153609159754D848BB20E9CB06386C55ABC34E34812232A10339367E12F72B15BB7DEEC71DD84405630F11AF864
call fcn.00408390
lea ecx, [esp + 0x1bc]
lea edx, [esp + 0x4eb8]
push ecx
push edx
push 0
call fcn.00408790
add esp, 0x14
test eax, eax
jl case.0x405d43.10
lea ecx, [esp + 0x4feb0]
lea edx, [esp + 0x4eb0]
push ecx
push 0x12c
push eax
push edx
call fcn.004086c0
lea eax, [esp + 0x1e30]
lea ecx, [esp + 0x4fec0]
push eax
push 0x41989c
push ecx
call fcn.00407210
lea edx, [esp + 0x1d0]
push edx
push str.38F2760EA132F48AFC61E347A92865E3
call fcn.00408390
lea eax, [esp + 0x1d8]
lea ecx, [esp + 0x4fed4]
push eax
push ecx
push 0
call fcn.00408790
mov esi, eax
add esp, 0x30
test esi, esi
jl case.0x405d43.10
push esi
lea edx, [esp + 0x4feb4]
push 0
push edx
call fcn.00408a70
lea eax, [esp + 0x2a50]
jmp 0x40629d
lea edx, [esp + 0x1b4]
push edx
push str.3BCA1757EC7ADEB838B5E69B11A5F55FF3B772300E7EEB2204016BF943CC8F372D52EF7A87DF3E2B1DF2
call fcn.00408390
lea eax, [esp + 0x1bc]
lea ecx, [esp + 0x4eb8]
push eax
push ecx
push 0
call fcn.00408790
mov esi, eax
add esp, 0x14
test esi, esi
jle case.default.0x405d43
lea edx, [esp + 0x4feb0]
lea eax, [esp + 0x4eb0]
push edx
push 0x12c
push esi
push eax
call fcn.004086c0
lea ecx, [esp + 0x2a54]
lea edx, [esp + 0x4fec0]
push ecx
push 0x41989c
push edx
call fcn.00407210
lea eax, [esp + 0x4fecc]
add esi, 0xfffffed4
push eax
push 0x12c
lea ecx, [esp + 0x4ed4]
push esi
push ecx
call fcn.004086c0
lea edx, [esp + 0x1e0]
push edx
push str.3BCF1EBE8026B0EE368726363CFE2ADD3BAD
call fcn.00408390
lea eax, [esp + 0x1e8]
lea ecx, [esp + 0x4fee4]
push eax
push ecx
push 0
call fcn.00408790
mov esi, eax
add esp, 0x40
test esi, esi
jl case.default.0x405d43
push esi
lea edx, [esp + 0x4feb4]
push 0
push edx
call fcn.00408a70
lea eax, [esp + 0x1e2c]
push eax
lea ecx, [esp + 0x4fec0]
push 0x41989c
push ecx
call fcn.00407210
add esp, 0x18
lea edi, [esp + 0x1e20]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x4062d7
lea edi, [esp + 0x2a44]
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
dec ecx
jne 0x4062e6
inc ebx
cmp ebx, 1
jg 0x4062e6
cmp ebx, 2
jl 0x405ce8
lea edi, [esp + 0x1e20]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x405165
lea edi, [esp + 0x2a44]
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x405165
lea edx, [esp + 0x4feb0]
lea eax, [esp + 0x1e20]
push edx
push eax
call fcn.004024b0
call fcn.00409398
cdq
mov ecx, 0x3c
idiv ecx
mov esi, edx
add esi, 0x64
call fcn.00409398
cdq
mov ecx, 0x50
idiv ecx
mov edi, edx
lea edx, [esp + 0x1bc]
push edx
push str.3CF156B3C312D7EAB8C710101D9606E537AD5F3F55999B30149CACA41B59BF2F4E0921ACEC740568850229896ACB2610A87A17491034015CBDAF76F367C8E9249D8B2249BDF2C7E1ADC78FB731F480E404CBABCD8413949F741E47236110F22A86C740028BDEE1A92C88396B30834E8FA20B6BF3B8BF498BE65AEC843ABD4A9A4E8972C4E11A8BA611881F3CC737A00F965BDD7F834FC15ABD571B21B4EF3EAF4DEDBDD003A3FB374D1C5FDC270FF668DFC14EAB854CE3FB8AD71198F7D562795A37EC131C9102C65A22CCD21A3E
add edi, 0xc8
call fcn.00408390
add esp, 0x10
lea eax, [esp + 0x84]
lea ecx, [edi - 0xbe]
lea edx, [esp + 0x4feb0]
push eax
push ecx
push esi
push edi
push esi
lea eax, [esp + 0x2a58]
mov ebx, dword [sym.imp.USER32.dll_wsprintfA]
push edx
lea ecx, [esp + 0x68]
push eax
lea edx, [esp + 0x108]
push ecx
lea eax, [esp + 0xd8]
push edx
lea ecx, [esp + 0x1220]
push eax
lea edx, [esp + 0x1dc]
push ecx
lea eax, [esp + 0xa04]
push edx
push eax
call ebx
lea edi, [esp + 0x1630]
or ecx, 0xffffffff
xor eax, eax
lea edx, [esp + 0x4fee4]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0xa0c]
push ecx
call fcn.00408130
push 0x4b000
push 0x41989c
lea edx, [esp + 0x4fef0]
push 0x41989c
lea eax, [esp + 0xa1c]
push edx
push eax
call fcn.00407900
mov eax, dword [0x418f60]
add esp, 0x4c
test eax, eax
je 0x406468
lea ecx, [esp + 0x2a44]
lea edx, [esp + 0x1e20]
push ecx
lea eax, [esp + 0x366c]
push edx
lea ecx, [esp + 0x18]
push eax
push ecx
lea edx, [esp + 0x2654]
push str._s__s_r_n_s_r_n_s
push edx
call ebx
add esp, 0x18
lea eax, [esp + 0x2644]
push pe_nt_image_headers32
push 0x419790
push eax
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
lea ecx, [esp + 0x4eb0]
push ecx
push str.3BCB21621FF6078CF6B062776AD324E5EFE9B1C31CA2A18151EFB01C4ACC59F14FB47A66
call fcn.00408390
lea edx, [esp + 0x4eb8]
push edx
call fcn.00408130
lea edi, [esp + 0x1608]
or ecx, 0xffffffff
xor eax, eax
add esp, 0xc
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, 0x418f64
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
xor eax, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x9aea0
ret