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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
mov edx, dword [ebp + 0xc]
sub esp, 0x2ac
push ebx
xor ebx, ebx
push esi
push edi
cmp edx, ebx
jne 0x459b26
mov eax, 0x80070057
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x10
mov ecx, 0x4a4910
mov dword [esp + 0x10], ecx
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x58], ecx
lea ecx, [esp + 0x88]
mov dword [esp + 0x5c], ecx
lea ecx, [esp + 0x98]
mov dword [esp + 0x60], ecx
lea ecx, [esp + 0xa8]
mov dword [esp + 0x64], ecx
lea eax, [esp + 0xb8]
lea ecx, [esp + 0x24]
mov dword [esp + 0x98], ecx
mov dword [esp + 0x14], eax
mov eax, dword [ebp + 8]
mov esi, dword [eax + 8]
lea ecx, [esp + 0x40]
mov dword [esp + 0xa8], ecx
movzx ecx, byte [eax + 0x10]
mov dword [esp + 0x78], esi
mov esi, 0x4cc4d0
inc edx
mov dword [esp + 0x2c], esi
mov dword [esp + 0x48], esi
mov esi, 4
add ecx, 2
mov dword [esp + 0x18], ebx
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x80], 6
mov dword [esp + 0x30], ebx
mov dword [esp + 0x34], ebx
mov dword [esp + 0x38], 0x1000402
mov dword [esp + 0x4c], ebx
mov dword [esp + 0x50], ebx
mov dword [esp + 0x54], 0x1000402
mov dword [esp + 0x90], ebx
mov dword [esp + 0x88], 0x4ac000
mov dword [esp + 0xa0], esi
mov dword [esp + 0xb0], esi
mov dword [esp + 0xc], edx
cmp edx, ecx
jb 0x459bfc
mov dword [esp + 0xc], ecx
mov ecx, dword [esp + 0xc]
mov eax, dword [eax + 8]
mov edx, dword [eax]
mov edx, dword [edx + 0x1c]
push ecx
lea ecx, [esp + 0x60]
push ecx
push 2
lea ecx, [esp + 0x84]
push ecx
lea ecx, [esp + 0x20]
push ecx
push eax
call edx
cmp eax, ebx
je case.0x459d18.6
cmp eax, esi
je case.0x459d18.6
cmp eax, 8
je case.0x459d18.6
lea eax, [esp + 0x10]
push eax
call fcn.00451540
add esp, 4
dec eax
je 0x459d75
dec eax
mov eax, dword [esp + 0x18]
je 0x459d12
cmp eax, 6
je 0x459c90
cmp eax, esi
jne 0x459c73
mov eax, dword [esp + 0x10]
cmp byte [eax + 0x17], bl
jne 0x459c6d
mov eax, dword [eax + 0xc]
test byte [eax + 0x15], 2
jne 0x459c90
xor ecx, ecx
lea eax, [esp + 0x10]
call fcn.004517d0
xor ecx, ecx
cmp word [eax], bx
setne cl
mov eax, ecx
cmp eax, ebx
je case.0x459d18.6
lea esi, [esp + 0x68]
lea ecx, [esp + 0x24]
call fcn.004157c0
mov edi, dword [ebp + 0x10]
xor ebx, ebx
mov eax, esi
call fcn.004586b0
cmp dword [esp + 0xc], 2
jle 0x459cc3
lea ecx, [esp + 0x40]
call fcn.004157c0
add edi, 0x10
mov eax, esi
call fcn.004586b0
mov eax, dword [ebp + 0x14]
test eax, eax
je 0x459cd1
mov ecx, dword [esp + 0xc]
dec ecx
mov dword [eax], ecx
xor ebx, ebx
mov eax, dword [esp + 0x1c]
cmp eax, ebx
je 0x459ce4
push eax
call fcn.004915f6
add esp, 4
cmp dword [esp + 0x18], 6
jne 0x459cf7
mov eax, dword [esp + 0x10]
mov edx, dword [eax]
push eax
mov eax, dword [edx + 8]
call eax
cmp byte [esp + 0x3b], bl
jne 0x459d8d
mov ecx, dword [esp + 0x30]
push ebx
xor al, al
call fcn.0047ac70
jmp 0x459de8
dec eax
cmp eax, 5
ja case.0x459d18.3
jmp dword [eax*4 + 0x459e60]
fild qword [esp + 0x10]
jmp 0x459d51
fld qword [esp + 0x10]
jmp 0x459d51
mov eax, dword [esp + 0x10]
push 1
call fcn.00415710
jmp 0x459d51
mov eax, dword [esp + 0x14]
cmp eax, ebx
je case.0x459d18.3
fild qword [eax]
jmp 0x459d51
mov edx, dword [esp + 0x10]
push edx
call fcn.00492aa2
add esp, 4
fldz
fucompp
fnstsw ax
test ah, 0x44
jp 0x459c90
mov eax, dword [ebp + 0x14]
cmp eax, ebx
je 0x459d69
mov dword [eax], ebx
mov dword [ebp + 0xc], 0xffffffff
jmp 0x459cd3
push 1
lea ecx, [esp + 0x14]
call fcn.00451690
add esp, 4
or eax, edx
jne 0x459c90
jmp case.0x459d18.6
test byte [esp + 0x39], 2
je 0x459da5
mov eax, dword [esp + 0x24]
and byte [esp + 0x39], 0x3d
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
movzx eax, byte [esp + 0x38]
and byte [esp + 0x39], 0x82
dec eax
mov dword [esp + 0x30], ebx
je 0x459ddf
dec eax
jne 0x459de8
cmp dword [esp + 0x34], ebx
je 0x459de8
mov eax, dword [esp + 0x2c]
push eax
call fcn.004915f6
add esp, 4
and byte [esp + 0x39], 0x7f
mov dword [esp + 0x34], ebx
mov dword [esp + 0x2c], 0x4cc4d0
jmp 0x459de8
mov edx, dword [esp + 0x2c]
xor ecx, ecx
mov word [edx], cx
cmp byte [esp + 0x57], bl
jne 0x459dfc
mov ecx, dword [esp + 0x4c]
push ebx
xor al, al
call fcn.0047ac70
jmp 0x459e46
test byte [esp + 0x55], 2
je 0x459e14
mov eax, dword [esp + 0x40]
and byte [esp + 0x55], 0x3d
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
movzx eax, byte [esp + 0x54]
and byte [esp + 0x55], 0x82
dec eax
mov dword [esp + 0x4c], ebx
je 0x459e3d
dec eax
jne 0x459e46
cmp dword [esp + 0x50], ebx
je 0x459e46
mov eax, dword [esp + 0x48]
push eax
call fcn.004915f6
add esp, 4
jmp 0x459e46
mov edx, dword [esp + 0x48]
xor ecx, ecx
mov word [edx], cx
mov eax, dword [ebp + 0xc]
inc eax
xor ecx, ecx
cmp eax, dword [esp + 0xc]
pop edi
setne cl
pop esi
pop ebx
mov eax, ecx
mov esp, ebp
pop ebp
ret 0x10