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

Disassembly:
push esi
push edi
push ebx
push ebp
sub esp, 0x1e8
movsd xmm0, qword [0x67df18]
mulsd xmm0, qword [0x76e5b0]
xorps xmm0, xmmword [0x67dcf0]
call fcn.0061dc80
mov eax, dword [0x76e2f0]
mov dword [esp + 0x18], eax
mov dword [esp + 0x168], 0
test eax, eax
jle 0x4a248c
mov eax, dword [0x6c8a6c]
mov edi, dword [0x6c8a68]
mov esi, edi
imul eax, edi
add edi, edi
mov ebp, dword [0x6c8a60]
shl ebp, 2
mov edx, dword [0x6c8a40]
sub esi, ebp
sub edx, eax
sub edi, ebp
mov ebp, dword [0x6c8a38]
add esi, edx
mov dword [esp + 0xc], esi
add edx, edi
mov esi, dword [0x6c8a3c]
mov edi, ebp
imul esi, ebp
mov eax, dword [0x6c8a10]
sub eax, esi
mov esi, dword [0x6c8a30]
shl esi, 2
sub edi, esi
add edi, eax
mov dword [esp + 4], edi
lea edi, [ebp + ebp]
sub edi, esi
lea ebp, [ebp + ebp*2]
add edi, eax
sub ebp, esi
mov dword [esp + 0x10], edi
add eax, ebp
mov ecx, dword [0x6c5c70]
mov edi, dword [0x6c5c74]
imul edi, ecx
mov dword [esp + 8], ecx
mov ecx, dword [0x6c5c48]
mov ebx, dword [0x6c8ac0]
sub ecx, edi
mov edi, dword [0x6c5c68]
shl ebx, 3
shl edi, 3
neg ebx
mov dword [esp], 1
neg edi
mov dword [esp + 0x168], 0
add ecx, edi
mov dword [esp + 0x14], eax
add ebx, dword [0x6c8aa0]
mov ebp, dword [esp + 4]
mov esi, dword [esp + 0x168]
mov eax, dword [esp]
mov dword [esp + 0x1c], edx
mov edx, dword [esp + 0x1c]
mov edx, dword [edx + eax*4]
cmp edx, 3
jne 0x4a3b57
mov edx, dword [esp + 0xc]
mov edi, dword [ebp + eax*4]
mov edx, dword [edx + eax*4]
test edi, edi
jle 0x4a23df
mov esi, dword [esp + 8]
imul esi, edx
lea edi, [esi + edi*8]
movsd xmm1, qword [edi + ecx]
jmp 0x4a23e3
pxor xmm1, xmm1
mov esi, dword [esp + 0x10]
movsd xmm3, qword [0x67df20]
movsd xmm2, qword [0x67df28]
maxsd xmm3, xmm1
minsd xmm2, xmm1
mov edi, dword [esi + eax*4]
test edi, edi
jle 0x4a2416
mov esi, dword [esp + 8]
imul esi, edx
add esi, ecx
movsd xmm1, qword [esi + edi*8]
jmp 0x4a241a
pxor xmm1, xmm1
mov esi, dword [esp + 0x14]
maxsd xmm3, xmm1
minsd xmm2, xmm1
mov esi, dword [esi + eax*4]
test esi, esi
jle 0x4a243b
imul edx, dword [esp + 8]
add edx, ecx
movsd xmm1, qword [edx + esi*8]
jmp 0x4a243f
pxor xmm1, xmm1
movsd xmm4, qword [ebx + eax*8]
mov esi, 4
mulsd xmm4, xmm0
maxsd xmm3, xmm1
minsd xmm2, xmm1
movsd xmm1, qword [0x67ddb8]
subsd xmm3, xmm2
subsd xmm1, xmm0
mulsd xmm1, qword [0x67df40]
mulsd xmm1, xmm3
addsd xmm4, xmm1
movsd qword [ebx + eax*8], xmm4
inc eax
cmp eax, dword [esp + 0x18]
jle 0x4a23af
mov dword [esp + 0x168], esi
mov eax, dword [0x76e2f8]
mov dword [esp + 0x1bc], eax
test eax, eax
jle 0x4a3b24
mov eax, dword [0x81ecf8]
mov dword [esp + 0x1b8], eax
pxor xmm5, xmm5
mov ecx, dword [0x6c89dc]
mov eax, dword [0x6c4850]
mov dword [esp + 0x1cc], ecx
mov dword [esp + 0xb0], eax
mov ecx, dword [0x6c4d58]
mov eax, dword [0x6c8994]
mov dword [esp + 0xa8], ecx
mov dword [esp + 0x1c8], eax
mov ecx, dword [0x6c5f18]
mov eax, dword [0x6c5b28]
mov dword [esp + 0xf4], ecx
mov dword [esp + 0xa0], eax
mov ecx, dword [0x6c8934]
mov eax, dword [0x6c5a74]
mov edx, dword [0x6c89d0]
mov ebx, dword [0x76e300]
mov dword [esp + 0x1e4], ecx
mov dword [esp + 0xe0], eax
mov eax, dword [0x6c8a68]
mov ecx, dword [0x6c8a6c]
imul ecx, eax
mov dword [esp + 0x138], edx
mov edx, dword [0x76e308]
mov dword [esp + 0x174], ebx
mov ebx, dword [0x6c4820]
mov dword [esp + 0x170], edx
mov edx, dword [0x6c5ee8]
mov dword [esp + 0xac], ebx
mov ebx, dword [0x6c8988]
mov dword [esp + 0xa4], edx
mov edx, dword [0x6c8928]
mov dword [esp + 0x134], ebx
mov ebx, dword [0x76e310]
mov dword [esp + 0x130], edx
mov edx, dword [0x6c8a40]
mov dword [esp + 0x1e0], ebx
xor ebx, ebx
sub edx, ecx
mov ecx, dword [0x6c8a60]
mov dword [esp + 0x110], ebx
mov dword [esp + 0x114], ebx
mov dword [esp + 0x18c], ebx
mov dword [esp + 0x19c], ebx
mov ebx, eax
shl ecx, 2
add eax, eax
sub ebx, ecx
sub eax, ecx
add ebx, edx
add edx, eax
mov dword [esp + 0x184], edx
mov ebp, dword [0x6c8a38]
mov edx, dword [0x6c8a3c]
imul edx, ebp
mov eax, dword [0x6c8ac0]
shl eax, 3
neg eax
mov ecx, dword [0x6c8a10]
add eax, dword [0x6c8aa0]
sub ecx, edx
mov dword [esp + 0x188], ebx
mov ebx, dword [0x6c8a30]
mov dword [esp + 0x9c], eax
mov eax, ecx
shl ebx, 2
sub eax, ebx
neg ebx
mov dword [esp + 0x178], ebp
add ebx, ebp
mov edi, dword [0x6c5c70]
add ecx, ebx
mov ebp, dword [0x6c5c74]
imul ebp, edi
mov esi, dword [0x81ec80]
mov dword [esp + 0xb4], edi
mov dword [esp + 0x98], eax
mov eax, dword [0x6c5c48]
mov edi, dword [0x6c5c68]
sub eax, ebp
shl edi, 3
mov dword [esp + 0x1b4], esi
lea esi, [esi + 1]
mov dword [esp + 0x1b0], esi
sub eax, edi
mov esi, dword [0x6c8a98]
mov dword [esp + 0x90], eax
mov ebp, esi
mov eax, dword [0x6c8a9c]
imul eax, esi
lea ebx, [esi + esi]
mov edx, dword [0x6c8a70]
mov dword [esp + 0x94], ecx
sub edx, eax
mov eax, dword [0x6c8940]
lea ecx, [esi + esi*2]
mov esi, dword [0x6c8944]
imul esi, eax
mov edi, dword [0x6c8a90]
shl edi, 3
sub ebp, edi
sub ebx, edi
sub ecx, edi
add ebp, edx
add ebx, edx
add edx, ecx
mov ecx, dword [0x6c8900]
mov edi, eax
sub ecx, esi
add eax, eax
mov esi, dword [0x6c8938]
imul esi, dword [0x6c8934]
mov dword [esp + 0x8c], ebp
sub edi, esi
mov ebp, dword [0x6c892c]
sub eax, esi
imul ebp, dword [0x6c8928]
add edi, ecx
mov esi, dword [0x6c61b0]
add ecx, eax
mov eax, dword [0x6c61b4]
mov dword [esp + 0x88], ebx
mov ebx, dword [0x6c8920]
imul eax, esi
mov dword [esp + 0x84], edx
lea edx, [ebp + ebx*4]
sub edi, edx
sub ecx, edx
mov dword [esp + 0x80], edi
lea ebx, [esi + esi*2]
mov edi, dword [0x6c6188]
mov ebp, dword [0x6c61a8]
sub edi, eax
mov dword [esp + 0x7c], ecx
mov ecx, esi
shl ebp, 2
lea eax, [esi + esi]
sub ecx, ebp
sub eax, ebp
sub ebx, ebp
add ecx, edi
add eax, edi
add edi, ebx
mov ebx, dword [0x6c71d0]
shl ebx, 2
mov dword [esp + 0x198], edi
neg ebx
mov edi, dword [0x6c71a8]
mov esi, dword [0x6c6f98]
shl edi, 2
shl esi, 2
neg edi
add ebx, dword [0x6c71b0]
neg esi
mov dword [esp + 0x190], eax
mov eax, dword [0x6c7010]
shl eax, 2
add edi, dword [0x6c7188]
neg eax
add esi, dword [0x6c6f78]
mov dword [esp + 0xcc], ebx
mov ebp, dword [0x6c6fc0]
mov ebx, dword [0x6c5a68]
shl ebp, 2
mov dword [esp + 0xc8], edi
neg ebp
mov dword [esp + 0xd4], esi
mov edi, dword [0x6c5a6c]
mov esi, dword [0x6c5a78]
imul edi, ebx
imul esi, dword [0x6c5a74]
add eax, dword [0x6c6ff0]
add ebp, dword [0x6c6fa0]
mov dword [esp + 0xd8], eax
mov eax, dword [0x6c7158]
shl eax, 2
mov dword [esp + 0xd0], ebp
lea ebp, [ebx + ebx]
mov edx, dword [0x6c7038]
neg eax
shl edx, 2
neg ebp
add eax, dword [0x6c7138]
neg edx
add ebp, edi
sub edi, ebx
add edx, dword [0x6c7018]
neg ebp
mov dword [esp + 0xc0], eax
mov eax, dword [0x6c5a40]
sub eax, esi
mov dword [esp + 0xdc], edx
add ebp, eax
mov edx, dword [0x6c5a60]
sub eax, edi
shl edx, 3
sub ebp, edx
sub eax, edx
mov dword [esp + 0xb8], ebp
mov ebp, dword [0x6c6278]
shl ebp, 2
neg ebp
add ebp, dword [0x6c6258]
mov dword [esp + 0x108], ebp
mov ebp, dword [0x6c89a0]
mov dword [esp + 0xbc], eax
mov eax, dword [0x6c89a4]
imul eax, ebp
mov esi, dword [0x6c62a0]
shl esi, 2
neg esi
mov dword [esp + 0x194], ecx
mov ecx, dword [0x6c7130]
shl ecx, 2
add esi, dword [0x6c6280]
neg ecx
mov edi, dword [0x6c6228]
shl edi, 2
mov dword [esp + 0x10c], esi
neg edi
mov esi, dword [0x6c8960]
sub esi, eax
mov ebx, dword [0x6c6200]
shl ebx, 2
add ecx, dword [0x6c7110]
neg ebx
add edi, dword [0x6c6208]
mov dword [esp + 0xc4], ecx
mov ecx, dword [0x76e308]
shr ecx, 1
mov dword [esp + 0x100], edi
mov dword [esp + 0x1c4], ecx
add ebx, dword [0x6c61e0]
mov edi, dword [0x6c8998]
mov ecx, dword [0x6c8994]
imul edi, ecx
mov dword [esp], esi
mov edx, edi
mov dword [esp + 0x104], ebx
lea ebx, [esi + ebp]
mov esi, dword [0x6c898c]
sub edx, ecx
mov eax, dword [0x6c8988]
imul esi, eax
mov ecx, esi
sub ecx, eax
mov dword [esp + 0x4c], ecx
mov dword [esp + 4], edi
mov dword [esp + 0x44], ebx
mov dword [esp + 0x1c], 1
lea ebp, [ecx + edx]
mov dword [esp + 0x68], ebp
lea eax, [ecx + edi]
mov ebp, dword [0x6c8980]
lea ecx, [ebp*4]
lea ebp, [esi + ebp*4]
mov dword [esp + 8], ebp
add edx, ebp
mov esi, ebx
sub esi, edx
add ebp, edi
mov edi, ebx
neg edx
sub edi, ebp
neg ebp
mov dword [esp + 0x78], esi
mov esi, ebx
mov dword [esp + 0x74], edi
mov edi, ebx
mov ebx, dword [esp + 0x68]
sub esi, eax
sub edi, ebx
sub esi, ecx
sub edi, ecx
neg ebx
mov dword [esp + 0x70], esi
neg eax
mov dword [esp + 0x6c], edi
mov edi, dword [0x6c89a0]
mov esi, dword [esp]
lea esi, [esi + edi*2]
mov edi, dword [0x6c5ec0]
add ebx, esi
add eax, esi
sub ebx, ecx
add edx, esi
mov dword [esp + 0x68], ebx
sub eax, ecx
mov ebx, dword [0x6c5f1c]
add ebp, esi
imul ebx, dword [0x6c5f18]
mov dword [esp + 0x60], edx
mov edx, dword [0x6c5f10]
shl edx, 2
mov dword [esp + 0x64], eax
neg edx
mov eax, dword [0x6c5ef0]
mov dword [esp + 0x5c], ebp
sub eax, ebx
mov ebp, dword [0x6c5eec]
add eax, edx
imul ebp, dword [0x6c5ee8]
mov dword [esp + 0xf0], eax
sub edi, ebp
mov eax, dword [0x6c5b2c]
imul eax, dword [0x6c5b28]
mov ebx, dword [0x6c5ee0]
mov edx, dword [0x6c8994]
shl ebx, 2
mov ebp, dword [0x6c5b20]
neg ebx
shl ebp, 3
add edi, ebx
mov ebx, dword [0x6c5b00]
neg ebp
sub ebx, eax
lea eax, [edx + edx]
add ebx, ebp
mov ebp, dword [esp + 4]
sub ebp, eax
mov dword [esp + 0x58], edi
mov edi, dword [esp + 0x4c]
mov dword [esp + 0x54], ebx
add edi, ebp
mov ebx, esi
sub ebx, edi
neg edi
mov eax, dword [esp + 0x44]
add edi, eax
sub ebx, ecx
sub edi, ecx
mov ecx, dword [esp + 8]
add ecx, ebp
sub esi, ecx
sub eax, ecx
mov dword [esp + 0x48], esi
mov esi, dword [0x76e300]
shr esi, 1
mov dword [esp + 0x1c0], esi
mov esi, dword [0x6c89dc]
mov dword [esp + 0x50], ebx
mov ebx, dword [0x6c89e0]
imul ebx, esi
mov ebp, dword [0x6c89a8]
mov ecx, dword [0x6c89d0]
sub ebp, ebx
mov ebx, dword [0x6c89d4]
imul ebx, ecx
mov edx, ebx
mov dword [esp + 0x4c], edi
mov edi, ebx
neg edx
sub edi, ecx
mov ecx, dword [0x6c89c8]
add edx, ebp
shl ecx, 2
sub edx, ecx
mov dword [esp + 0x40], edx
mov edx, ebp
sub edx, edi
mov dword [esp + 0x44], eax
mov eax, esi
sub edx, ecx
sub eax, ebx
mov dword [esp + 0x38], edx
add eax, ebp
mov edx, dword [0x6c4854]
sub eax, ecx
imul edx, dword [0x6c4850]
mov dword [esp + 0x3c], eax
lea eax, [ebp + esi]
sub eax, edi
sub eax, ecx
mov dword [esp + 0x34], eax
mov eax, dword [0x6c4828]
sub eax, edx
mov edx, dword [0x6c4848]
shl edx, 2
sub eax, edx
mov dword [esp + 0x30], eax
mov eax, dword [0x6c4824]
imul eax, dword [0x6c4820]
mov edx, dword [0x6c47f8]
sub edx, eax
mov eax, dword [0x6c4818]
shl eax, 2
sub edx, eax
mov dword [esp + 0x2c], edx
mov edx, dword [0x6c4d5c]
imul edx, dword [0x6c4d58]
mov eax, dword [0x6c4d30]
sub eax, edx
mov edx, dword [0x6c4d50]
shl edx, 3
sub eax, edx
mov dword [esp + 0x28], eax
lea eax, [esi + esi]
sub eax, ebx
add eax, ebp
sub eax, ecx
mov dword [esp + 0x24], eax
lea eax, [ebp + esi*2]
mov ebp, dword [0x6c8a08]
sub eax, edi
shl ebp, 2
sub eax, ecx
neg ebp
add ebp, dword [0x6c89e8]
mov dword [esp + 0x180], ebp
mov esi, dword [esp + 0x7c]
mov ebx, dword [esp + 0x44]
mov ebp, dword [esp + 0x60]
mov edx, dword [esp + 0x1c]
mov dword [esp + 0x20], eax
cmp edx, dword [esp + 0x1b8]
jg 0x4a2b7d
mov eax, dword [esp + 0x180]
mov ecx, dword [eax + edx*4]
jmp 0x4a2b84
mov ecx, dword [esp + 0x1b0]
cmp ecx, dword [esp + 0x1b4]
jg 0x4a3b16
mov ebx, dword [esp + 0x184]
lea eax, [ecx*4]
mov ebp, dword [esp + 0x188]
mov esi, dword [ebx + eax]
mov ebx, dword [ebp + eax]
cmp esi, 3
je 0x4a32cc
cmp esi, 1
jne 0x4a3297
mov ebp, dword [esp + 0x94]
pxor xmm1, xmm1
cmp dword [esp + 0x174], 0
mov eax, dword [ebp + eax]
jle 0x4a2d39
cmp dword [esp + 0x1c0], 0
jbe 0x4a3b39
mov ebp, dword [esp + 0x34]
xor esi, esi
mov dword [esp + 0x1a0], ebx
mov dword [esp + 0x14], ecx
lea edi, [ebp + edx*4]
mov dword [esp + 4], edi
mov edi, ebx
imul edi, dword [esp + 0xac]
mov ebp, ebx
imul ebp, dword [esp + 0xb0]
add edi, dword [esp + 0x2c]
mov dword [esp + 0xc], edi
mov edi, ebx
imul edi, dword [esp + 0xa8]
add edi, dword [esp + 0x28]
mov dword [esp + 8], edi
mov edi, dword [esp + 0x20]
add ebp, dword [esp + 0x30]
mov ecx, esi
mov ebx, dword [esp + 4]
lea edi, [edi + edx*4]
mov dword [esp + 0x11c], edi
mov dword [esp + 0x1c], edx
mov edx, dword [ebx + ecx*2]
test edx, edx
je 0x4a2c77
cmp eax, dword [ebp + edx*4]
jne 0x4a2c65
mov edi, dword [esp + 8]
addsd xmm1, qword [edi + edx*8]
jmp 0x4a2c77
mov edi, dword [esp + 0xc]
cmp eax, dword [edi + edx*4]
jne 0x4a2c77
mov edi, dword [esp + 8]
subsd xmm1, qword [edi + edx*8]
mov edx, dword [esp + 0x11c]
mov edx, dword [edx + ecx*2]
test edx, edx
je 0x4a2ca8
cmp eax, dword [ebp + edx*4]
jne 0x4a2c96
mov edi, dword [esp + 8]
addsd xmm1, qword [edi + edx*8]
jmp 0x4a2ca8
mov edi, dword [esp + 0xc]
cmp eax, dword [edi + edx*4]
jne 0x4a2ca8
mov edi, dword [esp + 8]
subsd xmm1, qword [edi + edx*8]
inc esi
add ecx, dword [esp + 0x1cc]
cmp esi, dword [esp + 0x1c0]
jb 0x4a2c4d
mov ebx, dword [esp + 0x1a0]
lea esi, [esi + esi + 1]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x1c]
lea ebp, [esi - 1]
cmp ebp, dword [esp + 0x174]
jae 0x4a2d39
imul esi, dword [esp + 0x1cc]
add esi, dword [esp + 0x38]
mov ebp, dword [esi + edx*4]
test ebp, ebp
je 0x4a2d39
mov esi, ebx
imul esi, dword [esp + 0xb0]
add esi, dword [esp + 0x30]
cmp eax, dword [esi + ebp*4]
jne 0x4a2d13
mov esi, ebx
imul esi, dword [esp + 0xa8]
add esi, dword [esp + 0x28]
addsd xmm1, qword [esi + ebp*8]
jmp 0x4a2d39
mov esi, ebx
imul esi, dword [esp + 0xac]
add esi, dword [esp + 0x2c]
cmp eax, dword [esi + ebp*4]
jne 0x4a2d39
mov esi, ebx
imul esi, dword [esp + 0xa8]
add esi, dword [esp + 0x28]
subsd xmm1, qword [esi + ebp*8]
cmp dword [esp + 0x170], 0
jle 0x4a2f6a
cmp dword [esp + 0x1c4], 0
jbe 0x4a3b2f
mov edi, dword [esp + 0x6c]
xor esi, esi
mov dword [esp + 0x18], eax
mov dword [esp + 0x1a0], ebx
mov dword [esp + 0x14], ecx
lea ebp, [edi + edx*4]
mov dword [esp + 0x120], ebp
mov ebp, dword [esp + 0x50]
mov edi, dword [esp + 0x68]
mov dword [esp + 0x1c], edx
lea ebp, [ebp + edx*4]
mov dword [esp + 0x124], ebp
mov ebp, dword [esp + 0x4c]
lea edi, [edi + edx*4]
mov dword [esp + 0x12c], edi
lea ebp, [ebp + edx*4]
mov dword [esp + 0x128], ebp
xor ebp, ebp
mov edx, dword [esp + 0x120]
mov eax, dword [esp + 0x12c]
mov edx, dword [edx + ebp*2]
mov eax, dword [eax + ebp*2]
test edx, edx
je 0x4a2e1f
test eax, eax
je 0x4a2e1f
mov ecx, dword [esp + 0xf4]
imul ecx, edx
mov ebx, dword [esp + 0x18]
lea edi, [ecx + eax*4]
mov ecx, dword [esp + 0xf0]
cmp ebx, dword [edi + ecx]
jne 0x4a2df5
imul edx, dword [esp + 0xa0]
lea eax, [edx + eax*8]
mov edx, dword [esp + 0x54]
addsd xmm1, qword [eax + edx]
jmp 0x4a2e1f
mov ecx, edx
imul ecx, dword [esp + 0xa4]
lea edi, [ecx + eax*4]
mov ecx, dword [esp + 0x58]
cmp ebx, dword [edi + ecx]
jne 0x4a2e1f
imul edx, dword [esp + 0xa0]
lea eax, [edx + eax*8]
mov edx, dword [esp + 0x54]
subsd xmm1, qword [eax + edx]
mov edx, dword [esp + 0x128]
mov eax, dword [esp + 0x124]
mov edx, dword [edx + ebp*2]
mov eax, dword [eax + ebp*2]
test edx, edx
je 0x4a2e98
test eax, eax
je 0x4a2e98
mov ecx, dword [esp + 0xf4]
imul ecx, edx
mov ebx, dword [esp + 0x18]
lea edi, [ecx + eax*4]
mov ecx, dword [esp + 0xf0]
cmp ebx, dword [edi + ecx]
jne 0x4a2e6e
imul edx, dword [esp + 0xa0]
lea eax, [edx + eax*8]
mov edx, dword [esp + 0x54]
addsd xmm1, qword [eax + edx]
jmp 0x4a2e98
mov ecx, edx
imul ecx, dword [esp + 0xa4]
lea edi, [ecx + eax*4]
mov ecx, dword [esp + 0x58]
cmp ebx, dword [edi + ecx]
jne 0x4a2e98
imul edx, dword [esp + 0xa0]
lea eax, [edx + eax*8]
mov edx, dword [esp + 0x54]
subsd xmm1, qword [eax + edx]
inc esi
add ebp, dword [esp + 0x1c8]
cmp esi, dword [esp + 0x1c4]
jb 0x4a2da6
mov eax, dword [esp + 0x18]
lea esi, [esi + esi + 1]
mov ebx, dword [esp + 0x1a0]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x1c]
lea ebp, [esi - 1]
cmp ebp, dword [esp + 0x170]
jae 0x4a2f6a
imul esi, dword [esp + 0x1c8]
mov ebp, dword [esp + 0x70]
lea edi, [ebp + esi]
add esi, dword [esp + 0x64]
mov ebp, dword [edi + edx*4]
mov esi, dword [esi + edx*4]
mov dword [esp + 0x10], esi
test ebp, ebp
je 0x4a2f6a
cmp dword [esp + 0x10], 0
je 0x4a2f6a
mov esi, dword [esp + 0xf4]
imul esi, ebp
mov edi, dword [esp + 0x10]
lea esi, [esi + edi*4]
mov edi, dword [esp + 0xf0]
cmp eax, dword [esi + edi]
jne 0x4a2f36
imul ebp, dword [esp + 0xa0]
mov esi, dword [esp + 0x10]
mov edi, dword [esp + 0x54]
lea ebp, [ebp + esi*8]
addsd xmm1, qword [ebp + edi]
jmp 0x4a2f6a
mov esi, ebp
imul esi, dword [esp + 0xa4]
mov edi, dword [esp + 0x10]
lea esi, [esi + edi*4]
mov edi, dword [esp + 0x58]
cmp eax, dword [esi + edi]
jne 0x4a2f6a
imul ebp, dword [esp + 0xa0]
mov esi, dword [esp + 0x10]
mov edi, dword [esp + 0x54]
lea ebp, [ebp + esi*8]
subsd xmm1, qword [ebp + edi]
cmp dword [esp + 0x1e0], 0
jle 0x4a319e
mov ebp, dword [esp + 0x130]
mov edi, 1
imul ebp, dword [esp + 0x168]
mov esi, dword [esp + 0x80]
lea ebp, [ebp + edx*4]
mov dword [esp + 0x18], eax
mov dword [esp + 0x1a0], ebx
mov dword [esp + 0x14], ecx
add esi, ebp
add ebp, dword [esp + 0x7c]
mov dword [esp + 0x1c], edx
mov eax, dword [esp + 0x1e4]
imul eax, edi
mov ebx, dword [esi + eax]
mov eax, dword [ebp + eax]
test ebx, ebx
je 0x4a317d
test eax, eax
je 0x4a317d
mov edx, dword [esp + 0x194]
mov ecx, dword [edx + edi*4]
mov edx, dword [esp + 0x190]
mov dword [esp + 0xe4], ecx
mov edx, dword [edx + edi*4]
mov dword [esp + 0xe8], edx
mov edx, dword [esp + 0x198]
mov edx, dword [edx + edi*4]
test ecx, 0xfffffffe
jne 0x4a305d
mov dword [esp], ebx
add edx, eax
mov ebx, dword [esp + 0x10c]
mov ecx, dword [esp + 0xe8]
mov ebx, dword [ebx + ecx*4]
mov dword [esp + 0x19c], ebx
mov ebx, dword [esp + 0x108]
mov ecx, dword [ebx + ecx*4]
mov dword [esp + 0x18c], ecx
mov ecx, dword [esp + 0x104]
mov ebx, dword [ecx + edx*4]
mov ecx, dword [esp + 0x100]
mov dword [esp + 0x114], ebx
mov ebx, dword [esp]
mov edx, dword [ecx + edx*4]
mov dword [esp + 0x110], edx
jmp 0x4a3119
cmp dword [esp + 0xe4], 2
jne 0x4a30bc
mov dword [esp], ebx
add edx, eax
mov ebx, dword [esp + 0xcc]
mov ecx, dword [esp + 0xe8]
mov ebx, dword [ebx + ecx*4]
mov dword [esp + 0x19c], ebx
mov ebx, dword [esp + 0xc8]
mov ecx, dword [ebx + ecx*4]
mov dword [esp + 0x18c], ecx
mov ecx, dword [esp + 0xc4]
mov ebx, dword [ecx + edx*4]
mov ecx, dword [esp + 0xc0]
mov dword [esp + 0x114], ebx
mov ebx, dword [esp]
mov edx, dword [ecx + edx*4]
mov dword [esp + 0x110], edx
jmp 0x4a3119
cmp dword [esp + 0xe4], 3
jne 0x4a3119
mov dword [esp], ebx
add edx, eax
mov ebx, dword [esp + 0xdc]
mov ecx, dword [esp + 0xe8]
mov ebx, dword [ebx + ecx*4]
mov dword [esp + 0x19c], ebx
mov ebx, dword [esp + 0xd8]
mov ecx, dword [ebx + ecx*4]
mov dword [esp + 0x18c], ecx
mov ecx, dword [esp + 0xd4]
mov ebx, dword [ecx + edx*4]
mov ecx, dword [esp + 0xd0]
mov dword [esp + 0x114], ebx
mov ebx, dword [esp]
mov edx, dword [ecx + edx*4]
mov dword [esp + 0x110], edx
mov edx, dword [esp + 0x1a0]
cmp edx, dword [esp + 0x19c]
jne 0x4a314c
mov edx, dword [esp + 0x18]
cmp edx, dword [esp + 0x114]
jne 0x4a314c
imul ebx, dword [esp + 0xe0]
add ebx, dword [esp + 0xbc]
addsd xmm1, qword [ebx + eax*8]
jmp 0x4a317d
mov edx, dword [esp + 0x1a0]
cmp edx, dword [esp + 0x18c]
jne 0x4a317d
mov edx, dword [esp + 0x18]
cmp edx, dword [esp + 0x110]
jne 0x4a317d
imul ebx, dword [esp + 0xe0]
add ebx, dword [esp + 0xb8]
addsd xmm1, qword [ebx + eax*8]
inc edi
cmp edi, dword [esp + 0x1e0]
jle 0x4a2fb0
mov eax, dword [esp + 0x18]
mov ebx, dword [esp + 0x1a0]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x1c]
test eax, eax
je 0x4a31bd
imul ebx, dword [esp + 0xb4]
movaps xmm2, xmm1
add ebx, dword [esp + 0x90]
mulsd xmm2, qword [ebx + eax*8]
addsd xmm5, xmm2
movsd xmm2, qword [0x67df18]
movsd xmm4, qword [0x67ddb0]
mulsd xmm2, qword [0x76e5b0]
mulsd xmm4, xmm1
movsd xmm3, qword [0x67ddb8]
mulsd xmm4, xmm1
minsd xmm3, xmm2
movsd xmm7, qword [0x67ddb8]
mulsd xmm4, xmm3
addsd xmm7, xmm3
mov ebx, dword [esp + 0x8c]
mulsd xmm4, xmm7
movsd xmm6, qword [ebx + edx*8]
mulsd xmm6, qword [ebx + edx*8]
movsd xmm1, qword [0x67ddb8]
addsd xmm6, xmm4
subsd xmm1, xmm0
sqrtsd xmm6, xmm6
mulsd xmm1, xmm5
addsd xmm6, qword [ebx + edx*8]
mulsd xmm6, qword [0x67dda8]
divsd xmm6, xmm7
mov eax, dword [esp + 0x88]
movsd qword [ebx + edx*8], xmm6
mov ebp, dword [esp + 0x9c]
movsd xmm2, qword [eax + edx*8]
mulsd xmm2, xmm0
addsd xmm2, xmm1
movsd qword [eax + edx*8], xmm2
movsd xmm1, qword [ebx + edx*8]
mulsd xmm1, qword [ebp + ecx*8]
comisd xmm1, xmm2
jbe 0x4a3b16
movaps xmm2, xmm1
mov ecx, dword [esp + 0x84]
subsd xmm2, qword [eax + edx*8]
subsd xmm1, qword [eax + edx*8]
mulsd xmm2, xmm1
sqrtsd xmm2, xmm2
movsd qword [ecx + edx*8], xmm2
jmp 0x4a3b16
mov eax, dword [esp + 0x8c]
mov ecx, dword [esp + 0x88]
pxor xmm1, xmm1
mov ebx, dword [esp + 0x84]
pxor xmm2, xmm2
movsd qword [eax + edx*8], xmm1
pxor xmm3, xmm3
movsd qword [ecx + edx*8], xmm2
movsd qword [ebx + edx*8], xmm3
jmp 0x4a3b16
mov esi, dword [esp + 0x98]
mov edi, dword [esp + 0x7c]
pxor xmm5, xmm5
mov dword [esp + 0x168], 1
movaps xmm1, xmm5
movsd xmm2, qword [0x67df30]
lea eax, [esi + ecx*4]
mov ecx, dword [esp + 0x80]
lea esi, [edi + edx*4]
mov dword [esp + 0x17c], eax
mov eax, dword [esp + 0x78]
mov dword [esp + 0x150], esi
lea ebp, [ecx + edx*4]
mov dword [esp + 0x15c], ebp
mov ebp, dword [esp + 0x74]
lea ecx, [eax + edx*4]
mov eax, dword [esp + 0x60]
mov dword [esp + 0x144], ecx
mov esi, dword [esp + 0xb4]
lea edi, [ebp + edx*4]
mov ebp, dword [esp + 0x5c]
lea ecx, [eax + edx*4]
mov eax, dword [esp + 0x48]
mov dword [esp + 0x14c], edi
mov dword [esp + 0x164], ecx
lea edi, [ebp + edx*4]
mov ebp, dword [esp + 0x44]
lea ecx, [eax + edx*4]
mov eax, dword [esp + 0x40]
mov dword [esp + 0x158], edi
mov dword [esp + 0x148], ecx
lea edi, [ebp + edx*4]
mov ebp, dword [esp + 0x3c]
lea ecx, [eax + edx*4]
mov dword [esp + 0x160], ecx
mov ecx, ebx
mov dword [esp + 0x154], edi
mov eax, ebx
imul ecx, dword [esp + 0xac]
lea edi, [ebp + edx*4]
imul eax, dword [esp + 0xb0]
imul esi, ebx
movsd xmm3, qword [0x67df38]
mov ebp, ebx
imul ebp, dword [esp + 0xa8]
mov dword [esp + 0x140], edi
mov edi, dword [esp + 0x24]
add ecx, dword [esp + 0x2c]
add esi, dword [esp + 0x90]
add eax, dword [esp + 0x30]
lea edi, [edi + edx*4]
add ebp, dword [esp + 0x28]
mov dword [esp + 0xf8], ecx
mov dword [esp + 0x13c], edi
mov dword [esp + 0xfc], ebp
mov dword [esp + 0x1a4], eax
mov dword [esp + 0xec], esi
mov dword [esp + 0x1a0], ebx
mov dword [esp + 0x1c], edx
mov ecx, dword [esp + 0x168]
mov edx, dword [esp + 0x178]
imul edx, ecx
mov eax, dword [esp + 0x17c]
cmp dword [esp + 0x174], 0
mov eax, dword [eax + edx]
jle 0x4a3556
cmp dword [esp + 0x1c0], 0
pxor xmm4, xmm4
jbe 0x4a3b43
mov esi, dword [esp + 0x138]
xor ebx, ebx
imul esi, ecx
mov edx, dword [esp + 0x13c]
mov dword [esp + 0x168], ecx
lea ebp, [edx + esi]
add esi, dword [esp + 0x140]
xor edx, edx
mov ecx, dword [esi + edx*2]
test ecx, ecx
je 0x4a349c
mov edi, dword [esp + 0x1a4]
cmp eax, dword [edi + ecx*4]
jne 0x4a3484
mov edi, dword [esp + 0xfc]
addsd xmm4, qword [edi + ecx*8]
jmp 0x4a349c
mov edi, dword [esp + 0xf8]
cmp eax, dword [edi + ecx*4]
jne 0x4a349c
mov edi, dword [esp + 0xfc]
subsd xmm4, qword [edi + ecx*8]
mov ecx, dword [ebp + edx*2]
test ecx, ecx
je 0x4a34d6
mov edi, dword [esp + 0x1a4]
cmp eax, dword [edi + ecx*4]
jne 0x4a34be
mov edi, dword [esp + 0xfc]
addsd xmm4, qword [edi + ecx*8]
jmp 0x4a34d6
mov edi, dword [esp + 0xf8]
cmp eax, dword [edi + ecx*4]
jne 0x4a34d6
mov edi, dword [esp + 0xfc]
subsd xmm4, qword [edi + ecx*8]
inc ebx
add edx, dword [esp + 0x1cc]
cmp ebx, dword [esp + 0x1c0]
jb 0x4a3463
mov ecx, dword [esp + 0x168]
lea ebx, [ebx + ebx + 1]
lea edx, [ebx - 1]
cmp edx, dword [esp + 0x174]
jae 0x4a355a
imul ebx, dword [esp + 0x1cc]
mov edx, dword [esp + 0x138]
imul edx, ecx
add ebx, dword [esp + 0x160]
mov ebx, dword [ebx + edx]
test ebx, ebx
je 0x4a355a
mov edx, dword [esp + 0x1a4]
cmp eax, dword [edx + ebx*4]
jne 0x4a353c
mov edx, dword [esp + 0xfc]
addsd xmm4, qword [edx + ebx*8]
jmp 0x4a355a
mov edx, dword [esp + 0xf8]
cmp eax, dword [edx + ebx*4]
jne 0x4a355a
mov edx, dword [esp + 0xfc]
subsd xmm4, qword [edx + ebx*8]
jmp 0x4a355a
pxor xmm4, xmm4
cmp dword [esp + 0x170], 0
jle 0x4a3792
cmp dword [esp + 0x1c4], 0
jbe 0x4a3b4d
mov esi, dword [esp + 0x134]
xor ebx, ebx
imul esi, ecx
mov edx, dword [esp + 0x154]
mov ebp, dword [esp + 0x148]
mov dword [esp + 0x16c], eax
mov dword [esp + 0x168], ecx
lea edi, [edx + esi]
mov edx, dword [esp + 0x164]
add ebp, esi
mov dword [esp + 0x1d0], edi
mov dword [esp + 0x1dc], ebp
lea edi, [edx + esi]
add esi, dword [esp + 0x144]
mov dword [esp + 0x1d8], esi
xor edx, edx
mov dword [esp + 0x1d4], edi
mov ecx, dword [esp + 0x1d8]
mov eax, dword [esp + 0x1d4]
mov ecx, dword [ecx + edx*2]
mov eax, dword [eax + edx*2]
test ecx, ecx
je 0x4a3650
test eax, eax
je 0x4a3650
mov ebp, dword [esp + 0xf4]
imul ebp, ecx
mov esi, dword [esp + 0x16c]
lea edi, [ebp + eax*4]
mov ebp, dword [esp + 0xf0]
cmp esi, dword [edi + ebp]
jne 0x4a3625
imul ecx, dword [esp + 0xa0]
lea eax, [ecx + eax*8]
mov ecx, dword [esp + 0x54]
addsd xmm4, qword [eax + ecx]
jmp 0x4a3650
mov ebp, dword [esp + 0xa4]
imul ebp, ecx
lea edi, [ebp + eax*4]
mov ebp, dword [esp + 0x58]
cmp esi, dword [edi + ebp]
jne 0x4a3650
imul ecx, dword [esp + 0xa0]
lea eax, [ecx + eax*8]
mov ecx, dword [esp + 0x54]
subsd xmm4, qword [eax + ecx]
mov ecx, dword [esp + 0x1d0]
mov eax, dword [esp + 0x1dc]
mov ecx, dword [ecx + edx*2]
mov eax, dword [eax + edx*2]
test ecx, ecx
je 0x4a36ce
test eax, eax
je 0x4a36ce
mov ebp, dword [esp + 0xf4]
imul ebp, ecx
mov esi, dword [esp + 0x16c]
lea edi, [ebp + eax*4]
mov ebp, dword [esp + 0xf0]
cmp esi, dword [edi + ebp]
jne 0x4a36a3
imul ecx, dword [esp + 0xa0]
lea eax, [ecx + eax*8]
mov ecx, dword [esp + 0x54]
addsd xmm4, qword [eax + ecx]
jmp 0x4a36ce
mov ebp, dword [esp + 0xa4]
imul ebp, ecx
lea edi, [ebp + eax*4]
mov ebp, dword [esp + 0x58]
cmp esi, dword [edi + ebp]
jne 0x4a36ce
imul ecx, dword [esp + 0xa0]
lea eax, [ecx + eax*8]
mov ecx, dword [esp + 0x54]
subsd xmm4, qword [eax + ecx]
inc ebx
add edx, dword [esp + 0x1c8]
cmp ebx, dword [esp + 0x1c4]
jb 0x4a35d2
mov eax, dword [esp + 0x16c]
lea edx, [ebx + ebx + 1]
mov ecx, dword [esp + 0x168]
lea ebx, [edx - 1]
cmp ebx, dword [esp + 0x170]
jae 0x4a3792
imul edx, dword [esp + 0x1c8]
mov ebx, dword [esp + 0x14c]
mov esi, dword [esp + 0x134]
imul esi, ecx
lea ebp, [ebx + edx]
add edx, dword [esp + 0x158]
mov ebx, dword [ebp + esi]
mov edx, dword [edx + esi]
test ebx, ebx
je 0x4a3792
test edx, edx
je 0x4a3792
mov ebp, dword [esp + 0xf4]
imul ebp, ebx
mov edi, dword [esp + 0xf0]
lea esi, [ebp + edx*4]
cmp eax, dword [esi + edi]
jne 0x4a3767
imul ebx, dword [esp + 0xa0]
lea edx, [ebx + edx*8]
mov ebx, dword [esp + 0x54]
addsd xmm4, qword [edx + ebx]
jmp 0x4a3792
mov ebp, dword [esp + 0xa4]
imul ebp, ebx
mov edi, dword [esp + 0x58]
lea esi, [ebp + edx*4]
cmp eax, dword [esi + edi]
jne 0x4a3792
imul ebx, dword [esp + 0xa0]
lea edx, [ebx + edx*8]
mov ebx, dword [esp + 0x54]
subsd xmm4, qword [edx + ebx]
cmp dword [esp + 0x1e0], 0
jle 0x4a39d4
mov ebx, dword [esp + 0x130]
mov ebp, 1
imul ebx, ecx
mov edx, dword [esp + 0x15c]
mov dword [esp + 0x16c], eax
mov dword [esp + 0x168], ecx
lea esi, [edx + ebx]
add ebx, dword [esp + 0x150]
mov eax, dword [esp + 0x1e4]
imul eax, ebp
mov edi, dword [esi + eax]
mov eax, dword [ebx + eax]
test edi, edi
je 0x4a39b8
test eax, eax
je 0x4a39b8
mov edx, dword [esp + 0x194]
mov ecx, dword [edx + ebp*4]
mov edx, dword [esp + 0x190]
mov dword [esp + 0x1a8], ecx
mov edx, dword [edx + ebp*4]
mov dword [esp + 0x1ac], edx
mov edx, dword [esp + 0x198]
mov edx, dword [edx + ebp*4]
test ecx, 0xfffffffe
jne 0x4a3882
mov dword [esp + 0x118], edi
add edx, eax
mov edi, dword [esp + 0x10c]
mov ecx, dword [esp + 0x1ac]
mov edi, dword [edi + ecx*4]
mov dword [esp + 0x19c], edi
mov edi, dword [esp + 0x108]
mov ecx, dword [edi + ecx*4]
mov dword [esp + 0x18c], ecx
mov ecx, dword [esp + 0x104]
mov edi, dword [ecx + edx*4]
mov ecx, dword [esp + 0x100]
mov dword [esp + 0x114], edi
mov edi, dword [esp + 0x118]
mov edx, dword [ecx + edx*4]
mov dword [esp + 0x110], edx
jmp 0x4a394e
cmp dword [esp + 0x1a8], 2
jne 0x4a38e9
mov dword [esp + 0x118], edi
add edx, eax
mov edi, dword [esp + 0xcc]
mov ecx, dword [esp + 0x1ac]
mov edi, dword [edi + ecx*4]
mov dword [esp + 0x19c], edi
mov edi, dword [esp + 0xc8]
mov ecx, dword [edi + ecx*4]
mov dword [esp + 0x18c], ecx
mov ecx, dword [esp + 0xc4]
mov edi, dword [ecx + edx*4]
mov ecx, dword [esp + 0xc0]
mov dword [esp + 0x114], edi
mov edi, dword [esp + 0x118]
mov edx, dword [ecx + edx*4]
mov dword [esp + 0x110], edx
jmp 0x4a394e
cmp dword [esp + 0x1a8], 3
jne 0x4a394e
mov dword [esp + 0x118], edi
add edx, eax
mov edi, dword [esp + 0xdc]
mov ecx, dword [esp + 0x1ac]
mov edi, dword [edi + ecx*4]
mov dword [esp + 0x19c], edi
mov edi, dword [esp + 0xd8]
mov ecx, dword [edi + ecx*4]
mov dword [esp + 0x18c], ecx
mov ecx, dword [esp + 0xd4]
mov edi, dword [ecx + edx*4]
mov ecx, dword [esp + 0xd0]
mov dword [esp + 0x114], edi
mov edi, dword [esp + 0x118]
mov edx, dword [ecx + edx*4]
mov dword [esp + 0x110], edx
mov edx, dword [esp + 0x19c]
cmp edx, dword [esp + 0x1a0]
jne 0x4a3984
mov edx, dword [esp + 0x114]
cmp edx, dword [esp + 0x16c]
jne 0x4a3984
imul edi, dword [esp + 0xe0]
add edi, dword [esp + 0xbc]
addsd xmm4, qword [edi + eax*8]
jmp 0x4a39b8
mov edx, dword [esp + 0x18c]
cmp edx, dword [esp + 0x1a0]
jne 0x4a39b8
mov edx, dword [esp + 0x110]
cmp edx, dword [esp + 0x16c]
jne 0x4a39b8
imul edi, dword [esp + 0xe0]
add edi, dword [esp + 0xb8]
addsd xmm4, qword [edi + eax*8]
inc ebp
cmp ebp, dword [esp + 0x1e0]
jle 0x4a37ce
mov eax, dword [esp + 0x16c]
mov ecx, dword [esp + 0x168]
test eax, eax
je 0x4a39eb
mov edx, dword [esp + 0xec]
movaps xmm6, xmm4
mulsd xmm6, qword [edx + eax*8]
addsd xmm5, xmm6
mov eax, 0x55555556
lea ebp, [ecx - 1]
imul ebp
inc ecx
mov eax, 0x55555556
mov ebx, 3
lea esi, [edx + edx*2]
imul ecx
sub ebp, esi
lea edi, [edx + edx*2]
mov eax, ecx
cmove ebp, ebx
sub eax, edi
mov edx, dword [esp + 0x17c]
cmove eax, ebx
imul eax, dword [esp + 0x178]
mov edx, dword [eax + edx]
test edx, edx
je 0x4a3a38
mov eax, dword [esp + 0xec]
movsd xmm6, qword [eax + edx*8]
jmp 0x4a3a3c
pxor xmm6, xmm6
imul ebp, dword [esp + 0x178]
mov eax, dword [esp + 0x17c]
mov edx, dword [ebp + eax]
test edx, edx
je 0x4a3a5f
mov eax, dword [esp + 0xec]
subsd xmm6, qword [eax + edx*8]
movsd xmm7, qword [0x67dda0]
maxsd xmm2, xmm4
mulsd xmm7, xmm4
minsd xmm3, xmm4
mulsd xmm7, xmm6
addsd xmm1, xmm7
cmp ecx, 3
jle 0x4a3409
movsd xmm4, qword [0x67ddb8]
subsd xmm2, xmm3
subsd xmm4, xmm0
mulsd xmm4, qword [0x67df48]
mov eax, dword [esp + 0x8c]
mov edx, dword [esp + 0x1c]
mov dword [esp + 0x168], ecx
movsd xmm6, qword [eax + edx*8]
mulsd xmm6, xmm0
mulsd xmm4, xmm2
movsd xmm2, qword [0x67ddb8]
addsd xmm6, xmm4
subsd xmm2, xmm0
mov ecx, dword [esp + 0x88]
movsd qword [eax + edx*8], xmm6
movsd xmm7, qword [0x67ddb8]
movsd xmm3, qword [ecx + edx*8]
subsd xmm7, xmm0
mulsd xmm3, xmm0
mulsd xmm2, xmm5
mulsd xmm7, xmm1
addsd xmm3, xmm2
mov ebx, dword [esp + 0x84]
movsd qword [ecx + edx*8], xmm3
movsd xmm2, qword [ebx + edx*8]
mulsd xmm2, xmm0
addsd xmm2, xmm7
movsd qword [ebx + edx*8], xmm2
inc edx
cmp edx, dword [esp + 0x1bc]
jle 0x4a2b68
add esp, 0x1e8
pop ebp
pop ebx
pop edi
pop esi
ret
mov esi, 1
jmp 0x4a2ec4
mov esi, 1
jmp 0x4a2ccc
mov ebx, 1
jmp 0x4a34f6
mov edx, 1
jmp 0x4a36f5
cmp edx, 1
jne 0x4a3be9
mov edi, dword [esp + 0xc]
mov edx, dword [ebp + eax*4]
mov edi, dword [edi + eax*4]
test edx, edx
jle 0x4a3b7e
imul edi, dword [esp + 8]
lea edx, [edi + edx*8]
movsd xmm1, qword [edx + ecx]
jmp 0x4a3b82
pxor xmm1, xmm1
movsd xmm3, qword [0x67df18]
movsd xmm5, qword [0x67ddb0]
mulsd xmm3, qword [0x76e5b0]
mulsd xmm5, xmm1
movsd xmm4, qword [0x67ddb8]
movaps xmm2, xmm4
mulsd xmm5, xmm1
minsd xmm2, xmm3
mulsd xmm5, xmm2
addsd xmm4, xmm2
lea edx, [ebx + eax*8]
movsd xmm6, qword [edx]
mulsd xmm6, qword [edx]
mulsd xmm5, xmm4
addsd xmm6, xmm5
sqrtsd xmm6, xmm6
addsd xmm6, qword [edx]
mulsd xmm6, qword [0x67dda8]
divsd xmm6, xmm4
movsd qword [edx], xmm6
jmp 0x4a247a
cmp edx, 2
jne 0x4a3caa
mov edi, dword [esp + 0xc]
mov edx, dword [ebp + eax*4]
mov dword [esp], edx
mov edi, dword [edi + eax*4]
mov dword [esp + 4], edi
test edx, edx
jle 0x4a3c25
mov edx, dword [esp + 8]
imul edx, dword [esp + 4]
mov edi, dword [esp]
lea edx, [edx + edi*8]
movsd xmm4, qword [edx + ecx]
andps xmm4, xmmword [0x67dd00]
jmp 0x4a3c29
pxor xmm4, xmm4
mov edx, dword [esp + 0x10]
mov edi, dword [edx + eax*4]
test edi, edi
jle 0x4a3c4f
mov edx, dword [esp + 4]
imul edx, dword [esp + 8]
add edx, ecx
movsd xmm1, qword [edx + edi*8]
andps xmm1, xmmword [0x67dd00]
addsd xmm4, xmm1
movsd xmm1, qword [0x67df18]
mulsd xmm1, qword [0x76e5b0]
mulsd xmm4, xmm4
movsd xmm2, qword [0x67ddb8]
movaps xmm3, xmm2
lea edx, [ebx + eax*8]
movsd xmm5, qword [edx]
minsd xmm3, xmm1
mulsd xmm5, qword [edx]
mulsd xmm4, xmm3
addsd xmm2, xmm3
mulsd xmm4, xmm2
addsd xmm5, xmm4
sqrtsd xmm5, xmm5
addsd xmm5, qword [edx]
mulsd xmm5, qword [0x67dda8]
divsd xmm5, xmm2
movsd qword [edx], xmm5
jmp 0x4a247a
pxor xmm1, xmm1
movsd qword [ebx + eax*8], xmm1
jmp 0x4a247a