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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x8c]
cmp eax, dword [ecx + 8]
jbe 0x5fd8e1
sub esp, 0x10c
mov eax, dword [esp + 0x114]
mov ecx, dword [esp + 0x118]
lea edx, [ecx + eax]
mov ebx, dword [esp + 0x128]
mov ebp, edx
and edx, ebx
mov esi, dword [esp + 0x130]
cmp esi, ebp
jbe 0x5fccae
mov edi, ebp
jmp 0x5fccb2
mov edi, ebp
mov ebp, esi
mov dword [esp + 0x50], ebp
mov ebp, dword [esp + 0x110]
sub ebp, ecx
mov ebx, dword [esp + 0x12c]
cmp dword [ebx + 4], 0xa
jg 0x5fcce5
mov dword [esp + 0x104], eax
mov eax, 0x96
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0x104]
jmp 0x5fccfc
mov dword [esp + 0xfc], eax
mov eax, 0x145
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0xfc]
mov dword [esp + 0xd0], edi
mov dword [esp + 0x80], edx
mov dword [esp + 0x88], ebp
jg 0x5fcd2c
mov dword [esp + 0xf4], eax
mov eax, 1
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0xf4]
jmp 0x5fcd43
mov dword [esp + 0xec], eax
mov eax, 5
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0xec]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], esi
mov dword [esp + 0xc], 0
mov eax, dword [esp + 0x134]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x138]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x13c]
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x150]
mov dword [esp + 0x1c], eax
mov edx, dword [esp + 0x154]
mov dword [esp + 0x20], edx
mov ebx, dword [esp + 0x158]
mov dword [esp + 0x24], ebx
mov ebx, dword [esp + 0x15c]
mov dword [esp + 0x28], ebx
mov ebp, dword [esp + 0x160]
mov dword [esp + 0x2c], ebp
call fcn.005fcad0
nop
mov eax, dword [esp + 0x154]
mov ecx, dword [eax + 0xe0]
neg ecx
and ecx, 7
imul ecx, ecx, 0x1c
mov edx, dword [eax + ecx]
mov ebx, dword [esp + 0x150]
movss xmm0, dword [ebx + 0xb1c]
mov ebp, dword [ebx + 0xb14]
mov esi, dword [ebx + 0xb10]
mov edi, dword [esp + 0x118]
cmp edi, ebp
jae 0x5fd8d7
movss xmm1, dword [esi + edi*4]
cmp ebp, edx
jbe 0x5fd8ce
lea ebp, [eax + ecx + 0x18]
addss xmm0, dword [ebp]
lea edx, [esi + edx*4]
subss xmm1, dword [edx]
addss xmm0, xmm1
nop
mov edx, dword [esp + 0x110]
mov ebp, dword [esp + 0x158]
mov ecx, dword [esp + 0x15c]
mov esi, 2
mov esi, 0xa
mov dword [esp + 0x58], esi
mov esi, 4
mov dword [esp + 0x7c], esi
mov esi, 2
jmp 0x5fce63
mov dword [esp + 0x58], esi
mov dword [esp + 0x7c], ebp
mov ebp, dword [esp + 0x158]
mov esi, ebx
mov ebx, dword [esp + 0x150]
lea ebx, [esi + edi]
cmp edx, ebx
jb 0x5fceb1
cmp ecx, ebx
jbe 0x5fd8c7
lea ebx, [ebx + ebx*2]
lea ebx, [ebp + ebx*8 + 0xc]
movss xmm1, dword [ebx]
ucomiss xmm0, xmm1
jb 0x5fceb1
lea ebx, [esi + 1]
mov esi, dword [esp + 0x58]
cmp esi, ebx
jne 0x5fcea3
movss xmm1, dword [0x7c9928]
addss xmm0, xmm1
mov ebp, dword [esp + 0x7c]
add esi, ebp
shl ebp, 1
jmp 0x5fce4b
movss xmm1, dword [0x7c9928]
mov ebp, dword [esp + 0x7c]
jmp 0x5fce4b
mov dword [esp + 0xa4], esi
mov edx, dword [esp + 0x48]
xor ebx, ebx
xor ebx, ebx
mov dword [esp + 0x90], ebx
jmp 0x5fcef7
inc ebx
mov ebp, dword [esp + 0x48]
mov eax, esi
mov edx, ebp
mov ebp, dword [esp + 0x158]
mov esi, dword [esp + 0xa4]
mov edi, dword [esp + 0x118]
mov dword [esp + 0x90], ebx
mov ebx, ecx
mov ecx, dword [esp + 0x15c]
mov ebp, dword [esp + 0x90]
cmp ebp, edx
jae 0x5fd0a3
mov ecx, dword [eax + 0xe0]
mov dword [esp + 0x5c], ecx
cmp ecx, 8
jb 0x5fcf1a
mov ecx, 8
cmp ecx, ebp
jbe 0x5fd0a3
mov dword [esp + 0x78], ebx
nop
mov ecx, dword [esp + 0x5c]
sub ebp, ecx
and ebp, 7
imul ecx, ebp, 0x1c
mov dword [esp + 0xcc], ecx
mov ebx, dword [eax + ecx]
sub edi, ebx
mov dword [esp + 0xc8], edi
mov dword [esp], edi
call fcn.00612a60
movzx eax, word [esp + 4]
mov ecx, dword [esp + 0xcc]
mov edx, dword [esp + 0x154]
movss xmm0, dword [edx + ecx + 0x14]
movzx ebx, ax
mov ebp, dword [0x7074ec]
mov esi, dword [0x7074e8]
cmp ebp, ebx
jbe 0x5fd8be
nop
mov ebx, dword [esi + ebx*4]
mov ebp, dword [esp + 0x150]
mov esi, dword [ebp + 0xb10]
mov edi, dword [ebp + 0xb14]
mov ebp, dword [esp + 0x118]
cmp ebp, edi
jae 0x5fd8b5
mov word [esp + 0x32], ax
movss dword [esp + 0x94], xmm0
movss xmm0, dword [esi + ebp*4]
subss xmm0, dword [esi]
movss dword [esp + 0x44], xmm0
mov dword [esp], ebx
call fcn.00456a70
movsd xmm0, qword [esp + 4]
cvtsd2ss xmm0, xmm0
movss xmm1, dword [esp + 0x94]
addss xmm1, xmm0
movss xmm0, dword [esp + 0x44]
addss xmm1, xmm0
movss dword [esp + 0x54], xmm1
mov eax, dword [esp + 0xa4]
lea ecx, [eax - 1]
mov edx, dword [esp + 0x128]
mov ebx, dword [esp + 0x50]
mov ebp, dword [esp + 0xcc]
mov esi, dword [esp + 0x154]
mov edi, dword [esp + 0xd0]
mov dword [esp + 0xe4], eax
xor eax, eax
mov dword [esp + 0xa0], eax
mov eax, dword [esp + 0xe4]
jmp 0x5fd0db
mov edx, dword [esp + 0x88]
mov esi, dword [esp + 0x154]
jmp 0x5fd04d
mov edx, dword [esp + 0x88]
mov ebx, dword [esp + 0x90]
cmp ebx, 2
jb 0x5fd062
mov ecx, dword [esp + 0x78]
jmp 0x5fcec9
mov ebp, dword [esp + 0x12c]
mov ecx, dword [esp + 0x140]
mov dword [esp + 0xdc], eax
xor eax, eax
mov dword [esp + 0xa0], eax
mov eax, dword [esp + 0xdc]
jmp 0x5fd32d
mov eax, dword [esp + 0xa4]
mov edi, dword [esp + 0xd0]
mov ecx, dword [esp + 0x78]
jmp 0x5fcec9
mov dword [esp + 0x164], ebx
add esp, 0x10c
ret
mov ebp, dword [esp + 0xa0]
inc ebp
mov ebx, esi
mov esi, dword [esp + 0x154]
mov dword [esp + 0x78], edx
mov dword [esp + 0xa0], ebp
mov edx, dword [esp + 0x128]
mov ebp, dword [esp + 0xcc]
mov ebx, dword [esp + 0xa0]
cmp ebx, 0x10
jae 0x5fd046
mov edx, dword [esp + 0x88]
cmp ecx, edx
jae 0x5fd04d
mov edx, dword [0x70748c]
mov edi, dword [0x707488]
cmp ebx, edx
jae 0x5fd8ac
mov edx, dword [edi + ebx*4]
lea edi, [esi + ebp + 4]
cmp edx, 4
jae 0x5fd8a0
mov edx, dword [edi + edx*4]
mov edi, dword [0x7074fc]
mov ebp, dword [0x7074f8]
cmp ebx, edi
jae 0x5fd897
add edx, dword [ebp + ebx*4]
mov ebp, dword [esp + 0xd0]
mov edi, ebp
sub ebp, edx
mov esi, dword [esp + 0x80]
add esi, ecx
mov ebx, dword [esp + 0x120]
cmp ebx, esi
jbe 0x5fd88e
mov ebx, dword [esp + 0x11c]
movzx ebx, byte [ebx + esi]
mov byte [esp + 0x31], bl
mov ebx, dword [esp + 0x128]
cmp ebx, esi
jb 0x5fd036
mov esi, dword [esp + 0x50]
cmp esi, edx
jae 0x5fd18b
mov edx, dword [esp + 0x78]
jmp 0x5fd0b1
cmp ebp, edi
jb 0x5fd198
mov edx, dword [esp + 0x78]
jmp 0x5fd0b1
mov dword [esp + 0xc4], edx
and ebp, ebx
lea edx, [ecx + ebp]
cmp ebx, edx
jb 0x5fd1d8
mov dword [esp + 0x6c], ebp
mov ebp, dword [esp + 0x120]
cmp ebp, edx
jbe 0x5fd885
mov esi, dword [esp + 0x11c]
add edx, esi
movzx ebx, byte [esp + 0x31]
cmp byte [edx], bl
je 0x5fd1e1
mov ebx, dword [esp + 0x128]
mov esi, dword [esp + 0x50]
mov edx, dword [esp + 0x78]
jmp 0x5fd0b1
mov edx, dword [esp + 0x6c]
cmp ebp, edx
jb 0x5fd87c
mov ebx, dword [esp + 0x124]
sub ebx, edx
mov dword [esp + 0xc0], ebx
sub ebp, edx
neg ebx
sar ebx, 0x1f
and ebx, edx
lea edx, [esi + ebx]
mov ebx, dword [esp + 0x120]
mov edi, dword [esp + 0x80]
cmp ebx, edi
jb 0x5fd873
mov dword [esp + 0x84], ecx
mov dword [esp], edx
mov dword [esp + 4], ebp
mov eax, dword [esp + 0xc0]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x124]
sub eax, edi
mov edx, eax
neg eax
sar eax, 0x1f
and eax, edi
add eax, esi
mov dword [esp + 0xc], eax
sub ebx, edi
mov dword [esp + 0x10], ebx
mov dword [esp + 0x14], edx
mov edx, dword [esp + 0x88]
mov dword [esp + 0x18], edx
call fcn.006222e0
mov eax, dword [esp + 0x1c]
nop
mov ecx, dword [esp + 0x150]
mov edx, dword [ecx + 0xb04]
mov ebx, dword [ecx + 0xb00]
mov ebp, dword [esp + 0xa0]
cmp ebp, edx
jae 0x5fd86a
mov dword [esp + 0x9c], eax
movss xmm0, dword [ebx + ebp*4]
movss xmm1, dword [esp + 0x54]
addss xmm0, xmm1
movss dword [esp + 0x74], xmm0
mov edx, dword [esp + 0x84]
lea ebx, [edx + 1]
mov esi, dword [esp + 0x78]
jmp 0x5fd690
mov eax, dword [esp + 0xa4]
mov ebx, dword [esp + 0x128]
mov edi, dword [esp + 0xd0]
mov ecx, edx
mov edx, esi
mov esi, dword [esp + 0x50]
jmp 0x5fd0b1
mov ecx, dword [esp + 0xa0]
inc ecx
mov ebx, dword [esp + 0x12c]
mov edi, dword [esp + 0x140]
mov edx, dword [esp + 0x88]
mov ebx, dword [esp + 0x90]
mov ebp, dword [esp + 0x12c]
mov edi, dword [esp + 0xd0]
mov dword [esp + 0x78], esi
mov dword [esp + 0xa0], ecx
mov ecx, dword [esp + 0x140]
mov esi, dword [esp + 0x154]
mov edi, dword [esp + 0xa0]
cmp ecx, edi
jbe 0x5fd08c
mov edx, dword [esp + 0x148]
cmp edx, edi
jbe 0x5fd662
mov dword [esp + 0x98], eax
mov eax, dword [esp + 0x144]
lea ecx, [eax + edi*8]
mov edx, dword [ecx]
mov dword [esp + 0xbc], edx
mov ecx, dword [ecx + 4]
mov dword [esp + 0xd4], edx
mov dword [esp + 0xd8], ecx
mov word [esp + 0x34], 0
mov dword [esp + 0x68], 0
lea ecx, [edx + 0xf]
mov ebx, dword [ebp + 0x30]
mov esi, dword [ebp + 0x2c]
mov dword [esp], ecx
mov dword [esp + 4], ebx
mov dword [esp + 8], esi
lea ecx, [esp + 0x34]
mov dword [esp + 0xc], ecx
lea ecx, [esp + 0x68]
mov dword [esp + 0x10], ecx
call fcn.0062e070
movzx eax, word [esp + 0x34]
nop
movzx ecx, ax
and ecx, 0x3ff
mov edx, dword [esp + 0x150]
mov ebx, dword [edx + 0xb04]
mov ebp, dword [edx + 0xb00]
cmp ebx, ecx
jbe 0x5fd659
movzx eax, ax
shr eax, 0xa
movss xmm0, dword [ebp + ecx*4]
movss dword [esp + 0x3c], xmm0
mov dword [esp], eax
call fcn.00456a70
movsd xmm0, qword [esp + 4]
cvtsd2ss xmm0, xmm0
movss xmm1, dword [esp + 0x54]
addss xmm0, xmm1
movss xmm2, dword [esp + 0x3c]
addss xmm0, xmm2
nop
mov eax, dword [esp + 0xd8]
shr eax, 5
mov ecx, dword [esp + 0x98]
cmp ecx, eax
jae 0x5fd447
mov edx, dword [esp + 0x50]
mov ebx, dword [esp + 0xbc]
cmp edx, ebx
jae 0x5fd43b
mov ebp, dword [esp + 0x4c]
jmp 0x5fd443
mov ebp, dword [esp + 0x4c]
cmp ebp, eax
jae 0x5fd456
mov ecx, eax
jmp 0x5fd45f
mov edx, dword [esp + 0x50]
mov ebx, dword [esp + 0xbc]
mov ebp, dword [esp + 0x4c]
mov ecx, eax
mov eax, dword [esp + 0x98]
movss dword [esp + 0x70], xmm0
mov dword [esp + 0xb8], ecx
mov esi, dword [esp + 0x78]
jmp 0x5fd497
lea edi, [ecx + 1]
mov ecx, dword [esp + 0xb8]
mov edx, dword [esp + 0x50]
mov ebx, dword [esp + 0xbc]
mov ebp, dword [esp + 0x4c]
movss xmm0, xmm1
movss xmm1, dword [esp + 0x54]
mov eax, edi
cmp eax, ecx
ja 0x5fd2e2
mov dword [esp + 0xb4], eax
mov dword [esp + 0xb0], esi
cmp edx, ebx
jae 0x5fd4d3
mov edi, dword [esp + 0xd8]
mov dword [esp + 0xac], edi
and edi, 0x1f
test edi, edi
jne 0x5fd4d5
nop
mov edi, dword [esp + 0xac]
shr edi, 5
jmp 0x5fd4d5
mov edi, eax
mov dword [esp + 0x8c], edi
mov dword [esp], edi
call fcn.00612ba0
movzx eax, word [esp + 4]
movzx ecx, ax
shr ecx, 3
movzx edx, word [esp + 0x32]
movzx ebx, dx
shr ebx, 3
lea ebx, [ebx + ebx*2]
add ecx, ebx
mov ebx, ecx
shl ecx, 1
cmp ecx, 0x20
sbb ebp, ebp
nop
mov esi, eax
and eax, 7
and edx, 7
shl edx, 3
or eax, edx
shl ebx, 6
mov edx, 0x520d40
shr edx, cl
and ebp, edx
and ebp, 0xc0
lea ecx, [ebx + ebp + 0x40]
movzx eax, ax
or eax, ecx
movzx ecx, si
mov edx, dword [0x7074cc]
mov ebx, dword [0x7074c8]
cmp edx, ecx
jbe 0x5fd650
nop
mov edx, dword [ebx + ecx*4]
movzx eax, ax
cmp eax, 0x2c0
jae 0x5fd646
mov ecx, dword [esp + 0x150]
movss xmm0, dword [ecx + eax*4]
movss dword [esp + 0x38], xmm0
mov dword [esp], edx
call fcn.00456a70
movsd xmm0, qword [esp + 4]
cvtsd2ss xmm0, xmm0
movss xmm1, dword [esp + 0x70]
addss xmm0, xmm1
movss xmm2, dword [esp + 0x38]
addss xmm0, xmm2
mov eax, dword [esp + 0x118]
mov ecx, dword [esp + 0xb4]
lea edx, [ecx + eax]
mov ebx, dword [esp + 0x15c]
cmp ebx, edx
jbe 0x5fd63d
lea edx, [edx + edx*2]
mov ebp, dword [esp + 0x158]
lea esi, [ebp + edx*8 + 0xc]
movss xmm2, dword [esi]
ucomiss xmm2, xmm0
jbe 0x5fd623
nop
lea edi, [ebp + edx*8]
mov ebx, dword [esp + 0x8c]
sub ecx, ebx
lea ebx, [ecx + 9]
shl ebx, 0x19
mov ecx, esi
mov esi, dword [esp + 0xb4]
or ebx, esi
mov dword [edi], ebx
lea ebx, [ebp + edx*8 + 4]
mov edi, dword [esp + 0xbc]
mov dword [ebx], edi
lea edx, [ebp + edx*8 + 8]
mov ebx, dword [esp + 0xc8]
mov dword [edx], ebx
movss dword [ecx], xmm0
mov edx, dword [esp + 0xb0]
cmp esi, edx
jbe 0x5fd61a
mov ecx, esi
jmp 0x5fd472
mov ecx, esi
mov esi, edx
jmp 0x5fd472
mov ebx, dword [esp + 0xc8]
mov edi, dword [esp + 0xbc]
mov esi, dword [esp + 0xb0]
jmp 0x5fd472
mov eax, edx
mov ecx, ebx
call fcn.00456b50
mov ecx, 0x2c0
call fcn.00456b40
mov eax, ecx
mov ecx, edx
call fcn.00456b40
mov eax, ecx
mov ecx, ebx
call fcn.00456b50
mov eax, edi
mov ecx, edx
call fcn.00456b50
mov esi, edi
lea edi, [edx + 1]
mov eax, dword [esp + 0x9c]
mov ecx, dword [esp + 0x150]
mov ebp, esi
movss xmm0, dword [esp + 0x74]
movss xmm1, dword [esp + 0x54]
mov esi, ebx
mov ebx, edi
cmp ebx, eax
ja 0x5fd2c0
mov dword [esp + 0x60], ebx
mov dword [esp + 0xa8], esi
mov dword [esp], ebx
call fcn.00612ba0
movzx eax, word [esp + 4]
mov ecx, eax
and eax, 7
movzx edx, word [esp + 0x32]
mov ebx, edx
and edx, 7
shl edx, 3
or eax, edx
mov edx, dword [esp + 0xa0]
test edx, edx
jne 0x5fd6e6
cmp bx, 8
jae 0x5fd6e6
cmp cx, 0x10
jae 0x5fd6e6
cmp cx, 8
jb 0x5fd72c
or eax, 0x40
jmp 0x5fd72c
mov word [esp + 0x36], cx
movzx ebp, cx
shr ebp, 3
movzx esi, bx
shr esi, 3
lea esi, [esi + esi*2]
add ebp, esi
mov esi, ebp
shl ebp, 1
cmp ebp, 0x20
sbb edi, edi
shl esi, 6
mov ecx, ebp
mov ebx, 0x520d40
shr ebx, cl
and edi, ebx
and edi, 0xc0
lea ebx, [esi + edi + 0x40]
movzx eax, ax
or eax, ebx
movzx ecx, word [esp + 0x36]
movzx ebx, word [esp + 0x32]
cmp ax, 0x80
jae 0x5fd73a
movss xmm0, dword [esp + 0x54]
jmp 0x5fd740
movss xmm0, dword [esp + 0x74]
movzx ebp, cx
mov ecx, dword [0x7074cc]
mov esi, dword [0x7074c8]
cmp ecx, ebp
jbe 0x5fd863
nop
mov ebp, dword [esi + ebp*4]
movzx eax, ax
cmp eax, 0x2c0
jae 0x5fd859
movss dword [esp + 0x64], xmm0
mov ecx, dword [esp + 0x150]
movss xmm0, dword [ecx + eax*4]
movss dword [esp + 0x40], xmm0
mov dword [esp], ebp
call fcn.00456a70
movsd xmm0, qword [esp + 4]
cvtsd2ss xmm0, xmm0
movss xmm1, dword [esp + 0x64]
addss xmm1, xmm0
movss xmm0, dword [esp + 0x40]
addss xmm1, xmm0
mov eax, dword [esp + 0x118]
mov ecx, dword [esp + 0x60]
lea edx, [ecx + eax]
mov ebx, dword [esp + 0x15c]
cmp ebx, edx
jbe 0x5fd850
lea edx, [edx + edx*2]
mov ebp, dword [esp + 0x158]
lea esi, [ebp + edx*8 + 0xc]
movss xmm0, dword [esi]
ucomiss xmm0, xmm1
jbe 0x5fd830
lea edi, [ebp + edx*8]
or ecx, 0x12000000
mov dword [edi], ecx
lea edi, [ebp + edx*8 + 4]
mov ecx, ebx
mov ebx, dword [esp + 0xc4]
mov dword [edi], ebx
mov edi, dword [esp + 0xa0]
lea ebx, [edi + 1]
lea edx, [ebp + edx*8 + 8]
shl ebx, 0x1b
mov ebp, dword [esp + 0xc8]
or ebx, ebp
mov dword [edx], ebx
movss dword [esi], xmm1
mov edx, dword [esp + 0x60]
mov ebx, dword [esp + 0xa8]
cmp edx, ebx
jb 0x5fd66b
mov ebx, edx
jmp 0x5fd66b
mov ecx, ebx
mov edx, dword [esp + 0x60]
mov ebp, dword [esp + 0xc8]
mov edi, dword [esp + 0xa0]
mov ebx, dword [esp + 0xa8]
jmp 0x5fd66b
mov eax, edx
mov ecx, ebx
call fcn.00456b50
mov ecx, 0x2c0
call fcn.00456b40
mov eax, ebp
call fcn.00456b40
mov eax, ebp
mov ecx, edx
call fcn.00456b50
mov eax, edi
mov ecx, ebx
call fcn.00456bb0
mov eax, edx
mov ecx, ebp
call fcn.00456bb0
mov eax, edx
mov ecx, ebp
call fcn.00456b50
mov eax, esi
mov ecx, ebx
call fcn.00456b50
mov eax, ebx
mov ecx, edi
call fcn.00456b50
mov eax, edx
mov ecx, 4
call fcn.00456b50
mov eax, ebx
mov ecx, edx
call fcn.00456b50
mov eax, ebp
mov ecx, edi
call fcn.00456b50
mov eax, ebx
mov ecx, ebp
call fcn.00456b40
mov eax, ebx
call fcn.00456b50
mov eax, edx
mov ecx, ebp
call fcn.00456b50
mov eax, edi
mov ecx, ebp
call fcn.00456b50
nop
call fcn.00455690
jmp fcn.005fcc60