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

Disassembly:
mov eax, 0x74
call fcn.00580860
mov eax, dword [0x64ef14]
xor eax, esp
mov dword [esp + 0x70], eax
mov eax, dword [esp + 0x94]
xorps xmm4, xmm4
movsd xmm3, qword [esp + 0x88]
test eax, eax
mov ecx, dword [esp + 0x80]
mov edx, dword [esp + 0x84]
push esi
mov esi, dword [esp + 0x80]
mov dword [esp + 0x34], esi
mov esi, 6
cmovns esi, eax
mov dword [esp + 0x2c], ecx
comisd xmm4, xmm3
push edi
mov edi, dword [esp + 0x80]
mov dword [esp + 0x34], edx
mov dword [esp + 0x24], 0
mov dword [esp + 0x10], 0
mov dword [esp + 8], 0
mov dword [esp + 0x2c], esi
jbe 0x48f548
mov dword [esp + 0x14], 0x2d
jmp 0x48f570
mov eax, dword [esp + 0xa0]
test al, 2
je 0x48f55d
mov dword [esp + 0x14], 0x2b
jmp 0x48f570
test al, 4
mov esi, 0x20
mov eax, 0
cmovne eax, esi
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0xa4]
movsd xmm1, qword [0x5de088]
movsd xmm2, qword [0x5de080]
mov esi, dword [esp + 0x38]
mov dword [esp + 0xc], 1
cmp eax, 2
jne 0x48f5fd
ucomisd xmm3, xmm4
lahf
test ah, 0x44
jp 0x48f5ac
mov dword [esp + 0x20], 0
jmp 0x48f617
movsd xmm0, qword [0x5de070]
comisd xmm0, xmm3
jbe 0x48f5c4
mov dword [esp + 0x20], 1
jmp 0x48f617
mov eax, dword [esp + 0x2c]
test eax, eax
jne 0x48f5d4
comisd xmm3, xmm1
jae 0x48f5f3
test eax, eax
jle 0x48f5a2
push eax
call fcn.00490030
movsd xmm1, qword [0x5de088]
add esp, 4
fstp qword [esp + 0x18]
comisd xmm3, xmmword [esp + 0x18]
jb 0x48f5a2
mov dword [esp + 0x20], 1
jmp 0x48f617
cmp dword [esp + 0xa4], 0
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x28], eax
je 0x48f6be
ucomisd xmm3, xmm4
movaps xmm0, xmm3
lahf
test ah, 0x44
jnp 0x48f654
xor eax, eax
comisd xmm2, xmm3
jbe 0x48f63f
nop dword [eax]
mulsd xmm0, xmm1
dec eax
comisd xmm2, xmm0
ja 0x48f630
mov dword [esp + 8], eax
comisd xmm0, xmm1
jbe 0x48f654
divsd xmm0, xmm1
inc eax
comisd xmm0, xmm1
ja 0x48f645
mov dword [esp + 8], eax
cmp dword [esp + 0xa4], 2
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x28], eax
jne 0x48f6ab
test eax, eax
cmove eax, dword [esp + 0xc]
cmp dword [esp + 0x20], 0
mov dword [esp + 0x28], eax
jne 0x48f6a6
or eax, 0xffffffff
sub eax, dword [esp + 8]
add dword [esp + 0x28], eax
jns 0x48f6be
push 0
push edx
push ecx
push esi
push edi
call fcn.0048f3f0
add esp, 0x14
pop edi
xor eax, eax
pop esi
mov ecx, dword [esp + 0x70]
xor ecx, esp
call fcn.0057ffc6
add esp, 0x74
ret
dec eax
mov dword [esp + 0x28], eax
cmp dword [esp + 0x20], 1
jne 0x48f6be
movaps xmm3, xmm0
movsd qword [esp + 0x90], xmm3
comisd xmm4, xmm3
jbe 0x48f6d4
xorps xmm3, xmmword [0x5de0a0]
movsd qword [esp + 0x90], xmm3
comisd xmm3, xmmword [0x5de090]
jae 0x48f685
movaps xmm0, xmm3
call fcn.00580b61
movsd xmm3, qword [0x5de080]
mov edx, eax
mov eax, dword [esp + 0x28]
mov ecx, 9
movsd xmm2, qword [0x5de088]
cmp eax, ecx
mov dword [esp + 0xc], edx
movaps xmm1, xmm3
cmovg eax, ecx
mov dword [esp + 0x28], eax
mov ecx, eax
test eax, eax
je 0x48f720
mulsd xmm1, xmm2
sub ecx, 1
jne 0x48f717
movsd xmm4, qword [0x5de078]
cvttsd2si ecx, xmm1
mov dword [esp + 0x2c], ecx
movd xmm0, ecx
cvtdq2pd xmm0, xmm0
subsd xmm1, xmm0
comisd xmm1, xmm4
jb 0x48f747
inc ecx
mov dword [esp + 0x2c], ecx
mov ecx, eax
test eax, eax
je 0x48f759
nop dword [eax]
mulsd xmm3, xmm2
sub ecx, 1
jne 0x48f750
movsd xmm1, qword [esp + 0x90]
mov eax, edx
movd xmm0, edx
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x644f40]
subsd xmm1, xmm0
mulsd xmm1, xmm3
cvttsd2si ecx, xmm1
mov dword [esp + 0x1c], ecx
movd xmm0, ecx
cvtdq2pd xmm0, xmm0
subsd xmm1, xmm0
comisd xmm1, xmm4
jb 0x48f79f
inc ecx
mov dword [esp + 0x1c], ecx
mov eax, dword [esp + 0x2c]
cmp ecx, eax
jb 0x48f7b2
inc edx
sub ecx, eax
mov dword [esp + 0xc], edx
mov dword [esp + 0x1c], ecx
mov esi, dword [esp + 0xc]
xor ecx, ecx
nop dword [eax + eax]
mov eax, 0xcccccccd
mov dword [esp + 0x2c], ecx
mul esi
shr edx, 3
lea eax, [edx + edx*4]
add eax, eax
sub esi, eax
mov al, byte [esi + str.0123456789]
mov esi, edx
mov byte [esp + ecx + 0x64], al
inc ecx
test esi, esi
je 0x48f7eb
cmp ecx, 0x14
jl 0x48f7c0
mov eax, dword [esp + 0x2c]
cmp ecx, 0x14
mov esi, dword [esp + 0x38]
cmovne eax, ecx
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x2c], eax
cmp eax, 0x14
jae 0x48fc2e
mov byte [esp + eax + 0x64], 0
xor eax, eax
cmp dword [esp + 0x28], eax
jle 0x48f89b
nop dword [eax + eax]
cmp dword [esp + 0xa4], 2
jne 0x48f860
test eax, eax
jne 0x48f860
mov eax, 0xcccccccd
mul ecx
mov eax, dword [esp + 0x1c]
shr edx, 3
lea ecx, [edx + edx*4]
add ecx, ecx
sub eax, ecx
jne 0x48f85c
mov eax, dword [esp + 0x28]
mov ecx, edx
dec eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x28], eax
test eax, eax
mov eax, dword [esp + 0x24]
jmp 0x48f815
mov ecx, dword [esp + 0x1c]
mov eax, 0xcccccccd
mul ecx
shr edx, 3
lea eax, [edx + edx*4]
add eax, eax
sub ecx, eax
mov al, byte [ecx + str.0123456789]
mov ecx, dword [esp + 0x24]
mov byte [esp + ecx + 0x50], al
mov eax, ecx
inc eax
mov ecx, edx
mov dword [esp + 0x24], eax
mov dword [esp + 0x1c], ecx
cmp eax, dword [esp + 0x28]
jl 0x48f820
cmp eax, 0x14
jae 0x48fc2e
cmp dword [esp + 0x20], 1
mov byte [esp + eax + 0x50], 0
jne 0x48f920
mov eax, dword [esp + 8]
mov ecx, eax
test eax, eax
jns 0x48f8b9
neg ecx
mov dword [esp + 0x1c], ecx
jmp 0x48f8c0
mov dword [esp + 0x1c], eax
nop dword [eax]
mov eax, 0x66666667
imul ecx
sar edx, 2
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov edx, dword [esp + 0x1c]
mov dword [esp + 0x1c], ecx
lea eax, [ecx + ecx*4]
add eax, eax
sub edx, eax
mov al, byte [edx + str.0123456789]
mov edx, dword [esp + 0x10]
mov byte [esp + edx + 0x3c], al
inc edx
mov dword [esp + 0x10], edx
test ecx, ecx
jle 0x48f90b
cmp edx, 0x14
jl 0x48f8c0
push 0
push dword [esp + 0x38]
push dword [esp + 0x38]
jmp 0x48f689
cmp edx, 1
jne 0x48f922
mov edx, 2
mov byte [esp + 0x3d], 0x30
mov dword [esp + 0x10], edx
jmp 0x48f922
xor edx, edx
mov esi, dword [esp + 0x14]
xor eax, eax
mov ecx, dword [esp + 0x28]
test esi, esi
mov esi, dword [esp + 0x98]
setne al
sub esi, eax
xor eax, eax
test ecx, ecx
setg al
sub esi, eax
sub esi, dword [esp + 0x2c]
sub esi, ecx
cmp dword [esp + 0x20], 1
jne 0x48f959
mov eax, 0xfffffffe
sub eax, edx
add esi, eax
mov eax, ecx
mov ecx, 0
sub eax, dword [esp + 0x24]
cmovns ecx, eax
mov eax, dword [esp + 0xa0]
mov dword [esp + 0x1c], ecx
xor ecx, ecx
test esi, esi
cmovns ecx, esi
mov edx, ecx
neg edx
and al, 1
cmove edx, ecx
test byte [esp + 0xa0], 0x10
mov dword [esp + 0xc], edx
mov esi, edx
je 0x48f9f6
test edx, edx
jle 0x48f9f6
mov eax, dword [esp + 0x14]
test eax, eax
je 0x48f9c5
push eax
push dword [esp + 0x38]
push dword [esp + 0x38]
push dword [esp + 0x44]
push edi
call fcn.0048f3f0
add esp, 0x14
test eax, eax
je 0x48f693
dec esi
mov dword [esp + 0x14], 0
test esi, esi
jle 0x48fa24
nop dword [eax]
push 0x30
push dword [esp + 0x38]
push dword [esp + 0x38]
push dword [esp + 0x44]
push edi
call fcn.0048f3f0
add esp, 0x14
test eax, eax
je 0x48f693
dec esi
test esi, esi
jg 0x48f9d0
jmp 0x48fa24
test esi, esi
jle 0x48fa24
nop word [eax + eax]
push 0x20
push dword [esp + 0x38]
push dword [esp + 0x38]
push dword [esp + 0x44]
push edi
call fcn.0048f3f0
add esp, 0x14
test eax, eax
je 0x48f693
dec esi
test esi, esi
jg 0x48fa00
mov eax, dword [esp + 0x14]
test eax, eax
je 0x48fa4a
push eax
push dword [esp + 0x38]
push dword [esp + 0x38]
push dword [esp + 0x44]
push edi
call fcn.0048f3f0
add esp, 0x14
test eax, eax
je 0x48f693
mov eax, dword [esp + 0x2c]
test eax, eax
jle 0x48fa82
dec eax
mov dword [esp + 0x2c], eax
movsx eax, byte [esp + eax + 0x64]
push eax
push dword [esp + 0x38]
push dword [esp + 0x38]
push dword [esp + 0x44]
push edi
call fcn.0048f3f0
add esp, 0x14
test eax, eax
je 0x48f693
mov eax, dword [esp + 0x2c]
test eax, eax
jg 0x48fa52
cmp dword [esp + 0x28], 0
jg 0x48fa93
test byte [esp + 0xa0], 8
je 0x48faf0
push 0x2e
push dword [esp + 0x38]
push dword [esp + 0x38]
push dword [esp + 0x44]
push edi
call fcn.0048f3f0
add esp, 0x14
test eax, eax
je 0x48f693
mov eax, dword [esp + 0x24]
test eax, eax
jle 0x48faf0
nop word [eax + eax]
dec eax
mov dword [esp + 0x24], eax
movsx eax, byte [esp + eax + 0x50]
push eax
push dword [esp + 0x38]
push dword [esp + 0x38]
push dword [esp + 0x44]
push edi
call fcn.0048f3f0
add esp, 0x14
test eax, eax
je 0x48f693
mov eax, dword [esp + 0x24]
test eax, eax
jg 0x48fac0
cmp dword [esp + 0x1c], 0
jle 0x48fb2c
nop word [eax + eax]
push 0x30
push dword [esp + 0x38]
push dword [esp + 0x38]
push dword [esp + 0x44]
push edi
call fcn.0048f3f0
add esp, 0x14
test eax, eax
je 0x48f693
mov eax, dword [esp + 0x1c]
dec eax
mov dword [esp + 0x1c], eax
test eax, eax
jg 0x48fb00
cmp dword [esp + 0x20], 1
jne 0x48fbf0
mov eax, dword [esp + 0xa0]
not eax
and eax, 0x20
or eax, 0x45
push eax
push dword [esp + 0x38]
push dword [esp + 0x38]
push dword [esp + 0x44]
push edi
call fcn.0048f3f0
add esp, 0x14
test eax, eax
je 0x48f693
cmp dword [esp + 8], 0
jge 0x48fb97
push 0x2d
push dword [esp + 0x38]
push dword [esp + 0x38]
push dword [esp + 0x44]
push edi
call fcn.0048f3f0
add esp, 0x14
test eax, eax
jne 0x48fbb6
pop edi
pop esi
mov ecx, dword [esp + 0x70]
xor ecx, esp
call fcn.0057ffc6
add esp, 0x74
ret
push 0x2b
push dword [esp + 0x38]
push dword [esp + 0x38]
push dword [esp + 0x44]
push edi
call fcn.0048f3f0
add esp, 0x14
test eax, eax
je 0x48f693
mov eax, dword [esp + 0x10]
test eax, eax
jle 0x48fbf0
nop
dec eax
mov dword [esp + 0x10], eax
movsx eax, byte [esp + eax + 0x3c]
push eax
push dword [esp + 0x38]
push dword [esp + 0x38]
push dword [esp + 0x44]
push edi
call fcn.0048f3f0
add esp, 0x14
test eax, eax
je 0x48f693
mov eax, dword [esp + 0x10]
test eax, eax
jg 0x48fbc0
test esi, esi
jns 0x48fc18
push 0x20
push dword [esp + 0x38]
push dword [esp + 0x38]
push dword [esp + 0x44]
push edi
call fcn.0048f3f0
add esp, 0x14
test eax, eax
je 0x48f693
add esi, 1
js 0x48fbf4
mov ecx, dword [esp + 0x78]
mov eax, 1
pop edi
pop esi
xor ecx, esp
call fcn.0057ffc6
add esp, 0x74
ret
call fcn.00580e1a
int3