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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
push esi
push edi
push ebx
sub esp, 0x164
mov esi, eax
mov eax, dword [0x58b99c]
mov edi, edx
shl eax, 3
xor edx, edx
mov dword [esp + 0x3c], eax
mov ebx, ecx
mov eax, dword [0x58b75c]
test eax, eax
mov dword [0x58b7b4], edx
cmovle eax, edx
test eax, eax
jle 0x44eb19
mov edx, ebx
and edx, 0xf
mov dword [esp], edx
je 0x44ea22
test byte [esp], 7
jne 0x44f933
mov dword [esp], 1
mov edx, dword [esp]
lea ecx, [edx + 8]
cmp eax, ecx
jl 0x44f933
mov ecx, eax
sub ecx, edx
and ecx, 7
neg ecx
add ecx, eax
test edx, edx
jbe 0x44ea5d
mov dword [esp + 0x30], edi
xor edx, edx
mov edi, dword [esp]
pxor xmm0, xmm0
movsd qword [ebx + edx*8], xmm0
inc edx
cmp edx, edi
jb 0x44ea4c
mov dword [esp], edi
mov edi, dword [esp + 0x30]
mov edx, dword [esp]
pxor xmm0, xmm0
movaps xmmword [ebx + edx*8], xmm0
movaps xmmword [ebx + edx*8 + 0x10], xmm0
movaps xmmword [ebx + edx*8 + 0x20], xmm0
movaps xmmword [ebx + edx*8 + 0x30], xmm0
add edx, 8
cmp edx, ecx
jb 0x44ea64
cmp ecx, eax
jae 0x44ea90
pxor xmm0, xmm0
movsd qword [ebx + ecx*8], xmm0
inc ecx
cmp ecx, eax
jb 0x44ea86
mov edx, edi
and edx, 0xf
mov dword [esp], edx
je 0x44eaab
test byte [esp], 7
jne 0x44f92c
mov dword [esp], 1
mov edx, dword [esp]
lea ecx, [edx + 8]
cmp eax, ecx
jl 0x44f92c
mov ecx, eax
sub ecx, edx
and ecx, 7
neg ecx
add ecx, eax
test edx, edx
jbe 0x44eae6
mov dword [esp + 0x38], ebx
xor edx, edx
mov ebx, dword [esp]
pxor xmm0, xmm0
movsd qword [edi + edx*8], xmm0
inc edx
cmp edx, ebx
jb 0x44ead5
mov dword [esp], ebx
mov ebx, dword [esp + 0x38]
mov edx, dword [esp]
pxor xmm0, xmm0
movaps xmmword [edi + edx*8], xmm0
movaps xmmword [edi + edx*8 + 0x10], xmm0
movaps xmmword [edi + edx*8 + 0x20], xmm0
movaps xmmword [edi + edx*8 + 0x30], xmm0
add edx, 8
cmp edx, ecx
jb 0x44eaed
cmp ecx, eax
jae 0x44eb19
pxor xmm0, xmm0
movsd qword [edi + ecx*8], xmm0
inc ecx
cmp ecx, eax
jb 0x44eb0f
mov dword [esp + 0x5c], esi
mov dword [esp + 0x30], edi
mov dword [esp + 0x38], ebx
cmp dword [0x58b7b4], 0
jne 0x44ec35
movsd xmm0, qword [0x58b940]
pxor xmm1, xmm1
mov ebx, dword [0x58b938]
ucomisd xmm0, xmm1
jp 0x44eb4c
je 0x44eb67
test bl, 1
je 0x44eb5e
cmp dword [0x58b9bc], 1
je 0x44f93a
and ebx, 0xfffffffe
mov dword [0x58b938], ebx
movsd qword [0x58b7a0], xmm1
test bl, 1
movsd qword [0x58b7a8], xmm1
jne 0x44eb85
push dword [esp + 0x5c]
call fcn.004d74b0
cmp dword [0x58b930], 0
jg 0x44f996
cmp dword [0x58b934], 0
jg 0x44f97d
call fcn.0041ae10
fstp st(0)
call fcn.0041adc0
fstp dword [esp + 0x54]
mov eax, dword [0x58b7bc]
cmp eax, dword [0x58b75c]
je 0x44f8de
mov eax, dword [0x587118]
xor edx, edx
mov dword [0x58b7b4], 1
mov dword [0x58b7b8], eax
mov dword [0x58b7cc], edx
mov dword [0x58b7b0], edx
cmp dword [0x58b770], 0
jne 0x44ebf5
mov dword [0x58b784], 0x3e8
push 0x58b99c
push 0x58b788
push 0x58b764
push 0x58b7bc
push dword [ebp + 0x24]
push dword [ebp + 0x30]
mov dword [0x58b778], 0
call fcn.004345c0
movss xmm0, dword [0x58b7b8]
lea edi, [esp + 0x60]
movss dword [esp + 0x48], xmm0
jmp 0x44eefa
mov ecx, dword [0x58b7bc]
mov ebx, ecx
mov edx, ecx
test ecx, ecx
jle 0x44ec6c
mov esi, dword [esp + 0x30]
xor eax, eax
movsd xmm0, qword [0x58b7a0]
lea edi, [esi + ecx*8]
xor esi, esi
movsd xmm1, qword [edi + esi*8 - 8]
comisd xmm1, xmm0
jbe 0x44ec6c
inc eax
lea ecx, [esi + edx - 1]
dec esi
cmp eax, ebx
jb 0x44ec56
mov eax, dword [0x58b934]
cmp eax, ecx
jl 0x44f9cf
jne 0x44ecaa
mov ebx, dword [0x58b7c4]
lea esi, [esp + 0x24]
mov ecx, dword [ebp + 0x1c]
mov edx, dword [ebp + 0x18]
mov eax, dword [0x58b778]
sub eax, ebx
lea edi, [ecx + ebx*8]
mov dword [esp + 0x24], eax
lea eax, [edx + ebx*8]
push esi
push dword [esp + 0x34]
push edi
push eax
call fcn.004439a0
jmp 0x44ecb3
push dword [esp + 0x30]
call fcn.00443bd0
fstp qword [esp + 0x150]
movsd xmm1, qword [esp + 0x150]
movsd xmm0, qword [0x58b7a0]
movsd qword [esp], xmm0
ucomisd xmm1, xmm0
jp 0x44ecdc
je 0x44f294
movsd xmm2, qword [0x58b7a8]
lea edi, [esp + 0x60]
movsd qword [0x58b7a0], xmm1
xor esi, esi
mov dword [0x58b930], 1
subsd xmm2, xmm1
mulsd xmm2, qword [0x55f818]
movsd xmm1, qword [0x55f820]
movsd xmm0, qword [0x55f828]
movsd qword [esp + 0x10], xmm2
mov ebx, dword [esp + 0x5c]
push ebx
call fcn.004d74b0
cmp dword [0x58b930], 0
jle 0x44f9c6
movsd xmm1, qword [0x58b7a0]
inc esi
movsd xmm0, qword [0x55f820]
addsd xmm1, qword [esp + 0x10]
movsd qword [esp + 0x18], xmm1
comisd xmm0, xmm1
jb 0x44ed70
movsd xmm0, qword [0x55f828]
movsd qword [0x58b7a0], xmm0
movsd qword [esp + 0x18], xmm0
jmp 0x44ed7e
movsd xmm0, qword [esp + 0x18]
movsd qword [0x58b7a0], xmm0
movsd xmm0, qword [0x58b7a8]
lea eax, [esp + 0x90]
mov dword [esp + 0x60], 0
movsd qword [esp + 8], xmm0
movsd qword [esp + 0x90], xmm0
push 0x20
push 0x5769fc
push eax
push 0x55f6a4
push 0x8384ff00
push 6
push edi
call fcn.004e3ae0
movsd xmm0, qword [esp + 0x34]
lea eax, [esp + 0xb4]
movsd qword [esp + 0xb4], xmm0
push eax
push 0x55f6ac
push edi
call fcn.004e5330
movsd xmm0, qword [esp + 0x38]
lea eax, [esp + 0xc8]
movsd qword [esp + 0xc8], xmm0
push eax
push 0x55f6b4
push edi
call fcn.004e5330
mov dword [esp + 0x174], esi
lea eax, [esp + 0x174]
push eax
push 0x55f6bc
push edi
call fcn.004e5330
movsd xmm0, qword [esp + 0x48]
lea eax, [esp + 0xe8]
mov dword [esp + 0xa0], 0
movsd qword [esp + 0xe8], xmm0
push 0x20
push 0x5769fc
push eax
push 0x55f6c4
push 0x8384ff00
push 0x3c
push edi
call fcn.004e3ae0
movsd xmm0, qword [esp + 0x74]
lea eax, [esp + 0x10c]
movsd qword [esp + 0x10c], xmm0
push eax
push 0x55f6cc
push edi
call fcn.004e5330
movsd xmm0, qword [esp + 0x78]
lea eax, [esp + 0x120]
movsd qword [esp + 0x120], xmm0
push eax
push 0x55f6d4
push edi
call fcn.004e5330
add esp, 0x74
mov dword [esp + 0x148], esi
lea eax, [esp + 0x148]
push eax
push 0x55f6dc
push edi
call fcn.004e5330
add esp, 0xc
cmp esi, 0xa
jl 0x44ed22
mov dword [esp + 0x5c], ebx
je 0x44f9af
call fcn.0041ae10
fstp st(0)
call fcn.0041adc0
fstp dword [esp + 0x54]
movss xmm0, dword [0x58b7b8]
addss xmm0, dword [esp + 0x54]
movss dword [esp + 0x48], xmm0
movss dword [0x58b7b8], xmm0
xor eax, eax
mov dword [esp + 0x60], eax
push 0x20
push 0x576b4c
push eax
push 0x55f6e4
push 0x8384ff00
push 0x3c
push edi
call fcn.004e3ae0
mov ebx, dword [0x58b934]
lea eax, [esp + 0xdc]
add ebx, dword [0x58b930]
mov dword [esp + 0x7c], 0
mov dword [esp + 0xdc], ebx
push 0x20
push 0x576afc
push eax
push 0x55f6e8
push 0x8384ff00
push 0x3c
push edi
call fcn.004e3ae0
movsd xmm0, qword [0x58b7a0]
lea eax, [esp + 0xb8]
movsd qword [esp + 0x38], xmm0
movsd qword [esp + 0xb8], xmm0
push eax
push 0x55f6f0
push edi
call fcn.004e5330
movss xmm0, dword [esp + 0x98]
lea eax, [esp + 0x10c]
movss dword [esp + 0x10c], xmm0
push eax
push 0x55f6f8
push edi
call fcn.004e5330
movss xmm0, dword [0x58713c]
lea eax, [esp + 0x120]
movss xmm1, dword [0x587120]
movss dword [esp + 0xa0], xmm0
subss xmm0, xmm1
movss dword [esp + 0x94], xmm1
movss dword [esp + 0x9c], xmm0
movss dword [esp + 0x120], xmm0
push eax
push 0x55f700
push edi
call fcn.004e5330
xor eax, eax
mov dword [esp + 0xbc], eax
push 0x20
push 0x576b4c
push eax
push 0x55f708
push 0x8384ff00
push 6
push edi
call fcn.004e3ae0
add esp, 0x78
mov dword [esp + 0x60], 0
lea eax, [esp + 0xd8]
mov dword [esp + 0xd8], ebx
push 0x20
push 0x576afc
push eax
push 0x55f70c
push 0x8384ff00
push 6
push edi
call fcn.004e3ae0
movsd xmm0, qword [esp + 0x1c]
lea eax, [esp + 0xa4]
movsd qword [esp + 0xa4], xmm0
push eax
push 0x55f714
push edi
call fcn.004e5330
movss xmm0, dword [esp + 0x7c]
lea eax, [esp + 0x108]
movss dword [esp + 0x108], xmm0
push eax
push 0x55f71c
push edi
call fcn.004e5330
movss xmm0, dword [esp + 0x80]
lea eax, [esp + 0x11c]
movss dword [esp + 0x11c], xmm0
push eax
push 0x55f724
push edi
call fcn.004e5330
mov ebx, dword [0x58b7b4]
lea eax, [esp + 0x130]
mov dword [esp + 0xa0], 0
mov dword [esp + 0x130], ebx
push 0x20
push 0x576958
push eax
push 0x55f72c
push 0x8384ff00
push 0x3c
push edi
call fcn.004e3ae0
movss xmm0, dword [esp + 0xa8]
lea eax, [esp + 0x154]
movss dword [esp + 0x154], xmm0
push eax
push 0x55f734
push edi
call fcn.004e5330
movss xmm0, dword [0x58712c]
lea eax, [esp + 0x168]
subss xmm0, dword [0x587124]
movss dword [esp + 0xa8], xmm0
movss dword [esp + 0x168], xmm0
push eax
push 0x55f73c
push edi
call fcn.004e5330
add esp, 0x74
movss xmm0, dword [esp + 0x48]
lea eax, [esp + 0x108]
mov dword [esp + 0x60], 0
movss dword [esp + 0x108], xmm0
push 0x20
push 0x576900
push eax
push 0x55f744
push 0x8384ff00
push 0x3c
push edi
call fcn.004e3ae0
movss xmm0, dword [esp + 0x6c]
lea eax, [esp + 0x12c]
subss xmm0, dword [esp + 0x64]
subss xmm0, dword [esp + 0x60]
movss dword [esp + 0x6c], xmm0
movss dword [esp + 0x12c], xmm0
push eax
push 0x55f74c
push edi
call fcn.004e5330
mov dword [esp + 0x88], 0
lea eax, [esp + 0x140]
mov dword [esp + 0x140], ebx
push 0x20
push 0x576958
push eax
push 0x55f754
push 0x8384ff00
push 6
push edi
call fcn.004e3ae0
movss xmm0, dword [esp + 0x90]
lea eax, [esp + 0x164]
movss dword [esp + 0x164], xmm0
push eax
push 0x55f75c
push edi
call fcn.004e5330
movss xmm0, dword [esp + 0x90]
lea eax, [esp + 0x178]
movss dword [esp + 0x178], xmm0
push eax
push 0x55f764
push edi
call fcn.004e5330
movss xmm0, dword [esp + 0xa4]
lea eax, [esp + 0x18c]
mov dword [esp + 0xbc], 0
movss dword [esp + 0x18c], xmm0
push 0x20
push 0x576900
push eax
push 0x55f76c
push 0x8384ff00
push 6
push edi
call fcn.004e3ae0
add esp, 0x78
movss xmm0, dword [esp + 0x50]
lea eax, [esp + 0x138]
movss dword [esp + 0x138], xmm0
push eax
push 0x55f774
push edi
call fcn.004e5330
add esp, 0xc
movsd xmm0, qword [esp]
mov edi, dword [0x58b784]
test edi, edi
movsd qword [0x58b7a8], xmm0
jle 0x44eb25
mov esi, 1
mov dword [esp + 0x28], esi
mov ecx, dword [0x58b7bc]
mov edx, dword [0x58b7b0]
mov dword [esp + 0x20], edi
mov esi, dword [ebp + 0x20]
mov eax, dword [0x58b788]
inc edx
sub eax, ecx
mov ebx, dword [0x58b77c]
cmp ebx, eax
mov dword [0x58b7b0], edx
jle 0x44f31f
cmp eax, 0xa
jle 0x44f30e
mov ecx, 2
cmp dword [0x58b764], 2
cdq
cmovle ecx, dword [0x58b764]
idiv ecx
imul eax, ecx
mov dword [0x58b764], ecx
mov dword [0x58b778], eax
jmp 0x44f325
mov dword [0x58b778], eax
mov dword [0x58b764], 1
jmp 0x44f325
mov dword [0x58b778], ebx
mov eax, dword [0x58b780]
lea edx, [esp + 0x2c]
imul eax, ebx
mov dword [esp + 0x2c], eax
push edx
push esi
call fcn.0041a1b0
add esp, 0xffffffd4
mov ebx, dword [ebp + 0x2c]
mov edi, dword [ebp + 0x28]
mov eax, dword [ebp + 0x24]
mov edx, dword [ebp + 0x18]
mov ecx, dword [ebp + 0x1c]
mov dword [esp + 0xc], ebx
mov ebx, 0x55f77c
mov dword [esp + 0x10], edi
mov dword [esp + 0x14], eax
mov eax, esi
mov dword [esp + 0x18], edx
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
mov edx, dword [ebp + 0x34]
mov ecx, dword [ebp + 0x30]
mov dword [esp + 0x28], 0x57c698
call fcn.0044f9fc
mov ebx, dword [0x58b780]
mov ecx, dword [0x58b77c]
mov dword [0x57c7e4], ebx
imul ebx, ecx
mov eax, dword [0x58b768]
mov dword [0x57c7ec], eax
lea eax, [esp + 0x34]
mov dword [esp + 0x34], ebx
push eax
mov edi, dword [0x58b99c]
mov edx, dword [0x58b75c]
push esi
mov dword [0x57c7e0], ecx
mov dword [0x57c7e8], edi
mov dword [0x57c7f0], edx
shl edi, 3
call fcn.0041a1b0
mov ebx, dword [0x58b764]
mov ecx, dword [0x58b778]
pxor xmm0, xmm0
movsd qword [0x57c690], xmm0
mov dword [esp + 0x58], ebx
mov dword [0x57c7f4], 0
lea eax, [ecx + ebx]
lea eax, [eax + ebx - 1]
cdq
idiv ebx
test eax, eax
jle 0x44f923
mov dword [esp + 0xcc], edi
mov edx, ebx
mov esi, dword [ebp + 0x30]
mov ebx, eax
mov edi, dword [esp + 0x5c]
mov dword [0x57c7f8], 1
mov eax, 1
test edx, edx
jle 0x44f495
mov dword [esp + 0x5c], edi
mov dword [esp + 0xc4], ebx
mov ebx, edx
mov edi, dword [esp + 0xcc]
imul eax, edi
add eax, esi
push 0x58b99c
sub eax, edi
push eax
push eax
call fcn.00430b80
fstp qword [esp + 0x150]
movsd xmm1, qword [esp + 0x150]
movsd xmm0, qword [0x57c690]
mov eax, dword [0x57c7f8]
addsd xmm0, xmm1
inc eax
movsd qword [0x57c690], xmm0
cmp eax, ebx
mov dword [0x57c7f8], eax
jle 0x44f444
mov ebx, dword [esp + 0xc4]
mov edi, dword [esp + 0x5c]
push edi
push 0x58b764
push esi
push 0x55f780
call fcn.0042b360
cmp dword [edi], 0
jle 0x44f4b1
mov dword [edi], 0
add esp, 0xffffffd4
mov edx, dword [ebp + 0x2c]
mov ecx, dword [ebp + 0x24]
mov eax, dword [ebp + 0x20]
mov dword [esp + 0xc], edx
mov edx, dword [ebp + 0x28]
mov dword [esp + 0x10], edx
mov edx, dword [ebp + 0x18]
mov dword [esp + 0x14], ecx
mov ecx, esi
mov dword [esp + 0x18], edx
mov edx, dword [ebp + 0x1c]
mov dword [esp + 0x1c], edx
mov dword [esp + 0x20], 0x55f784
mov dword [esp + 0x24], 0x57c7f4
mov edx, dword [ebp + 0x34]
mov dword [esp + 0x28], 0x57c7fc
call fcn.0044f9fc
mov ecx, dword [0x57c7f4]
cmp dword [0x57c7fc], 1
je 0x44f901
dec ebx
add ecx, dword [esp + 0x58]
mov dword [0x57c7f4], ecx
test ebx, ebx
jle 0x44f529
mov edx, dword [0x58b764]
jmp 0x44f41d
mov dword [esp + 0x5c], edi
mov esi, dword [ebp + 0x20]
mov ecx, dword [0x58b778]
movsd xmm1, qword [0x57c690]
cvtsi2sd xmm0, ecx
divsd xmm1, xmm0
sqrtsd xmm1, xmm1
add esp, 0xffffffcc
mov ebx, dword [esp + 0x6c]
mov edi, dword [ebp + 0x14]
mov eax, dword [ebp + 0x18]
mov edx, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], edi
mov ebx, dword [ebp + 0x34]
mov edi, dword [ebp + 0x30]
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], edx
mov eax, dword [ebp + 0x2c]
mov edx, dword [ebp + 0x28]
mov dword [esp + 0x1c], esi
mov dword [esp + 0x20], ecx
mov dword [esp + 0x24], ebx
mov dword [esp + 0x28], edi
mov dword [esp + 0x2c], eax
mov dword [esp + 0x30], edx
mov edx, 0x57c690
mov eax, dword [esp + 0x90]
mov ecx, dword [esp + 0x64]
movsd qword [0x57c690], xmm1
call fcn.00450a9c
mov eax, dword [0x58b75c]
mov ecx, dword [0x58b7bc]
cmp ecx, eax
jge 0x44f8ed
mov ebx, dword [ebp + 0x38]
mov edx, dword [0x58b7b0]
cmp edx, dword [ebx]
je 0x44f8ed
cmp dword [0x58b76c], 0
je 0x44f5f3
mov eax, dword [esp + 0x28]
inc eax
mov dword [esp + 0x28], eax
cmp eax, dword [esp + 0x20]
jle 0x44f2cb
jmp 0x44eb25
mov dword [esp], ecx
mov esi, dword [esp + 0x5c]
mov edi, dword [esp + 0x30]
mov ebx, dword [esp + 0x38]
mov edx, dword [0x58b760]
sub eax, edx
cmp eax, ecx
mov dword [esp + 4], edx
lea edx, [esp + 0x60]
cmovl ecx, eax
mov eax, dword [0x58b7b4]
mov dword [esp], ecx
mov dword [esp + 0x60], 0
mov dword [esp + 0x18], eax
mov dword [esp + 0x20], eax
lea eax, [esp + 0x20]
push 0x20
push 0x576958
push eax
push 0x55f788
push 0x8384ff00
push 0x3c
push edx
mov dword [0x58b75c], ecx
call fcn.004e3ae0
movss xmm0, dword [0x58713c]
lea eax, [esp + 0x44]
subss xmm0, dword [0x587120]
movss dword [esp + 0x30], xmm0
movss dword [esp + 0x44], xmm0
push eax
push 0x55f790
lea edx, [esp + 0x84]
push edx
call fcn.004e5330
movss xmm0, dword [0x58712c]
lea eax, [esp + 0x58]
subss xmm0, dword [0x587124]
movss dword [esp + 0x38], xmm0
movss dword [esp + 0x58], xmm0
push eax
push 0x55f798
lea edx, [esp + 0x90]
push edx
call fcn.004e5330
movss xmm0, dword [0x58b7b8]
lea edx, [esp + 0x6c]
mov eax, dword [0x58b7b8]
mov dword [esp + 0x94], 0
movss dword [esp + 0x50], xmm0
mov dword [esp + 0x40], eax
mov dword [esp + 0x6c], eax
push 0x20
push 0x576900
push edx
push 0x55f7a0
push 0x8384ff00
push 0x3c
lea ecx, [esp + 0xac]
push ecx
call fcn.004e3ae0
movss xmm0, dword [esp + 0x64]
lea eax, [esp + 0x90]
subss xmm0, dword [esp + 0x6c]
movss dword [esp + 0x58], xmm0
movss dword [esp + 0x90], xmm0
push eax
push 0x55f7a8
lea edx, [esp + 0xb8]
push edx
call fcn.004e5330
mov eax, dword [esp + 0x74]
lea edx, [esp + 0xa4]
mov dword [esp + 0xbc], 0
mov dword [esp + 0xa4], eax
push 0x20
push 0x576958
push edx
push 0x55f7b0
push 0x8384ff00
push 6
lea ecx, [esp + 0xd4]
push ecx
call fcn.004e3ae0
add esp, 0x78
movss xmm0, dword [esp + 0x14]
lea eax, [esp + 0x18]
movss dword [esp + 0x18], xmm0
push eax
push 0x55f7b8
lea edx, [esp + 0x68]
push edx
call fcn.004e5330
movss xmm0, dword [esp + 0x1c]
lea eax, [esp + 0x5c]
movss dword [esp + 0x5c], xmm0
push eax
push 0x55f7c0
lea edx, [esp + 0x74]
push edx
call fcn.004e5330
mov eax, dword [esp + 0x24]
lea edx, [esp + 0x28]
mov dword [esp + 0x78], 0
mov dword [esp + 0x28], eax
push 0x20
push 0x576900
push edx
push 0x55f7c8
push 0x8384ff00
push 6
lea ecx, [esp + 0x90]
push ecx
call fcn.004e3ae0
movss xmm0, dword [esp + 0x3c]
lea eax, [esp + 0x8c]
movss dword [esp + 0x8c], xmm0
push eax
push 0x55f7d0
lea edx, [esp + 0x9c]
push edx
call fcn.004e5330
add esp, 0x40
mov ecx, dword [0x58b77c]
mov eax, dword [esp]
mov dword [esp + 0xc], ecx
mov dword [esp + 8], ecx
mov dword [0x57c69c], 1
lea eax, [eax + ecx - 1]
cdq
idiv ecx
mov edx, 1
test eax, eax
jle 0x44f8c2
mov dword [esp + 0x5c], esi
mov ecx, 1
mov esi, eax
mov eax, dword [esp + 8]
lea ecx, [eax + ecx - 1]
mov eax, dword [0x58b75c]
cmp ecx, eax
cmovl eax, ecx
mov dword [0x57c6a0], eax
mov ecx, dword [esp + 0x3c]
imul edx, ecx
push dword [esp + 0x5c]
push 0x57c6a0
push 0x57c69c
push ebx
add edx, dword [ebp + 0x28]
push edi
push dword [ebp + 0x2c]
sub edx, ecx
push edx
push 0x55f7d8
call fcn.0040e4c0
mov ecx, dword [0x57c69c]
dec esi
add ecx, dword [esp + 0xc]
mov dword [0x57c69c], ecx
mov edx, ecx
test esi, esi
jle 0x44f8b0
mov eax, dword [0x58b77c]
jmp 0x44f855
mov eax, dword [0x58b75c]
mov edx, dword [0x58b760]
mov dword [esp], eax
mov dword [esp + 4], edx
mov eax, dword [esp]
lea edx, [esp + 8]
sub eax, dword [esp + 4]
mov dword [esp + 8], eax
push 0x58b7c0
push edx
push ebx
push edi
call fcn.00434ea0
add esp, 0x164
pop ebx
pop edi
pop esi
mov esp, ebp
pop ebp
ret 0x34
mov dword [esp], ecx
mov esi, dword [esp + 0x5c]
mov edi, dword [esp + 0x30]
mov ebx, dword [esp + 0x38]
jmp 0x44f602
test ecx, ecx
jle 0x44f50f
mov dword [esp + 0x5c], edi
mov esi, dword [ebp + 0x20]
mov dword [0x58b778], ecx
movsd xmm1, qword [0x57c690]
jmp 0x44f53e
pxor xmm1, xmm1
jmp 0x44f53e
xor ecx, ecx
jmp 0x44eb07
xor ecx, ecx
jmp 0x44ea7e
mov eax, dword [0x58b9c4]
mov edx, dword [0x58b924]
mov ecx, dword [0x58b928]
movsd qword [0x58b940], xmm1
mov dword [0x58b898], 0x39
mov dword [0x58b89c], eax
mov dword [0x58b8a0], 2
mov dword [0x58b930], edx
mov dword [0x58b934], ecx
jmp 0x44eb67
mov esi, dword [esp + 0x5c]
mov dword [esi], 0xffffffdd
add esp, 0x164
pop ebx
pop edi
pop esi
mov esp, ebp
pop ebp
ret 0x34
mov esi, dword [esp + 0x5c]
mov dword [esi], 0xffffffde
add esp, 0x164
pop ebx
pop edi
pop esi
mov esp, ebp
pop ebp
ret 0x34
mov esi, ebx
mov dword [esi], 0xffffffda
add esp, 0x164
pop ebx
pop edi
pop esi
mov esp, ebp
pop ebp
ret 0x34
mov dword [esp + 0x5c], ebx
jmp 0x44eece
mov esi, dword [esp + 0x5c]
mov dword [esi], 0xffffffe4
add esp, 0x164
pop ebx
pop edi
pop esi
mov esp, ebp
pop ebp
ret 0x34