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

Disassembly:
push ebp
push edi
push esi
push ebx
sub esp, 0x35c
mov edi, dword [esp + 0x370]
mov eax, dword [esp + 0x37c]
lea ebx, [esp + 0xa8]
mov esi, dword [esp + 0x374]
mov edx, dword [esp + 0x380]
mov dword [esp + 0x20], eax
mov eax, dword [edi + 0x14]
mov dword [esp + 0x24], edx
mov ecx, dword [edi + 0x28]
mov edx, dword [eax + esi*4]
mov eax, dword [eax + esi*4 + 4]
mov dword [esp], ebx
sub eax, edx
add ecx, edx
mov dword [esp + 0x8c], eax
lea eax, [esp + 0x88]
mov dword [esp + 4], eax
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x88], ecx
call fcn.00403c60
mov ebp, eax
test eax, eax
jne 0x406251
mov eax, dword [esp + 0x8c]
test eax, eax
jne 0x40624c
mov eax, dword [edi + 0x20]
movzx eax, byte [eax + esi]
cmp dword [esp + 0xb4], eax
je 0x406260
mov ebp, 0xb
add esp, 0x35c
mov eax, ebp
pop ebx
pop esi
pop edi
pop ebp
ret
mov dword [esp + 4], esi
mov eax, dword [esp + 0x388]
xor edx, edx
mov dword [esp], edi
mov dword [esp + 0x30], eax
mov dword [esp + 0x34], edx
call fcn.00404320
xor eax, dword [esp + 0x388]
or edx, eax
jne 0x40624c
mov dword [esp + 0x90], 0
mov eax, dword [edi + 8]
mov dword [esp + 0x94], 0
mov dword [esp + 0x38], eax
mov eax, dword [edi + 0x18]
mov dword [esp + 0x98], 0
mov dword [esp + 0x9c], 0
mov ecx, dword [eax + esi*4]
mov dword [esp + 0xa0], 0
mov eax, dword [edi + 0x24]
mov dword [esp + 0x40], eax
mov eax, dword [edi + 0x1c]
mov eax, dword [eax + esi*4]
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0xa8]
lea edx, [eax - 1]
cmp edx, 3
ja 0x4062fa
cmp byte [esp + 0xe8], 1
je 0x406384
mov ebp, 4
lea ebx, [esp + 0x90]
mov eax, dword [ebx]
add ebx, 4
mov dword [esp + 4], eax
mov eax, dword [esp + 0x38c]
mov dword [esp], eax
call dword [eax + 4]
lea eax, [esp + 0x9c]
cmp eax, ebx
jne 0x406306
test ebp, ebp
jne 0x406251
mov eax, dword [edi + 0xc]
test eax, eax
je 0x406251
mov edx, esi
mov ecx, esi
shr edx, 3
and ecx, 7
movzx edx, byte [eax + edx]
mov eax, pe_nt_image_headers32
sar eax, cl
test edx, eax
je 0x406251
mov eax, dword [esp + 0x388]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x384]
mov dword [esp], eax
call fcn.00405d90
mov edx, dword [edi + 0x10]
cmp eax, dword [edx + esi*4]
mov eax, 3
cmovne ebp, eax
jmp 0x406251
mov edx, dword [esp + 0xe4]
cmp edx, 0x21
je 0x4063a0
cmp edx, 0x30101
je 0x4063a0
test edx, edx
jne 0x4062fa
cmp eax, 1
je 0x406890
cmp eax, 2
je 0x4068f3
cmp eax, 4
jne 0x4062fa
cmp byte [esp + 0xf4], 1
jne 0x4062fa
mov edx, dword [esp + 0xf0]
cmp edx, 0x21
je 0x4063e5
cmp edx, 0x30101
je 0x4063e5
test edx, edx
jne 0x4062fa
cmp byte [esp + 0x100], 1
jne 0x4062fa
mov edx, dword [esp + 0xfc]
cmp edx, 0x21
je 0x40640f
cmp edx, 0x30101
je 0x40640f
test edx, edx
jne 0x4062fa
cmp dword [esp + 0x108], 0x303011b
jne 0x4062fa
cmp byte [esp + 0x10c], 4
jne 0x4062fa
cmp dword [esp + 0xb0], 4
jne 0x4062fa
cmp dword [esp + 0xb8], 2
jne 0x4062fa
cmp dword [esp + 0xbc], 6
jne 0x4062fa
cmp dword [esp + 0xc0], 1
jne 0x4062fa
cmp dword [esp + 0xac], 3
jne 0x4062fa
cmp dword [esp + 0xc8], 5
jne 0x4062fa
mov edx, dword [esp + 0xc4]
or edx, dword [esp + 0xcc]
jne 0x4062fa
cmp dword [esp + 0xd0], 4
jne 0x4062fa
cmp dword [esp + 0xd4], 1
jne 0x4062fa
cmp dword [esp + 0xd8], 3
jne 0x4062fa
cmp dword [esp + 0xdc], 2
jne 0x4062fa
mov edx, dword [esp + 0x38]
mov dword [esp + 0x3c], ebx
mov ebx, dword [esp + 0x40]
mov dword [esp + 0x68], 0
lea edx, [edx + ecx*8]
mov dword [esp + 0x64], 0
mov dword [esp + 0x50], edx
mov edx, dword [esp + 0x48]
mov dword [esp + 0x38], 0
lea ebx, [ebx + edx*8]
mov dword [esp + 0x6c], ebp
mov dword [esp + 0x5c], ebx
mov dword [esp + 0x370], edi
mov dword [esp + 0x374], esi
lea esi, [esi]
lea edi, [edi]
mov ebx, dword [esp + 0x3c]
mov edx, dword [ebx + 0x3c]
cmp edx, 0x21
je 0x406562
cmp edx, 0x30101
je 0x406562
test edx, edx
je 0x406562
cmp edx, 0x303011b
je 0x406841
cmp dword [esp + 0x38], 1
je 0x4066b3
mov edi, dword [esp + 0x370]
mov esi, dword [esp + 0x374]
jmp 0x4062fa
cmp eax, 4
je 0x406760
mov eax, dword [esp + 0x50]
mov ebp, dword [esp + 0x388]
mov ecx, 8
mov ebx, dword [esp + 0x384]
mov edi, dword [esp + 0x50]
mov edx, dword [eax + 4]
mov eax, dword [eax]
mov esi, dword [edi + ecx]
mov edi, dword [edi + ecx + 4]
sub esi, eax
sbb edi, edx
add eax, dword [esp + 0x20]
adc edx, dword [esp + 0x24]
mov dword [esp + 0x48], esi
mov dword [esp + 4], eax
mov eax, dword [esp + 0x378]
mov dword [esp + 8], edx
mov dword [esp], eax
mov dword [esp + 0x4c], edi
call fcn.00407b80
test eax, eax
jne 0x40669e
mov eax, dword [esp + 0x3c]
mov eax, dword [eax + 0x3c]
test eax, eax
jne 0x4067ee
mov edx, dword [esp + 0x48]
mov ecx, dword [esp + 0x4c]
xor edi, edi
mov esi, ebp
mov eax, edx
mov edx, ecx
xor eax, ebp
or edx, eax
jne 0x406829
lea eax, [esp + 0x110]
mov dword [esp + 0x40], eax
lea eax, [esp + 0x84]
mov dword [esp + 0x48], eax
test ebp, ebp
jne 0x40665d
jmp 0x40672c
mov ebp, dword [esp + 0x110]
test ebp, ebp
je 0x406aff
mov eax, dword [esp + 0x84]
mov dword [esp], ebx
add ebx, ebp
mov dword [esp + 8], ebp
mov dword [esp + 4], eax
call sub.msvcrt.dll_memcpy
mov eax, dword [esp + 0x378]
xor edx, edx
sub esi, ebp
sbb edi, edx
mov dword [esp + 4], ebp
mov dword [esp], eax
call dword [eax + 4]
test eax, eax
jne 0x40669e
mov edx, edi
or edx, esi
je 0x40672c
mov eax, 0x3ffff
cmp eax, esi
mov eax, 0
sbb eax, edi
mov eax, 0x40000
cmovae eax, esi
mov dword [esp + 0x110], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x48]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x378]
mov dword [esp], eax
call dword [eax]
test eax, eax
je 0x406610
mov edi, dword [esp + 0x370]
mov esi, dword [esp + 0x374]
mov ebp, eax
jmp 0x4062ff
movzx eax, byte [esp + 0xf5]
cmp edx, 3
je 0x4070ee
test al, al
jne 0x40654f
cmp edx, 0x3030401
je 0x4070bf
jbe 0x407078
cmp edx, 0x3030701
je 0x407049
cmp edx, 0x3030805
je 0x406ed7
cmp edx, 0x3030501
jne 0x40654f
mov eax, dword [esp + 0x388]
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], eax
mov eax, dword [esp + 0x384]
mov dword [esp], eax
call fcn.00409900
add dword [esp + 0x38], 1
mov eax, dword [esp + 0xa8]
mov ebx, dword [esp + 0x38]
add dword [esp + 0x3c], 0xc
cmp eax, ebx
ja 0x406520
mov ebp, dword [esp + 0x6c]
mov edi, dword [esp + 0x370]
mov esi, dword [esp + 0x374]
jmp 0x4062ff
mov edi, dword [esp + 0x5c]
mov ebx, dword [esp + 0x38]
mov dword [esp + 0x110], 3
mov dword [esp + 0x114], 2
mov dword [esp + 0x118], 0
mov esi, dword [edi + ebx*8]
mov eax, dword [edi + ebx*8 + 4]
mov edi, dword [esp + ebx*4 + 0x110]
cmp ebx, 1
jbe 0x4068b7
cmp dword [esp + 0x38], 2
jne 0x40654f
mov ecx, dword [esp + 0x30]
mov ebx, dword [esp + 0x34]
cmp ecx, esi
sbb ebx, eax
jb 0x406dc0
mov eax, dword [esp + 0x388]
mov dword [esp + 0x64], esi
mov ebp, esi
sub eax, esi
add eax, dword [esp + 0x384]
mov dword [esp + 0x68], eax
mov ebx, eax
mov eax, dword [esp + 0x50]
lea ecx, [edi*8]
add eax, ecx
add ecx, 8
jmp 0x406582
cmp eax, 0x30101
je 0x406b17
cmp eax, 0x21
jne 0x40654f
mov dword [esp + 0x124], 0
mov edi, dword [esp + 0x3c]
mov dword [esp + 0x120], 0
cmp byte [edi + 0x41], 1
mov eax, dword [edi + 0x38]
je 0x406980
mov edi, dword [esp + 0x370]
mov esi, dword [esp + 0x374]
mov ebp, 1
jmp 0x4062ff
cmp dword [esp + 0x38], 3
jne 0x40654f
mov eax, dword [esp + 0x50]
mov esi, dword [eax + 0x14]
mov ebx, dword [eax + 0x10]
mov edx, dword [eax + 8]
mov ecx, dword [eax + 0xc]
mov edi, esi
mov dword [esp + 0x44], esi
mov esi, ebx
sub esi, edx
mov dword [esp + 0x40], ebx
sbb edi, ecx
test edi, edi
je 0x406dd8
mov edi, dword [esp + 0x370]
mov esi, dword [esp + 0x374]
mov ebp, 2
jmp 0x4062ff
cmp dword [esp + 0xb0], 1
jne 0x4062fa
mov edx, dword [esp + 0xb8]
or edx, dword [esp + 0xac]
je 0x4064ce
jmp 0x4062fa
mov ebp, esi
test eax, eax
jne 0x406874
mov eax, dword [esp + 0x38c]
mov dword [esp + 4], esi
mov dword [esp], eax
call dword [eax]
mov ebx, eax
test eax, eax
jne 0x4068d7
test esi, esi
jne 0x406874
mov eax, dword [esp + 0x38]
neg eax
shl eax, 2
mov dword [esp + eax + 0x94], ebx
mov dword [esp + eax + 0xa0], esi
jmp 0x4067d9
cmp byte [esp + 0xf4], 1
jne 0x4062fa
cmp dword [esp + 0xb0], 1
jne 0x4062fa
cmp dword [esp + 0xac], 1
jne 0x4062fa
cmp dword [esp + 0xc8], 1
jne 0x4062fa
mov edx, dword [esp + 0xb8]
or edx, dword [esp + 0xcc]
jne 0x4062fa
mov edx, dword [esp + 0xf0]
cmp edx, 0x3030401
je 0x4064ce
ja 0x406cd6
cmp edx, 0x3030103
je 0x4064ce
cmp edx, 0x3030205
je 0x4064ce
cmp edx, 3
jne 0x4062fa
jmp 0x4064ce
mov edi, dword [esp + 0x38c]
mov dword [esp + 8], edi
mov edi, dword [esp + 0x2c]
movzx eax, byte [edi + eax]
lea edi, [esp + 0x110]
mov dword [esp], edi
mov dword [esp + 4], eax
mov dword [esp + 0x40], edi
call fcn.0040e9b0
test eax, eax
jne 0x40669e
mov dword [esp], edi
mov dword [esp + 0x124], ebx
mov dword [esp + 0x138], ebp
call fcn.0040ead0
lea eax, [esp + 0x7c]
mov dword [esp + 0x60], ebp
mov esi, dword [esp + 0x48]
mov dword [esp + 0x58], eax
lea eax, [esp + 0x78]
mov edi, dword [esp + 0x4c]
mov dword [esp + 0x54], eax
jmp 0x406a85
mov eax, dword [esp + 0x7c]
mov dword [esp + 0x10], 1
mov ebx, dword [esp + 0x134]
mov dword [esp + 0x80], eax
lea eax, [esp + 0x84]
mov dword [esp + 0x14], eax
lea eax, [esp + 0x80]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x78]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x60]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x40]
mov dword [esp], eax
call fcn.0040eb00
mov ebp, dword [esp + 0x80]
xor ecx, ecx
sub dword [esp + 0x7c], ebp
sub esi, ebp
sbb edi, ecx
test eax, eax
jne 0x406acb
cmp dword [esp + 0x84], 1
je 0x406d2d
test ebp, ebp
jne 0x406a70
cmp ebx, dword [esp + 0x134]
je 0x406d90
mov eax, dword [esp + 0x378]
mov dword [esp + 4], ebp
mov dword [esp], eax
call dword [eax + 4]
test eax, eax
jne 0x406acb
mov eax, 0x3ffff
mov dword [esp + 0x78], 0
cmp eax, esi
mov eax, 0
sbb eax, edi
mov eax, 0x40000
cmovae eax, esi
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0x58]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x54]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x378]
mov dword [esp], eax
call dword [eax]
test eax, eax
je 0x4069f0
mov edi, dword [esp + 0x370]
mov esi, dword [esp + 0x374]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x38c]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x40]
mov dword [esp], eax
call fcn.00412c50
mov eax, dword [esp + 0x20]
mov ebp, eax
jmp 0x4062ff
mov edi, dword [esp + 0x370]
mov esi, dword [esp + 0x374]
mov ebp, 6
jmp 0x4062ff
mov eax, dword [esp + 0x3c]
mov edi, dword [esp + 0x2c]
mov dword [esp + 0x124], 0
mov dword [esp + 0x120], 0
add edi, dword [eax + 0x38]
movzx edx, byte [eax + 0x41]
mov eax, edi
mov edi, dword [esp + 0x38c]
mov dword [esp + 8], edx
mov dword [esp + 0xc], edi
lea edi, [esp + 0x110]
mov dword [esp + 4], eax
mov dword [esp], edi
mov dword [esp + 0x40], edi
call fcn.00412d60
test eax, eax
jne 0x40669e
mov dword [esp], edi
mov dword [esp + 0x124], ebx
mov dword [esp + 0x138], ebp
call fcn.004125e0
lea eax, [esp + 0x7c]
mov esi, dword [esp + 0x48]
mov edi, dword [esp + 0x4c]
mov dword [esp + 0x58], eax
lea eax, [esp + 0x78]
mov dword [esp + 0x54], eax
jmp 0x406c5c
mov eax, dword [esp + 0x7c]
mov dword [esp + 0x10], 1
xor ebx, ebx
mov dword [esp + 4], ebp
mov dword [esp + 0x80], eax
mov eax, dword [esp + 0x134]
mov dword [esp + 0x48], eax
lea eax, [esp + 0x84]
mov dword [esp + 0x14], eax
lea eax, [esp + 0x80]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x78]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x40]
mov dword [esp], eax
call fcn.00412620
mov edx, dword [esp + 0x80]
sub dword [esp + 0x7c], edx
sub esi, edx
sbb edi, ebx
test eax, eax
jne 0x406cff
mov ecx, dword [esp + 0x84]
mov eax, dword [esp + 0x134]
cmp ecx, 1
je 0x406d6a
cmp ebp, eax
sete bl
cmp ecx, 4
sete cl
test bl, cl
je 0x406c35
mov ebx, esi
or ebx, edi
je 0x406d74
cmp dword [esp + 0x48], eax
jne 0x406c43
test edx, edx
je 0x406da8
mov eax, dword [esp + 0x378]
mov dword [esp + 4], edx
mov dword [esp], eax
call dword [eax + 4]
test eax, eax
jne 0x406cff
mov eax, 0x3ffff
mov dword [esp + 0x78], 0
cmp eax, esi
mov eax, 0
sbb eax, edi
mov eax, 0x40000
cmovae eax, esi
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0x58]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x54]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x378]
mov dword [esp], eax
call dword [eax]
test eax, eax
je 0x406ba0
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x38c]
mov edi, dword [esp + 0x370]
mov esi, dword [esp + 0x374]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x40]
mov dword [esp], eax
call fcn.00412c50
mov eax, dword [esp + 0x20]
mov ebp, eax
jmp 0x4062ff
cmp edx, 0x3030701
je 0x4064ce
cmp edx, 0x3030805
je 0x4064ce
cmp edx, 0x3030501
jne 0x4062fa
jmp 0x4064ce
mov edi, dword [esp + 0x370]
mov esi, dword [esp + 0x374]
mov ebx, eax
mov eax, dword [esp + 0x38c]
mov ebp, ebx
mov dword [esp + 4], eax
mov eax, dword [esp + 0x40]
mov dword [esp], eax
call fcn.00412c50
jmp 0x4062ff
mov ebp, dword [esp + 0x60]
cmp dword [esp + 0x134], ebp
jne 0x406d40
mov ebx, esi
or ebx, edi
je 0x406d74
mov eax, dword [esp + 0x38c]
mov edi, dword [esp + 0x370]
mov esi, dword [esp + 0x374]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x40]
mov dword [esp], eax
call fcn.00412c50
jmp 0x406837
mov ebx, esi
or ebx, edi
jne 0x406d40
cmp ebp, eax
jne 0x406d40
mov eax, dword [esp + 0x38c]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x40]
mov dword [esp], eax
call fcn.00412c50
jmp 0x40672c
mov edi, dword [esp + 0x370]
mov esi, dword [esp + 0x374]
mov eax, 1
jmp 0x406ad9
mov edi, dword [esp + 0x370]
mov esi, dword [esp + 0x374]
mov ebx, 1
jmp 0x406d0f
mov edi, dword [esp + 0x370]
mov esi, dword [esp + 0x374]
mov ebp, 5
jmp 0x4062ff
mov eax, dword [esp + 0x38c]
mov dword [esp + 0x48], edx
mov dword [esp + 0x4c], ecx
mov dword [esp + 0x40], esi
mov dword [esp + 4], esi
mov dword [esp], eax
call dword [eax]
mov edx, dword [esp + 0x48]
mov ecx, dword [esp + 0x4c]
test eax, eax
mov ebx, eax
mov dword [esp + 0x98], eax
je 0x407039
mov eax, dword [esp + 0x378]
add edx, dword [esp + 0x20]
adc ecx, dword [esp + 0x24]
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp], eax
call fcn.00407b80
test eax, eax
jne 0x40669e
mov dword [esp + 0x48], ebx
mov eax, edi
or eax, esi
je 0x406f20
mov eax, 0x3ffff
cmp eax, esi
mov eax, 0
sbb eax, edi
mov eax, 0x40000
cmovae eax, esi
mov dword [esp + 0x110], eax
lea eax, [esp + 0x110]
mov dword [esp + 8], eax
lea eax, [esp + 0x84]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x378]
mov dword [esp], eax
call dword [eax]
test eax, eax
jne 0x40669e
mov ebp, dword [esp + 0x110]
test ebp, ebp
je 0x406f06
mov eax, dword [esp + 0x84]
mov dword [esp + 8], ebp
mov dword [esp + 4], eax
mov eax, dword [esp + 0x48]
mov dword [esp], eax
call sub.msvcrt.dll_memcpy
mov edx, dword [esp + 0x378]
mov dword [esp + 4], ebp
mov dword [esp], edx
call dword [edx + 4]
test eax, eax
jne 0x40669e
xor edx, edx
add dword [esp + 0x48], ebp
sub esi, ebp
sbb edi, edx
jmp 0x406e38
mov eax, dword [esp + 0x388]
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], eax
mov eax, dword [esp + 0x384]
mov dword [esp], eax
call fcn.00409cf0
jmp 0x40672c
mov eax, 6
mov edi, dword [esp + 0x370]
mov esi, dword [esp + 0x374]
mov ebp, eax
jmp 0x4062ff
mov eax, dword [esp + 0x9c]
test al, 3
jne 0x406829
mov edx, dword [esp + 0xa0]
test dl, 3
jne 0x406829
mov edi, dword [esp + 0x64]
lea ecx, [eax + edx]
add ecx, edi
cmp dword [esp + 0x388], ecx
jne 0x406829
mov esi, dword [esp + 0x90]
mov ecx, dword [esp + 0x68]
mov dword [esp + 0x11c], ebx
add ebx, dword [esp + 0x40]
add eax, esi
mov dword [esp + 0x12c], ebx
lea ebx, [esp + 0x110]
mov dword [esp + 0x124], eax
mov eax, dword [esp + 0x94]
mov dword [esp], ebx
mov dword [esp + 0x118], eax
add eax, edx
mov dword [esp + 0x128], eax
mov eax, dword [esp + 0x384]
mov dword [esp + 0x110], ecx
add ecx, edi
mov dword [esp + 0x130], eax
add eax, dword [esp + 0x388]
mov dword [esp + 0x120], ecx
mov dword [esp + 0x114], esi
mov dword [esp + 0x134], eax
call fcn.00408c20
mov dword [esp], ebx
call fcn.00408c70
test eax, eax
jne 0x40669e
mov eax, ebx
lea edx, [esp + 0x120]
mov ebx, dword [eax + 0x10]
cmp dword [eax], ebx
jne 0x40701f
add eax, 4
cmp edx, eax
jne 0x406fed
mov eax, dword [esp + 0x134]
cmp dword [esp + 0x130], eax
jne 0x40701f
mov eax, dword [esp + 0x148]
or eax, dword [esp + 0x138]
je 0x40672c
mov eax, 1
mov edi, dword [esp + 0x370]
mov esi, dword [esp + 0x374]
mov ebp, eax
jmp 0x4062ff
cmp dword [esp + 0x40], 0
je 0x406e0d
jmp 0x406874
mov eax, dword [esp + 0x388]
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], eax
mov eax, dword [esp + 0x384]
mov dword [esp], eax
call fcn.004099d0
jmp 0x40672c
cmp edx, 0x3030103
je 0x40713e
cmp edx, 0x3030205
jne 0x40654f
mov eax, dword [esp + 0x388]
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], eax
mov eax, dword [esp + 0x384]
mov dword [esp], eax
call fcn.00409b90
jmp 0x40672c
mov eax, dword [esp + 0x388]
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], eax
mov eax, dword [esp + 0x384]
mov dword [esp], eax
call fcn.00409f70
jmp 0x40672c
sub al, 1
jne 0x40654f
lea ebx, [esp + 0x110]
mov dword [esp], ebx
call fcn.0040a7c0
mov eax, dword [esp + 0x388]
mov edi, dword [esp + 0x2c]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x384]
mov dword [esp + 8], eax
mov eax, dword [esp + 0xec]
movzx eax, byte [edi + eax]
mov dword [esp], ebx
add eax, 1
mov dword [esp + 4], eax
call fcn.0040a9b0
jmp 0x40672c
lea eax, [esp + 0x110]
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x388]
mov dword [esp + 8], 0
mov dword [esp + 4], eax
mov eax, dword [esp + 0x384]
mov dword [esp + 0x110], 0
mov dword [esp], eax
call fcn.00409df0
jmp 0x40672c