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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x1c
push ebx
mov ebx, dword [ebp + 8]
push esi
push edi
push 0x80
lea edi, [ebx + 0x752]
mov dword [ebp - 0x14], ecx
push 0
push edi
call fcn.0058f850
mov esi, 0x50
add esp, 0xc
mov dword [ebp - 0xc], esi
lea ecx, [ecx]
push esi
push ebx
mov ecx, 0x6d5568
call fcn.004da7b0
mov esi, eax
mov dword [ebp - 0x1c], esi
test esi, esi
je 0x56632f
cmp dword [esi], 0
je 0x56632f
movzx ecx, word [esi + 4]
push ecx
mov ecx, 0x6d5568
call fcn.004da770
mov ebx, eax
mov dword [ebp - 0x18], ebx
test ebx, ebx
je 0x566327
mov eax, dword [ebp + 8]
movzx edx, word [ebx + 0x66]
movss xmm1, dword [0x5bf6f0]
movss dword [ebp - 4], xmm1
movzx ecx, word [eax + 0x436]
sub edx, ecx
test edx, edx
jle 0x5654af
mov al, byte [eax + 0x551]
test al, al
je 0x56548e
movzx eax, al
sub edx, eax
test edx, edx
jns 0x565496
xor edx, edx
jmp 0x5654a1
cmp edx, 0xd
mov eax, 0xd
cmovg edx, eax
movss xmm1, dword [edx*4 + 0x603bbc]
movss dword [ebp - 4], xmm1
movzx eax, word [ebx + 0x28]
mov ecx, 0x80a
cmp ax, cx
je 0x565528
mov ecx, 0x80f
cmp ax, cx
je 0x565528
movzx eax, word [ebx + 0x7a]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
cvttss2si eax, xmm0
add word [edi + 8], ax
movzx eax, word [ebx + 0x7c]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
cvttss2si eax, xmm0
add word [edi + 0xa], ax
movzx eax, word [ebx + 0x7e]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
cvttss2si eax, xmm0
add word [edi + 0xc], ax
movzx eax, word [ebx + 0x80]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
cvttss2si eax, xmm0
add word [edi + 0xe], ax
jmp 0x5655a7
movzx eax, word [ebx + 0x7a]
movss xmm2, dword [0x5c017c]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
mulss xmm0, xmm2
addss xmm0, dword [edi + 0x10]
movss dword [edi + 0x10], xmm0
movzx eax, word [ebx + 0x7c]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
mulss xmm0, xmm2
addss xmm0, dword [edi + 0x14]
movss dword [edi + 0x14], xmm0
movzx eax, word [ebx + 0x7e]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
mulss xmm0, xmm2
addss xmm0, dword [edi + 0x18]
movss dword [edi + 0x18], xmm0
movzx eax, word [ebx + 0x80]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
mulss xmm0, xmm2
addss xmm0, dword [edi + 0x1c]
movss dword [edi + 0x1c], xmm0
movzx eax, word [ebx + 0x9c]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
call fcn.00590630
add dword [edi + 0x34], eax
movss xmm0, dword [ebx + 0x84]
movss xmm1, dword [ebp - 4]
mulss xmm0, xmm1
addss xmm0, dword [edi + 0x38]
movss dword [edi + 0x38], xmm0
movss xmm0, dword [ebx + 0x88]
mulss xmm0, xmm1
addss xmm0, dword [edi + 0x3c]
movss dword [edi + 0x3c], xmm0
movss xmm0, dword [ebx + 0x8c]
mulss xmm0, xmm1
addss xmm0, dword [edi + 0x40]
movss dword [edi + 0x40], xmm0
movss xmm0, dword [ebx + 0x90]
mulss xmm0, xmm1
addss xmm0, dword [edi + 0x44]
movss dword [edi + 0x44], xmm0
movss xmm0, dword [ebx + 0x94]
mulss xmm0, xmm1
addss xmm0, dword [edi + 0x48]
movss dword [edi + 0x48], xmm0
movss xmm0, dword [ebx + 0x98]
mulss xmm0, xmm1
addss xmm0, dword [edi + 0x4c]
movss dword [edi + 0x4c], xmm0
movss xmm0, dword [ebx + 0x4a]
mulss xmm0, xmm1
addss xmm0, dword [edi + 0x50]
movss dword [edi + 0x50], xmm0
movss xmm0, dword [ebx + 0x4e]
mulss xmm0, xmm1
addss xmm0, dword [edi + 0x54]
movss dword [edi + 0x54], xmm0
movss xmm0, dword [ebx + 0x52]
mulss xmm0, xmm1
addss xmm0, dword [edi + 0x58]
movss dword [edi + 0x58], xmm0
movss xmm0, dword [ebx + 0x56]
mulss xmm0, xmm1
addss xmm0, dword [edi + 0x5c]
movss dword [edi + 0x5c], xmm0
movss xmm0, dword [ebx + 0x5a]
mulss xmm0, xmm1
addss xmm0, dword [edi + 0x60]
movss dword [edi + 0x60], xmm0
movss xmm0, dword [ebx + 0x5e]
mulss xmm0, xmm1
addss xmm0, dword [edi + 0x64]
movss dword [edi + 0x64], xmm0
movzx eax, word [ebx + 0x38]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
cvttss2si eax, xmm0
add word [edi], ax
movzx eax, word [ebx + 0x3a]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
cvttss2si eax, xmm0
add word [edi + 2], ax
movzx eax, word [ebx + 0x3c]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
cvttss2si eax, xmm0
add word [edi + 4], ax
movzx eax, word [ebx + 0x3e]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
cvttss2si eax, xmm0
add word [edi + 6], ax
mov eax, dword [ebx + 0x40]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x5bf700]
cvtpd2ps xmm0, xmm0
mulss xmm0, xmm1
call fcn.00590630
add dword [edi + 0x20], eax
mov eax, dword [ebx + 0x44]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x5bf700]
cvtpd2ps xmm0, xmm0
mulss xmm0, dword [ebp - 4]
call fcn.00590630
add dword [edi + 0x24], eax
movzx eax, word [ebx + 0x48]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [ebp - 4]
call fcn.00590630
add dword [edi + 0x28], eax
mov ecx, 0x6d5568
movss xmm0, dword [ebx + 0xca]
movss xmm1, dword [ebp - 4]
movss xmm2, dword [0x5c0028]
mulss xmm0, xmm1
mulss xmm0, xmm2
addss xmm0, dword [edi + 0x70]
movss dword [edi + 0x70], xmm0
movss xmm0, dword [ebx + 0xce]
mulss xmm0, xmm1
mulss xmm0, xmm2
addss xmm0, dword [edi + 0x74]
movss dword [edi + 0x74], xmm0
movss xmm0, dword [ebx + 0xc2]
mulss xmm0, xmm1
mulss xmm0, xmm2
addss xmm0, dword [edi + 0x68]
movss dword [edi + 0x68], xmm0
movss xmm0, dword [ebx + 0xd2]
mulss xmm0, xmm1
mulss xmm0, xmm2
addss xmm0, dword [edi + 0x78]
movss dword [edi + 0x78], xmm0
movss xmm0, dword [ebx + 0xd6]
mulss xmm0, xmm1
mulss xmm0, xmm2
addss xmm0, dword [edi + 0x7c]
movss dword [edi + 0x7c], xmm0
movss xmm0, dword [ebx + 0xc6]
mulss xmm0, xmm1
mulss xmm0, xmm2
addss xmm0, dword [edi + 0x6c]
movss dword [edi + 0x6c], xmm0
push dword [esi + 8]
movzx eax, word [esi + 4]
push eax
call fcn.004db560
test eax, eax
je 0x565ae2
push dword [esi + 8]
mov ecx, 0x6d5568
call fcn.004da7f0
mov ecx, eax
mov dword [ebp - 0x10], ecx
test ecx, ecx
je 0x565ae2
mov eax, dword [ebp + 8]
movss xmm0, dword [ebp - 4]
movaps xmm1, xmm0
movss dword [ebp - 8], xmm1
mov al, byte [eax + 0x552]
test al, al
je 0x565890
movzx eax, al
movd xmm1, eax
cvtdq2ps xmm1, xmm1
divss xmm1, dword [0x5c0028]
addss xmm1, xmm0
movss dword [ebp - 8], xmm1
movzx eax, word [ecx + 0x32]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
cvttss2si eax, xmm0
add word [edi + 8], ax
movzx eax, word [ecx + 0x32]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
cvttss2si eax, xmm0
add word [edi + 0xa], ax
movzx eax, word [ecx + 0x32]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
cvttss2si eax, xmm0
add word [edi + 0xc], ax
movzx eax, word [ecx + 0x32]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
cvttss2si eax, xmm0
add word [edi + 0xe], ax
mov eax, dword [ecx + 0x4e]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x5bf700]
cvtpd2ps xmm0, xmm0
mulss xmm0, xmm1
call fcn.00590630
add dword [edi + 0x34], eax
mov ecx, dword [ebp - 0x10]
movss xmm1, dword [ebp - 8]
movss xmm0, dword [ecx + 0x36]
mulss xmm0, xmm1
addss xmm0, dword [edi + 0x38]
movss dword [edi + 0x38], xmm0
movss xmm0, dword [ecx + 0x3a]
mulss xmm0, xmm1
addss xmm0, dword [edi + 0x3c]
movss dword [edi + 0x3c], xmm0
movss xmm0, dword [ecx + 0x3e]
mulss xmm0, xmm1
addss xmm0, dword [edi + 0x40]
movss dword [edi + 0x40], xmm0
movss xmm0, dword [ecx + 0x42]
mulss xmm0, xmm1
addss xmm0, dword [edi + 0x44]
movss dword [edi + 0x44], xmm0
movss xmm0, dword [ecx + 0x46]
mulss xmm0, xmm1
addss xmm0, dword [edi + 0x48]
movss dword [edi + 0x48], xmm0
movss xmm0, dword [ecx + 0x4a]
mulss xmm0, xmm1
addss xmm0, dword [edi + 0x4c]
movss dword [edi + 0x4c], xmm0
movss xmm0, dword [ecx + 0x1a]
mulss xmm0, xmm1
addss xmm0, dword [edi + 0x50]
movss dword [edi + 0x50], xmm0
movss xmm0, dword [ecx + 0x1e]
mulss xmm0, xmm1
addss xmm0, dword [edi + 0x54]
movss dword [edi + 0x54], xmm0
movss xmm0, dword [ecx + 0x22]
mulss xmm0, xmm1
addss xmm0, dword [edi + 0x58]
movss dword [edi + 0x58], xmm0
movss xmm0, dword [ecx + 0x26]
mulss xmm0, xmm1
addss xmm0, dword [edi + 0x5c]
movss dword [edi + 0x5c], xmm0
movss xmm0, dword [ecx + 0x2a]
mulss xmm0, xmm1
addss xmm0, dword [edi + 0x60]
movss dword [edi + 0x60], xmm0
movss xmm0, dword [ecx + 0x2e]
mulss xmm0, xmm1
addss xmm0, dword [edi + 0x64]
movss dword [edi + 0x64], xmm0
movzx eax, word [ecx + 8]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
cvttss2si eax, xmm0
add word [edi], ax
movzx eax, word [ecx + 0xa]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
cvttss2si eax, xmm0
add word [edi + 2], ax
movzx eax, word [ecx + 0xc]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
cvttss2si eax, xmm0
add word [edi + 4], ax
movzx eax, word [ecx + 0xe]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
cvttss2si eax, xmm0
add word [edi + 6], ax
mov eax, dword [ecx + 0x10]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x5bf700]
cvtpd2ps xmm0, xmm0
mulss xmm0, xmm1
call fcn.00590630
add dword [edi + 0x20], eax
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x16]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x5bf700]
cvtpd2ps xmm0, xmm0
mulss xmm0, dword [ebp - 8]
call fcn.00590630
add dword [edi + 0x24], eax
mov eax, dword [ebp - 0x10]
movzx eax, word [eax + 0x14]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [ebp - 8]
call fcn.00590630
add dword [edi + 0x28], eax
mov eax, dword [ebp - 0x10]
movzx eax, word [eax + 0x34]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [ebp - 8]
call fcn.00590630
add dword [edi + 0x2c], eax
push dword [esi + 0xc]
movzx eax, word [esi + 4]
mov ecx, 0x6d5568
push eax
call fcn.004db560
test eax, eax
je 0x565d42
push dword [esi + 0xc]
mov ecx, 0x6d5568
call fcn.004dab10
mov edx, eax
mov dword [ebp - 0x10], edx
test edx, edx
je 0x565d42
movzx ecx, word [edx + 0x1a]
movss xmm1, dword [ebp - 4]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
cvttss2si ecx, xmm0
add word [edi + 8], cx
movzx eax, word [edx + 0x1a]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
cvttss2si eax, xmm0
add word [edi + 0xa], ax
movzx eax, word [edx + 0x1a]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
cvttss2si eax, xmm0
add word [edi + 0xc], ax
movzx eax, word [edx + 0x1a]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
cvttss2si eax, xmm0
add word [edi + 0xe], ax
movzx eax, word [edx + 0x1c]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
call fcn.00590630
add dword [edi + 0x34], eax
mov ecx, dword [ebp - 0x10]
movss xmm1, dword [ebp - 4]
movss xmm0, dword [ecx + 0x36]
mulss xmm0, xmm1
addss xmm0, dword [edi + 0x38]
movss dword [edi + 0x38], xmm0
movss xmm0, dword [ecx + 0x3a]
mulss xmm0, xmm1
addss xmm0, dword [edi + 0x3c]
movss dword [edi + 0x3c], xmm0
movss xmm0, dword [ecx + 0x3e]
mulss xmm0, xmm1
addss xmm0, dword [edi + 0x40]
movss dword [edi + 0x40], xmm0
movss xmm0, dword [ecx + 0x42]
mulss xmm0, xmm1
addss xmm0, dword [edi + 0x44]
movss dword [edi + 0x44], xmm0
movss xmm0, dword [ecx + 0x46]
mulss xmm0, xmm1
addss xmm0, dword [edi + 0x48]
movss dword [edi + 0x48], xmm0
movss xmm0, dword [ecx + 0x4a]
mulss xmm0, xmm1
addss xmm0, dword [edi + 0x4c]
movss dword [edi + 0x4c], xmm0
movss xmm0, dword [ecx + 0x1e]
mulss xmm0, xmm1
addss xmm0, dword [edi + 0x50]
movss dword [edi + 0x50], xmm0
movss xmm0, dword [ecx + 0x22]
mulss xmm0, xmm1
addss xmm0, dword [edi + 0x54]
movss dword [edi + 0x54], xmm0
movss xmm0, dword [ecx + 0x26]
mulss xmm0, xmm1
addss xmm0, dword [edi + 0x58]
movss dword [edi + 0x58], xmm0
movss xmm0, dword [ecx + 0x2a]
mulss xmm0, xmm1
addss xmm0, dword [edi + 0x5c]
movss dword [edi + 0x5c], xmm0
movss xmm0, dword [ecx + 0x2e]
mulss xmm0, xmm1
addss xmm0, dword [edi + 0x60]
movss dword [edi + 0x60], xmm0
movss xmm0, dword [ecx + 0x32]
mulss xmm0, xmm1
addss xmm0, dword [edi + 0x64]
movss dword [edi + 0x64], xmm0
movzx eax, word [ecx + 8]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
cvttss2si eax, xmm0
add word [edi], ax
movzx eax, word [ecx + 0xa]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
cvttss2si eax, xmm0
add word [edi + 2], ax
movzx eax, word [ecx + 0xc]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
cvttss2si eax, xmm0
add word [edi + 4], ax
movzx eax, word [ecx + 0xe]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
cvttss2si eax, xmm0
add word [edi + 6], ax
mov eax, dword [ecx + 0x10]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x5bf700]
cvtpd2ps xmm0, xmm0
mulss xmm0, xmm1
call fcn.00590630
add dword [edi + 0x20], eax
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x16]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x5bf700]
cvtpd2ps xmm0, xmm0
mulss xmm0, dword [ebp - 4]
call fcn.00590630
add dword [edi + 0x24], eax
mov eax, dword [ebp - 0x10]
movzx eax, word [eax + 0x14]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [ebp - 4]
call fcn.00590630
add dword [edi + 0x28], eax
movzx eax, word [ebx + 0x28]
mov ecx, 0x6d5568
push eax
movzx eax, word [esi + 4]
push eax
call fcn.004db610
test eax, eax
je 0x566034
push dword [esi + 0x10]
mov ecx, 0x6d5568
call fcn.004dab50
mov dword [ebp - 0x10], eax
test eax, eax
je 0x566034
mov esi, dword [ebp - 0x14]
add esi, 4
mov ecx, esi
mov dword [ebp - 8], esi
call fcn.005125d0
mov ebx, dword [ebp - 0x10]
cmp dword [ebx + 8], 1
jbe 0x565dae
movzx eax, word [ebx + 8]
mov ecx, 0x6d5568
push eax
call fcn.004da770
test eax, eax
je 0x565dae
movzx ecx, word [eax]
push ecx
push eax
mov ecx, esi
call fcn.004a8200
cmp dword [ebx + 0xc], 1
jbe 0x565dd3
movzx eax, word [ebx + 0xc]
mov ecx, 0x6d5568
push eax
call fcn.004da770
test eax, eax
je 0x565dd3
movzx ecx, word [eax]
push ecx
push eax
mov ecx, esi
call fcn.004a8200
cmp dword [ebx + 0x10], 1
jbe 0x565df8
movzx eax, word [ebx + 0x10]
mov ecx, 0x6d5568
push eax
call fcn.004da770
test eax, eax
je 0x565df8
movzx ecx, word [eax]
push ecx
push eax
mov ecx, esi
call fcn.004a8200
cmp dword [ebx + 0x14], 1
jbe 0x565e1d
movzx eax, word [ebx + 0x14]
mov ecx, 0x6d5568
push eax
call fcn.004da770
test eax, eax
je 0x565e1d
movzx ecx, word [eax]
push ecx
push eax
mov ecx, esi
call fcn.004a8200
cmp dword [ebx + 0x18], 1
jbe 0x565e42
movzx eax, word [ebx + 0x18]
mov ecx, 0x6d5568
push eax
call fcn.004da770
test eax, eax
je 0x565e42
movzx ecx, word [eax]
push ecx
push eax
mov ecx, esi
call fcn.004a8200
mov eax, dword [esi + 0xc]
mov dword [esi + 0x14], eax
jmp 0x565e50
mov ecx, dword [esi + 0x14]
test ecx, ecx
je 0x56602e
mov eax, dword [ecx + 8]
mov ebx, dword [eax + 4]
mov eax, dword [ecx]
mov dword [esi + 0x14], eax
test ebx, ebx
je 0x56602e
mov eax, dword [ebx + 0x40]
add dword [edi + 0x20], eax
mov esi, dword [edi + 0x20]
mov eax, esi
shr eax, 0x1f
movd xmm0, esi
cvtdq2pd xmm0, xmm0
addsd xmm0, qword [eax*8 + 0x5bf700]
cvtpd2ps xmm0, xmm0
mulss xmm0, dword [ebx + 0xac]
call fcn.00590630
add eax, esi
movss xmm1, dword [ebp - 4]
mov dword [edi + 0x20], eax
movzx eax, word [ebx + 0x38]
add word [edi], ax
movzx eax, word [ebx + 0x3a]
add word [edi + 2], ax
movzx eax, word [ebx + 0x3c]
add word [edi + 4], ax
movzx eax, word [ebx + 0x3e]
add word [edi + 6], ax
movzx eax, word [ebx + 0x9c]
add dword [edi + 0x34], eax
movzx eax, word [ebx + 0x7a]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
cvttss2si eax, xmm0
add word [edi + 8], ax
movzx eax, word [ebx + 0x7c]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
cvttss2si eax, xmm0
add word [edi + 0xa], ax
movzx eax, word [ebx + 0x7e]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
cvttss2si eax, xmm0
add word [edi + 0xc], ax
movzx eax, word [ebx + 0x80]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
cvttss2si eax, xmm0
add word [edi + 0xe], ax
movss xmm0, dword [ebx + 0x84]
mulss xmm0, xmm1
addss xmm0, dword [edi + 0x38]
movss dword [edi + 0x38], xmm0
movss xmm0, dword [ebx + 0x88]
mulss xmm0, xmm1
addss xmm0, dword [edi + 0x3c]
movss dword [edi + 0x3c], xmm0
movss xmm0, dword [ebx + 0x8c]
mulss xmm0, xmm1
addss xmm0, dword [edi + 0x40]
movss dword [edi + 0x40], xmm0
movss xmm0, dword [ebx + 0x90]
mulss xmm0, xmm1
addss xmm0, dword [edi + 0x44]
movss dword [edi + 0x44], xmm0
movss xmm0, dword [ebx + 0x94]
mulss xmm0, xmm1
addss xmm0, dword [edi + 0x48]
movss dword [edi + 0x48], xmm0
movss xmm0, dword [ebx + 0x98]
mulss xmm0, xmm1
addss xmm0, dword [edi + 0x4c]
movss dword [edi + 0x4c], xmm0
movss xmm0, dword [ebx + 0x4a]
mulss xmm0, xmm1
addss xmm0, dword [edi + 0x50]
movss dword [edi + 0x50], xmm0
movss xmm0, dword [ebx + 0x4e]
mulss xmm0, xmm1
addss xmm0, dword [edi + 0x54]
movss dword [edi + 0x54], xmm0
movss xmm0, dword [ebx + 0x52]
mulss xmm0, xmm1
mov esi, dword [ebp - 8]
addss xmm0, dword [edi + 0x58]
movss dword [edi + 0x58], xmm0
movss xmm0, dword [ebx + 0x56]
mulss xmm0, xmm1
addss xmm0, dword [edi + 0x5c]
movss dword [edi + 0x5c], xmm0
movss xmm0, dword [ebx + 0x5a]
mulss xmm0, xmm1
addss xmm0, dword [edi + 0x60]
movss dword [edi + 0x60], xmm0
movss xmm0, dword [ebx + 0x5e]
mulss xmm0, xmm1
addss xmm0, dword [edi + 0x64]
movss dword [edi + 0x64], xmm0
jmp 0x565e50
mov ebx, dword [ebp - 0x18]
mov esi, dword [ebp - 0x1c]
cmp dword [esi + 0x1c], 0
jbe 0x5660f1
mov ecx, 0x6d5568
call fcn.004da760
mov dword [ebp - 0x1c], eax
test eax, eax
je 0x5660f1
mov eax, dword [esi + 0x1c]
xor edx, edx
mov esi, dword [ebp - 0x1c]
div dword [esi]
mov ecx, dword [esi + 4]
imul ecx, eax
movd xmm0, eax
cvtdq2pd xmm0, xmm0
add dword [edi + 0x20], ecx
mov ecx, dword [esi + 8]
imul ecx, eax
add dword [edi + 0x24], ecx
mov ecx, dword [esi + 0xc]
imul ecx, eax
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x5bf700]
add dword [edi + 0x28], ecx
cvtpd2ps xmm1, xmm0
movss xmm0, dword [esi + 0x10]
mulss xmm0, xmm1
movss dword [ebp - 0x10], xmm1
call fcn.00590630
add word [edi], ax
movss xmm0, dword [esi + 0x14]
mulss xmm0, dword [ebp - 0x10]
call fcn.00590630
add word [edi + 2], ax
movss xmm0, dword [esi + 0x18]
mulss xmm0, dword [ebp - 0x10]
call fcn.00590630
add word [edi + 4], ax
movss xmm0, dword [esi + 0x1c]
mulss xmm0, dword [ebp - 0x10]
call fcn.00590630
add word [edi + 6], ax
movss xmm0, dword [esi + 0x20]
mulss xmm0, dword [ebp - 0x10]
call fcn.00590630
add dword [edi + 0x34], eax
mov esi, dword [ebp - 0xc]
cmp si, 0x51
jne 0x56625d
movzx eax, word [ebx + 0x36]
mov ecx, 0x6d5568
push eax
call fcn.004daf60
mov edx, eax
test edx, edx
je 0x56625d
movzx ecx, word [edx + 0x14]
add word [edi + 8], cx
movzx ecx, word [edx + 0x18]
add word [edi + 0xa], cx
movzx eax, word [edx + 0x1c]
add word [edi + 0xc], ax
movzx eax, word [edx + 0x20]
add word [edi + 0xe], ax
mov eax, dword [edx + 0x24]
add dword [edi + 0x2c], eax
movss xmm0, dword [edx + 0x28]
movss xmm1, dword [ebp - 4]
mulss xmm0, xmm1
addss xmm0, dword [edi + 0x38]
movss dword [edi + 0x38], xmm0
movss xmm0, dword [edx + 0x2c]
mulss xmm0, xmm1
addss xmm0, dword [edi + 0x3c]
movss dword [edi + 0x3c], xmm0
movss xmm0, dword [edx + 0x30]
mulss xmm0, xmm1
addss xmm0, dword [edi + 0x40]
movss dword [edi + 0x40], xmm0
movss xmm0, dword [edx + 0x34]
mulss xmm0, xmm1
addss xmm0, dword [edi + 0x44]
movss dword [edi + 0x44], xmm0
movss xmm0, dword [edx + 0x38]
mulss xmm0, xmm1
addss xmm0, dword [edi + 0x48]
movss dword [edi + 0x48], xmm0
movss xmm0, dword [edx + 0x3c]
mulss xmm0, xmm1
addss xmm0, dword [edi + 0x4c]
movss dword [edi + 0x4c], xmm0
movss xmm0, dword [edx + 0x40]
mulss xmm0, xmm1
addss xmm0, dword [edi + 0x50]
movss dword [edi + 0x50], xmm0
movss xmm0, dword [edx + 0x44]
mulss xmm0, xmm1
addss xmm0, dword [edi + 0x54]
movss dword [edi + 0x54], xmm0
movss xmm0, dword [edx + 0x48]
mulss xmm0, xmm1
addss xmm0, dword [edi + 0x58]
movss dword [edi + 0x58], xmm0
movss xmm0, dword [edx + 0x4c]
mulss xmm0, xmm1
addss xmm0, dword [edi + 0x5c]
movss dword [edi + 0x5c], xmm0
movss xmm0, dword [edx + 0x50]
mulss xmm0, xmm1
addss xmm0, dword [edi + 0x60]
movss dword [edi + 0x60], xmm0
movss xmm0, dword [edx + 0x54]
mulss xmm0, xmm1
addss xmm0, dword [edi + 0x64]
movss dword [edi + 0x64], xmm0
movzx eax, word [edx + 0x58]
add word [edi], ax
movzx eax, word [edx + 0x5c]
add word [edi + 2], ax
movzx eax, word [edx + 0x60]
add word [edi + 4], ax
movzx eax, word [edx + 0x64]
add word [edi + 6], ax
mov eax, dword [edx + 0x68]
add dword [edi + 0x20], eax
mov eax, dword [edx + 0x6c]
add dword [edi + 0x24], eax
mov eax, dword [edx + 0x70]
add dword [edi + 0x28], eax
mov eax, dword [edx + 0x74]
add dword [edi + 0x34], eax
mov ebx, dword [ebp + 8]
inc esi
mov dword [ebp - 0xc], esi
cmp si, 0x5e
jb 0x565420
movss xmm0, dword [edi + 0x50]
movss xmm1, dword [0x5c0028]
comiss xmm0, xmm1
jbe 0x566287
mov dword [edi + 0x50], 0x42c80000
movss xmm0, dword [edi + 0x54]
comiss xmm0, xmm1
jbe 0x566298
mov dword [edi + 0x54], 0x42c80000
movss xmm0, dword [edi + 0x58]
comiss xmm0, xmm1
jbe 0x5662a9
mov dword [edi + 0x58], 0x42c80000
movss xmm0, dword [edi + 0x5c]
comiss xmm0, xmm1
jbe 0x5662ba
mov dword [edi + 0x5c], 0x42c80000
movss xmm0, dword [edi + 0x60]
comiss xmm0, xmm1
jbe 0x5662cb
mov dword [edi + 0x60], 0x42c80000
movss xmm0, dword [edi + 0x64]
comiss xmm0, xmm1
jbe 0x5662dc
mov dword [edi + 0x64], 0x42c80000
cmp dword [0x5fc5d8], 0
je 0x5662fa
mov ax, word [0x5fc5dc]
add word [edi], ax
add word [edi + 2], ax
add word [edi + 4], ax
add word [edi + 6], ax
push edi
mov ecx, 0x6d9b08
call fcn.0053aad0
mov esi, dword [ebp - 0x14]
mov ecx, esi
call fcn.00566340
mov ecx, esi
call fcn.005668e0
push ebx
mov ecx, esi
call fcn.00565220
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
mov esi, dword [ebp - 0xc]
jmp 0x56625d
mov esi, dword [ebp - 0xc]
jmp 0x566260