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

Disassembly:
push 0xffffffffffffffff
push 0x4d7e60
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x50
mov ecx, dword [esp + 0x68]
xor eax, eax
cmp ecx, eax
mov dword [esp + 0x3c], eax
mov dword [esp + 0x38], eax
mov dword [esp + 0x48], eax
mov dword [esp + 0x4c], eax
mov dword [esp + 0x40], eax
mov dword [esp + 0x44], eax
je 0x4548c1
mov eax, dword [esp + 0x78]
lea edx, [esp + 0x38]
push eax
mov eax, dword [esp + 0x68]
push edx
push ecx
push eax
call fcn.00472eb0
cmp eax, 1
jne 0x4548c1
mov edx, dword [esp + 0x60]
push ebx
push ebp
mov ebp, dword [esp + 0x74]
push esi
push edi
mov eax, dword [ebp]
mov ebx, dword [ebp + 8]
mov esi, dword [ebp + 4]
mov ecx, dword [ebp + 0xc]
sub ebx, eax
sub ecx, esi
sub edx, 0
mov dword [esp + 0x7c], ebx
mov dword [esp + 0x88], ecx
mov edi, eax
je 0x45482a
dec edx
je 0x454759
dec edx
jne 0x4548b3
mov eax, dword [esp + 0x78]
mov ebp, dword [eax + 4]
mov eax, dword [eax + 8]
cmp ebp, ebx
mov dword [esp + 0x70], ebp
mov dword [esp + 0x78], eax
mov dword [esp + 0x74], eax
jg 0x454637
mov eax, ebx
mov ebx, ebp
sub eax, ebp
mov dword [esp + 0x7c], ebx
cdq
sub eax, edx
sar eax, 1
add edi, eax
mov edx, dword [esp + 0x78]
cmp edx, ecx
jg 0x454655
mov eax, ecx
mov ecx, dword [esp + 0x78]
sub eax, edx
mov dword [esp + 0x88], ecx
cdq
sub eax, edx
sar eax, 1
add esi, eax
cmp ebp, ebx
jg 0x45465f
cmp dword [esp + 0x78], ecx
jle 0x4546ca
fild dword [esp + 0x70]
fild dword [esp + 0x7c]
fdiv st(1)
fild dword [esp + 0x78]
fst qword [esp + 0x18]
fild dword [esp + 0x88]
fdiv st(1)
fstp qword [esp + 0x10]
fstp st(0)
fcom qword [esp + 0x10]
fnstsw ax
test ah, 1
jne 0x454691
fstp st(0)
fld qword [esp + 0x10]
fxch st(1)
fmul st(1)
call fcn.004bb8b8
fld qword [esp + 0x18]
fmul st(1)
mov ebp, eax
call fcn.004bb8b8
mov ecx, eax
mov eax, ebx
sub eax, ebp
mov dword [esp + 0x74], ecx
cdq
fstp st(0)
sub eax, edx
sar eax, 1
add edi, eax
mov eax, dword [esp + 0x88]
sub eax, ecx
cdq
sub eax, edx
sar eax, 1
add esi, eax
mov edx, dword [esp + 0x74]
push 0xcc0020
push edx
push ebp
push esi
lea eax, [esp + 0x58]
push edi
push eax
call fcn.004732f0
mov ebx, dword [esp + 0x84]
test ebx, ebx
je 0x4548b3
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0x5cf5a8
mov ecx, dword [esp + 0x74]
add ebp, edi
add ecx, esi
mov dword [esp + 0x68], 2
push ecx
push ebp
push esi
push edi
call fcn.006fb8e4
add edx, dword [eax - 0x73]
dec esp
and al, 0x14
call fcn.004d3379
mov ebp, dword [esp + 0x14]
mov ecx, dword [ebx + 4]
lea eax, [esp + 0x10]
push 4
neg eax
sbb eax, eax
and eax, ebp
push eax
push ecx
push ecx
call fcn.006fbc37
jo 0x454708
inc esp
and al, 0x10
dec esp
pop esp
add bh, al
inc esp
and al, 0x68
add eax, dword [eax]
add byte [eax], al
lea ecx, [esp + 0x10]
jmp 0x4548ae
lea edx, [esi + ecx]
cmp esi, edx
jge 0x454816
mov ecx, dword [esp + 0x50]
mov edi, eax
lea edx, [eax + ebx]
cmp edi, edx
jge 0x4547fc
mov eax, dword [esp + 0x54]
add ecx, edi
add eax, esi
push eax
push ecx
push esi
lea ecx, [esp + 0x44]
push edi
push ecx
call fcn.006fbd54
cmp al, 0x8b
xchg esp, eax
and al, 0x80
add byte [eax], al
add byte [ebp + 0x52382444], cl
lea ecx, [esp + 0x1c]
push eax
push ecx
call fcn.006fb71b
cmp cl, byte [ebx - 0x74e3dbbc]
push esp
and al, 0x18
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x2c], eax
mov dword [esp + 0x28], edx
mov edx, dword [esp + 0x24]
lea eax, [esp + 0x28]
mov dword [esp + 0x30], ecx
push eax
mov dword [esp + 0x38], edx
call fcn.006fb0cb
mov byte [ebp + 0x681575c0], al
and byte [eax], al
int3
mov edx, dword [esp + 0x54]
mov edi, dword [esp + 0x88]
add esi, edx
mov edx, dword [ebp + 4]
add edx, edi
cmp esi, edx
jl 0x454768
mov ecx, dword [esp + 0x84]
test ecx, ecx
je 0x4548b3
jmp 0x4548ae
push 0xcc0020
push 0xffffffffffffffff
push 0xffffffffffffffff
push esi
lea eax, [esp + 0x58]
push edi
push eax
call fcn.004732f0
mov ebx, dword [esp + 0x84]
xor eax, eax
cmp ebx, eax
je 0x4548b3
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], 0x5cf5a8
mov ecx, dword [esp + 0x54]
mov edx, dword [esp + 0x50]
mov dword [esp + 0x68], eax
lea eax, [ecx + esi]
lea ecx, [edx + edi]
push eax
push ecx
push esi
push edi
call fcn.006fb8e4
cmpsb byte [esi], byte es:[edi]
push eax
lea ecx, [esp + 0x14]
call fcn.004d3379
mov ebp, dword [esp + 0x14]
mov ecx, dword [ebx + 4]
lea eax, [esp + 0x10]
push 4
neg eax
sbb eax, eax
and eax, ebp
push eax
push ecx
push ecx
call fcn.006fbc37
adc al, 0xc7
inc esp
and al, 0x10
dec esp
pop esp
add bh, al
inc esp
and al, 0x68
add dword [eax], eax
add byte [eax], al
lea ecx, [esp + 0x10]
call fcn.004d33d0
lea eax, [esp + 0x48]
push eax
call fcn.00473690
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x50]
mov dword fs:[0], ecx
add esp, 0x5c
ret