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

Disassembly:
push 0xffffffffffffffff
push 0x558a26
mov eax, dword fs:[0]
push eax
sub esp, 0x1d8
mov eax, dword [0x6397d4]
xor eax, esp
mov dword [esp + 0x1d4], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x6397d4]
xor eax, esp
push eax
lea eax, [esp + 0x1ec]
mov dword fs:[0], eax
mov esi, dword [esp + 0x1fc]
mov ebx, dword [esi + 0x268]
mov eax, dword [esp + 0x200]
mov edx, dword [esp + 0x20c]
mov edi, ecx
mov ecx, dword [esp + 0x204]
push ebx
mov dword [esp + 0x1c], eax
mov dword [esp + 0x28], ecx
mov dword [esp + 0x18], edx
call fcn.00509850
mov ebp, eax
add esp, 4
lea ecx, [esp + 0x28]
mov dword [esp + 0x20], ebp
call fcn.0041fed0
push 8
lea eax, [esp + 0x2c]
push eax
push 0x19
mov ecx, 0x648290
mov dword [esp + 0x200], 0
call fcn.00425560
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x30]
mov eax, dword [esp + 0x34]
mov dword [esi + 0x194], ecx
mov ecx, dword [esp + 0x38]
mov dword [esi + 0x198], edx
mov edx, dword [esp + 0x3c]
mov dword [esi + 0x19c], eax
mov eax, dword [esp + 0x40]
mov dword [esi + 0x1a0], ecx
mov ecx, dword [esp + 0x44]
mov dword [esi + 0x1ac], ecx
lea ecx, [esp + 0x48]
mov dword [esi + 0x1a4], edx
mov dword [esi + 0x1a8], eax
call fcn.0041fed0
push 8
lea edx, [esp + 0x4c]
push edx
push 0x1a
mov ecx, 0x648290
mov byte [esp + 0x200], 1
call fcn.00425560
push 0x1e1e1e
lea eax, [esp + 0x4c]
push eax
push 0xffffffffffffffff
push 0x562815
mov ecx, esi
call fcn.004321d0
lea eax, [esi + 0x1d4]
test eax, eax
mov dword [esi + 0x18c], 1
push 0
mov ecx, esi
je 0x4a04c3
push eax
call fcn.004321a0
jmp 0x4a04d4
push 0
push 0xffffff
push 0x562815
call fcn.00432170
test ebp, 0x800
je 0x4a0529
xor edx, edx
mov eax, ebx
div dword [edi + 0x30]
mov ecx, dword [edi + 0x34]
mov eax, dword [ecx + edx*4]
test eax, eax
je 0x4a1044
cmp dword [eax], ebx
je 0x4a0501
mov eax, dword [eax + 0xc]
test eax, eax
jne 0x4a04f1
jmp 0x4a1044
mov eax, dword [eax + 4]
test eax, eax
je 0x4a1044
mov edx, dword [esp + 0x14]
mov ecx, dword [esp + 0x24]
push edx
mov edx, dword [esp + 0x1c]
push ecx
push edx
push eax
push esi
mov ecx, edi
call fcn.0049ce90
jmp 0x4a1044
test ebp, 0x400
je 0x4a054d
push ebx
mov ecx, edi
call fcn.00497520
test eax, eax
je 0x4a1044
push eax
push esi
call fcn.00499a70
jmp 0x4a1044
test ebp, 0x200
je 0x4a0571
push ebx
mov ecx, edi
call fcn.00497520
test eax, eax
je 0x4a1044
push eax
push esi
call fcn.00499390
jmp 0x4a1044
test ebp, 0x3000
jne 0x4a1031
test ebp, 0x4000
je 0x4a0692
push ebx
mov ecx, edi
call fcn.00497520
mov ebp, eax
test ebp, ebp
je 0x4a1044
lea eax, [ebp + 4]
push eax
lea ecx, [esp + 0x6c]
push 0x564718
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
push 6
push 0
push 0xffffff
lea edx, [esp + 0x74]
push edx
mov ecx, esi
call fcn.00432170
push 0
push 0
push 0xffffff
push 0x562815
mov ecx, esi
call fcn.00432170
push 0x8a9
mov ecx, 0x64aa48
call fcn.004bcff0
push eax
push 0x87e
mov ecx, 0x64aa48
call fcn.004bcff0
push eax
lea eax, [esp + 0x70]
push eax
call dword [sym.imp.MSVCR80.dll_sprintf]
add esp, 0xc
push 0
push 0
push 0xfafad2
lea ecx, [esp + 0x74]
push ecx
mov ecx, esi
call fcn.00432170
push ebx
mov ecx, edi
call fcn.00497660
test eax, eax
jne 0x4a0649
push eax
push eax
push 0xffc800
push 0x104
mov ecx, 0x64aa48
call fcn.004bcff0
push eax
mov ecx, esi
call fcn.00432170
push ebx
mov ecx, edi
call fcn.00497660
test eax, eax
je 0x4a0664
mov edx, dword [esp + 0x208]
push edx
push ebp
push esi
call fcn.00496550
push 0
push 0
push 0xffffff
push 0x562815
mov ecx, esi
call fcn.00432170
movzx eax, word [ebp + 0x26]
push 1
push 0xc8d7aa
push eax
push esi
mov ecx, edi
call fcn.004970c0
jmp 0x4a1044
test ebp, 0x8000
je 0x4a07c2
push ebx
mov ecx, edi
call fcn.00497520
mov ebx, eax
test ebx, ebx
je 0x4a1044
lea ecx, [ebx + 4]
push ecx
lea edx, [esp + 0x6c]
push 0x564718
push edx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
push 6
push 0
push 0xffffff
lea eax, [esp + 0x74]
push eax
mov ecx, esi
call fcn.00432170
push 0
push 0
push 0xffffff
push 0x562815
mov ecx, esi
call fcn.00432170
push 0x8a9
mov ecx, 0x64aa48
call fcn.004bcff0
push eax
push 0x87f
mov ecx, 0x64aa48
call fcn.004bcff0
push eax
lea ecx, [esp + 0x70]
push ecx
call dword [sym.imp.MSVCR80.dll_sprintf]
add esp, 0xc
push 0
push 0
push 0xfafad2
lea edx, [esp + 0x74]
push edx
mov ecx, esi
call fcn.00432170
cmp ebp, 0x8001
jne 0x4a0794
movzx eax, word [ebx + 0xc0]
push eax
push 0xee
mov ecx, 0x64aa48
call fcn.004bcff0
push eax
lea ecx, [esp + 0x70]
push ecx
call dword [sym.imp.MSVCR80.dll_sprintf]
mov edx, dword [0x648a5c]
mov ax, word [edx + 0x480]
add esp, 0xc
cmp ax, word [ebx + 0xc0]
push 0
push 0
jae 0x4a0788
push 0xf83232
lea ecx, [esp + 0x74]
push ecx
jmp 0x4a07a2
push 0xffffff
lea edx, [esp + 0x74]
push edx
jmp 0x4a07a2
push 0
push 0
push 0xffffff
push str.
mov ecx, esi
call fcn.00432170
movzx eax, word [ebx + 0x26]
push 1
push 0xc8d7aa
push eax
push esi
mov ecx, edi
call fcn.004970c0
jmp 0x4a1044
test ebp, 0x100
je 0x4a0d21
push ebx
mov ecx, edi
call fcn.00497520
mov ebp, eax
test ebp, ebp
je 0x4a1044
lea ecx, [ebp + 4]
push ecx
lea edx, [esp + 0x6c]
push 0x564718
push edx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
push 6
push 0
push 0xffffff
lea eax, [esp + 0x74]
push eax
mov ecx, esi
call fcn.00432170
push 0
push 0
push 0xffffff
push str.
mov ecx, esi
call fcn.00432170
cmp word [esi + 0x2ec], 1
mov ecx, 0x64aa48
jne 0x4a08bd
push 0xa16
call fcn.004bcff0
push eax
lea ecx, [esp + 0x1ac]
push ecx
call dword [sym.imp.MSVCR80.dll_sprintf]
lea edx, [esp + 0x1b0]
push edx
lea eax, [esp + 0x174]
push str.____________________________________s
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x14
push 0x8a9
mov ecx, 0x64aa48
call fcn.004bcff0
push eax
push 0x880
mov ecx, 0x64aa48
call fcn.004bcff0
push eax
lea ecx, [esp + 0x70]
push ecx
call dword [sym.imp.MSVCR80.dll_sprintf]
add esp, 0xc
push 0
push 0
push 0xf83232
push 0xfafad2
lea edx, [esp + 0x178]
push edx
lea eax, [esp + 0x7c]
push eax
mov ecx, esi
call fcn.00432180
jmp 0x4a08fb
push 0x8a9
call fcn.004bcff0
push eax
push 0x880
mov ecx, 0x64aa48
call fcn.004bcff0
push eax
lea ecx, [esp + 0x70]
push ecx
call dword [sym.imp.MSVCR80.dll_sprintf]
add esp, 0xc
push 0
push 0
push 0xfafad2
lea edx, [esp + 0x74]
push edx
mov ecx, esi
call fcn.00432170
fldz
fcomp dword [ebp + 0xbc]
fnstsw ax
test ah, 0x44
jnp 0x4a0992
push 0
push 0
push 0xffffff
push 0x562815
mov ecx, esi
call fcn.00432170
fld dword [ebp + 0xbc]
call fcn.00551860
push eax
push 0xee
mov ecx, 0x64aa48
call fcn.004bcff0
push eax
lea eax, [esp + 0x70]
push eax
call dword [sym.imp.MSVCR80.dll_sprintf]
mov ecx, dword [0x648a5c]
movzx edx, word [ecx + 0x480]
mov dword [esp + 0x24], edx
add esp, 0xc
push 0
fild dword [esp + 0x1c]
push 0
fld dword [ebp + 0xbc]
fcompp
fnstsw ax
test ah, 0x41
jne 0x4a0981
push 0xf83232
lea eax, [esp + 0x74]
push eax
jmp 0x4a098b
push 0xffffff
lea ecx, [esp + 0x74]
push ecx
mov ecx, esi
call fcn.00432170
movzx ecx, word [esi + 0xc]
movzx eax, cx
cmp ax, 0x88
je 0x4a0c2d
movzx eax, cx
cmp ax, 0x85
je 0x4a0c2d
movzx edx, word [ebp + 0x2a]
cmp dx, 0x12c
je 0x4a0c2d
cmp dx, 0x105
je 0x4a09cd
cmp dx, 0x106
jne 0x4a0a00
test byte [esi + 0x2e8], 1
jne 0x4a0a00
mov edx, dword [esi]
mov eax, dword [edx + 0x78]
mov ecx, esi
call eax
push eax
lea ecx, [edi + 0x1c4]
call fcn.00425220
test eax, eax
je 0x4a1059
push eax
mov ecx, edi
call fcn.00497d50
jmp 0x4a1059
cmp dx, 0x108
jne 0x4a0a43
test byte [esi + 0x2e8], 1
jne 0x4a0a43
movzx eax, cx
cmp ax, 0x89
jne 0x4a0a43
mov edx, dword [esi]
mov eax, dword [edx + 0x78]
mov ecx, esi
call eax
push eax
lea ecx, [edi + 0x1c4]
call fcn.00425220
test eax, eax
je 0x4a1059
push eax
mov ecx, edi
call fcn.0049ffd0
jmp 0x4a1059
cmp dx, 0x136
jne 0x4a0a7d
test byte [esi + 0x2e8], 1
jne 0x4a0a7d
mov edx, dword [esi]
mov eax, dword [edx + 0x78]
mov ecx, esi
call eax
push eax
lea ecx, [edi + 0x1c4]
call fcn.00425220
test eax, eax
je 0x4a1059
push eax
mov ecx, edi
call fcn.00498190
jmp 0x4a1059
movzx eax, cx
cmp ax, 0x83
jne 0x4a0acf
test byte [esi + 0x2e8], 1
je 0x4a0acf
push 0
push 0
push 0xffffff
push str.
mov ecx, esi
call fcn.00432170
push 1
push 0x52ffcc
push 0x1770
push esi
mov ecx, edi
call fcn.004970c0
push ebp
push esi
mov ecx, edi
call fcn.00494400
push ebp
push esi
mov ecx, edi
call fcn.00494370
jmp 0x4a1044
push 0
push 0
push 0xffffff
push str.
mov ecx, esi
call fcn.00432170
movzx ecx, word [ebp + 0x26]
push 1
push 0xc8d7aa
push ecx
push esi
mov ecx, edi
call fcn.004970c0
push ebp
push esi
mov ecx, edi
call fcn.00494400
cmp word [ebp + 0xc0], 0xb
jne 0x4a0ac1
mov edx, dword [esi]
mov eax, dword [edx + 0x78]
mov ecx, esi
call eax
push eax
lea ecx, [edi + 0x1c4]
call fcn.00425220
mov edi, eax
test edi, edi
je 0x4a1044
cmp dword [ebp + 0x30], 1
push 0
push 0
push 0xffffff
jne 0x4a0bdc
push 0x2fe
mov ecx, 0x64aa48
call fcn.004bcff0
push eax
mov ecx, esi
call fcn.00432170
push 0x7f
lea ecx, [esp + 0xed]
push 0
push ecx
mov byte [esp + 0xf4], 0
call sub.MSVCR80.dll_memset
mov eax, dword [edi + 0x4c]
mov ecx, eax
add esp, 0xc
mov edx, eax
shl ecx, 0x14
mov edi, eax
shr ecx, 0x1a
push ecx
shl edx, 0xe
mov ebp, eax
shr edx, 0x1a
push edx
shl edi, 8
shl ebp, 4
shr edi, 0x1a
push edi
shr eax, 0x1c
shr ebp, 0x1c
push ebp
add eax, 0xf
push eax
push 0x2ff
mov ecx, 0x64aa48
call fcn.004bcff0
push eax
lea edx, [esp + 0x100]
push edx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x1c
push 0
push 0
push 0xffc800
lea eax, [esp + 0xf4]
push eax
mov ecx, esi
call fcn.00432170
jmp 0x4a1044
push 0x562815
mov ecx, esi
call fcn.00432170
push 0
push 0
push 0xffffff
push 0x5a2
mov ecx, 0x64aa48
call fcn.004bcff0
push eax
mov ecx, esi
call fcn.00432170
push 0
push 0
push 0xffc800
push 0x5a4
mov ecx, 0x64aa48
call fcn.004bcff0
push eax
mov ecx, esi
call fcn.00432170
jmp 0x4a1044
push ebx
mov ecx, edi
call fcn.00497660
test byte [esi + 0x30c], 1
je 0x4a0c9f
test eax, eax
je 0x4a0c68
push 0
push 0
push 0xffffff
push str.
mov ecx, esi
call fcn.00432170
mov ecx, dword [esp + 0x208]
push ecx
push ebp
push esi
mov ecx, edi
call fcn.00496550
push 0
push 0
push 0xffffff
push str.
mov ecx, esi
call fcn.00432170
push 1
push 0xc8d7aa
push 0x1770
push esi
mov ecx, edi
call fcn.004970c0
movzx edx, word [ebp + 0x26]
push 1
push 0xc8d7aa
push edx
jmp 0x4a0cff
test eax, eax
je 0x4a0cde
push 0
push 0
push 0xffffff
push str.
mov ecx, esi
call fcn.00432170
push 0
push 0
push 0xffffff
push str.
mov ecx, esi
call fcn.00432170
mov eax, dword [esp + 0x208]
push eax
push ebp
push esi
mov ecx, edi
call fcn.00496550
push 0
push 0
push 0xffffff
push str.
mov ecx, esi
call fcn.00432170
movzx ecx, word [ebp + 0x26]
push 1
push 0xc8d7aa
push ecx
push esi
mov ecx, edi
call fcn.004970c0
push 0
push 0
push 0xffffff
push str.
mov ecx, esi
call fcn.00432170
jmp 0x4a1044
mov eax, dword [esp + 0x20]
mov ebp, eax
and ebp, 0x80
jne 0x4a0d42
cmp eax, 0x42
je 0x4a0d42
cmp eax, 0x41
je 0x4a0d42
cmp eax, 0x43
jne 0x4a1044
push ebx
mov ecx, edi
call fcn.00497520
mov ebx, eax
test ebx, ebx
je 0x4a1059
lea edx, [ebx + 4]
push edx
lea eax, [esp + 0xec]
push 0x564718
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
push 6
push 0
push 0xffffff
lea ecx, [esp + 0xf4]
push ecx
mov ecx, esi
call fcn.00432170
push 0
push 0
push 0xffffff
push 0x562815
mov ecx, esi
call fcn.00432170
push 0x8a9
mov ecx, 0x64aa48
call fcn.004bcff0
push eax
push 0x8bd
mov ecx, 0x64aa48
call fcn.004bcff0
push eax
lea edx, [esp + 0xf0]
push edx
call dword [sym.imp.MSVCR80.dll_sprintf]
add esp, 0xc
push 0
push 0
push 0xfafad2
lea eax, [esp + 0xf4]
push eax
mov ecx, esi
call fcn.00432170
push 0
push 0
push 0xfafad2
lea ecx, [esp + 0xf4]
push ecx
mov ecx, esi
call fcn.00432170
test ebp, ebp
je 0x4a0f1d
movzx eax, word [esi + 0xc]
movzx ecx, ax
cmp cx, 0x88
je 0x4a0e28
movzx eax, ax
cmp ax, 0x85
je 0x4a0e28
mov edx, dword [esi]
mov eax, dword [edx + 0x74]
mov ecx, esi
call eax
mov ebp, eax
jmp 0x4a0e2e
mov ebp, dword [esi + 0x308]
push ebx
push esi
mov ecx, edi
call fcn.00496a30
mov eax, dword [esp + 0x208]
test eax, eax
jbe 0x4a0e45
push eax
jmp 0x4a0e4e
test ebp, ebp
je 0x4a0f1d
push ebp
mov ecx, 0x66e1e0
call fcn.00480680
test eax, eax
je 0x4a0f1d
mov ecx, dword [eax + 0xc]
fild dword [eax + 0xc]
test ecx, ecx
jge 0x4a0e70
fadd dword [0x562930]
fmul qword [0x563b10]
fdiv qword [0x563b08]
fstp dword [esp + 0x14]
fldz
fld dword [esp + 0x14]
fcom st(1)
fnstsw ax
fstp st(1)
test ah, 0x41
jne 0x4a0ea4
fld1
fcom st(1)
fnstsw ax
fstp st(1)
test ah, 0x41
jne 0x4a0ea4
fstp dword [esp + 0x14]
jmp 0x4a0ea6
fstp st(0)
push 0x80
lea edx, [esp + 0xec]
push 0
push edx
call sub.MSVCR80.dll_memset
fld dword [esp + 0x20]
fnstcw word [esp + 0x20]
add esp, 0xc
movzx eax, word [esp + 0x14]
or eax, 0xc00
mov dword [esp + 0x18], eax
mov ecx, 0x64aa48
fldcw word [esp + 0x18]
fistp qword [esp + 0x18]
mov eax, dword [esp + 0x18]
push eax
push 0x5ec
fldcw word [esp + 0x1c]
call fcn.004bcff0
push eax
lea ecx, [esp + 0xf0]
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
push 0
push 0
push 0x87cefa
lea edx, [esp + 0xf4]
push edx
mov ecx, esi
call fcn.00432170
cmp dword [esp + 0x20], 0x41
jne 0x4a1006
movzx eax, word [esi + 0xc]
movzx ecx, ax
cmp cx, 0x88
je 0x4a0f4c
movzx eax, ax
cmp ax, 0x85
je 0x4a0f4c
mov eax, dword [esi]
mov edx, dword [eax + 0x74]
mov ecx, esi
call edx
mov ebp, eax
jmp 0x4a0f52
mov ebp, dword [esi + 0x308]
push 0x80
lea eax, [esp + 0xec]
push 0
push eax
call sub.MSVCR80.dll_memset
movzx ecx, word [ebx + 0xa8]
add esp, 0xc
push ecx
push 0x5ef
mov ecx, 0x64aa48
call fcn.004bcff0
push eax
lea edx, [esp + 0xf0]
push edx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
push 0
push 0
push 0xffffff
lea eax, [esp + 0xf4]
push eax
mov ecx, esi
call fcn.00432170
test ebp, ebp
je 0x4a1006
cmp ebp, dword [0x66e1f4]
jne 0x4a1006
push 0x80
lea ecx, [esp + 0xec]
push 0
push ecx
call sub.MSVCR80.dll_memset
add esp, 0xc
push 0x5f0
mov ecx, 0x64aa48
call fcn.004bcff0
push eax
lea edx, [esp + 0xec]
push edx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 8
push 0
push 0
push 0xffffff
lea eax, [esp + 0xf4]
push eax
mov ecx, esi
call fcn.00432170
push 0
push 0
push 0xffffff
push 0x562815
mov ecx, esi
call fcn.00432170
movzx ecx, word [ebx + 0x26]
push 1
push 0xc8d7aa
push ecx
push esi
mov ecx, edi
call fcn.004970c0
jmp 0x4a1044
push ebx
mov ecx, edi
call fcn.00497520
test eax, eax
je 0x4a1044
push eax
push esi
call fcn.00499180
push 0
push 0
push 0xffffff
push str.
mov ecx, esi
call fcn.00432170
lea ecx, [esp + 0x48]
mov byte [esp + 0x1f4], 0
call fcn.0041fee0
lea ecx, [esp + 0x28]
mov dword [esp + 0x1f4], 0xffffffff
call fcn.0041fee0
mov ecx, dword [esp + 0x1ec]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x1d4]
xor ecx, esp
call fcn.0055160d
add esp, 0x1e4
ret 0x14