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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
mov edx, dword [ebp + 0xc]
sub esp, 0x1ac
push ebx
xor ebx, ebx
push esi
push edi
cmp edx, ebx
jne 0x457cf6
mov eax, 0x80070057
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x10
mov ecx, 0x49b8ad
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, 0x4af24d
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], 0x49f808
mov dword [esp + 0xa0], esi
mov dword [esp + 0xb0], esi
mov dword [esp + 0xc], edx
cmp edx, ecx
jb 0x457dcc
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.0x457eae.6
cmp eax, esi
je case.0x457eae.6
cmp eax, 8
je case.0x457eae.6
lea eax, [esp + 0x10]
push eax
call fcn.0044f320
add esp, 4
dec eax
je 0x457f3e
dec eax
mov eax, dword [esp + 0x18]
je 0x457ea8
cmp eax, 6
je 0x457e5f
cmp eax, esi
jne 0x457e43
mov eax, dword [esp + 0x10]
cmp byte [eax + 0x17], bl
jne 0x457e3d
mov eax, dword [eax + 0xc]
test byte [eax + 0x15], 2
jne 0x457e5f
xor ecx, ecx
lea eax, [esp + 0x10]
call fcn.0044f5b0
xor ecx, ecx
cmp byte [eax], bl
setne cl
mov eax, ecx
cmp eax, ebx
je case.0x457eae.6
lea esi, [esp + 0x68]
lea ecx, [esp + 0x24]
call fcn.004150f0
mov edi, dword [ebp + 0x10]
push ebx
mov ecx, esi
call fcn.004566f0
add esp, 4
cmp dword [esp + 0xc], 2
jle 0x457e98
lea ecx, [esp + 0x40]
call fcn.004150f0
push ebx
add edi, 0x10
mov ecx, esi
call fcn.004566f0
add esp, 4
mov eax, dword [ebp + 0x14]
cmp eax, ebx
je 0x457f06
mov ecx, dword [esp + 0xc]
dec ecx
mov dword [eax], ecx
jmp 0x457f06
dec eax
cmp eax, 5
ja case.0x457eae.3
jmp dword [eax*4 + 0x458024]
fild qword [esp + 0x10]
jmp 0x457ee7
fld qword [esp + 0x10]
jmp 0x457ee7
mov eax, dword [esp + 0x10]
push 1
call fcn.00415040
jmp 0x457ee7
mov eax, dword [esp + 0x14]
cmp eax, ebx
je case.0x457eae.3
fild qword [eax]
jmp 0x457ee7
mov edx, dword [esp + 0x10]
push edx
call fcn.0048a2f0
add esp, 4
fldz
fucompp
fnstsw ax
test ah, 0x44
jp 0x457e5f
mov eax, dword [ebp + 0x14]
cmp eax, ebx
je 0x457eff
mov dword [eax], ebx
mov dword [ebp + 0xc], 0xffffffff
mov eax, dword [esp + 0x1c]
cmp eax, ebx
je 0x457f17
push eax
call fcn.00488458
add esp, 4
cmp dword [esp + 0x18], 6
jne 0x457f2a
mov eax, dword [esp + 0x10]
mov edx, dword [eax]
push eax
mov eax, dword [edx + 8]
call eax
cmp byte [esp + 0x3b], bl
jne 0x457f56
mov ecx, dword [esp + 0x30]
push ebx
xor al, al
call fcn.004786f0
jmp 0x457fae
push 1
lea ecx, [esp + 0x14]
call fcn.0044f470
add esp, 4
or eax, edx
jne 0x457e5f
jmp case.0x457eae.6
test byte [esp + 0x39], 2
je 0x457f6e
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 0x457fa8
dec eax
jne 0x457fae
cmp dword [esp + 0x34], ebx
je 0x457fae
mov eax, dword [esp + 0x2c]
push eax
call fcn.00488458
add esp, 4
and byte [esp + 0x39], 0x7f
mov dword [esp + 0x34], ebx
mov dword [esp + 0x2c], 0x4af24d
jmp 0x457fae
mov ecx, dword [esp + 0x2c]
mov byte [ecx], bl
cmp byte [esp + 0x57], bl
jne 0x457fc2
mov ecx, dword [esp + 0x4c]
push ebx
xor al, al
call fcn.004786f0
jmp 0x458009
test byte [esp + 0x55], 2
je 0x457fda
mov eax, dword [esp + 0x40]
and byte [esp + 0x55], 0x3d
mov edx, dword [eax]
push eax
mov eax, dword [edx + 8]
call eax
movzx eax, byte [esp + 0x54]
and byte [esp + 0x55], 0x82
dec eax
mov dword [esp + 0x4c], ebx
je 0x458003
dec eax
jne 0x458009
cmp dword [esp + 0x50], ebx
je 0x458009
mov ecx, dword [esp + 0x48]
push ecx
call fcn.00488458
add esp, 4
jmp 0x458009
mov edx, dword [esp + 0x48]
mov byte [edx], bl
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