Function at 0x1000a220
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100998c1
mov eax, dword fs:[0]
push eax
sub esp, 0x40
mov eax, dword [0x100b1010]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, dword [ebp + 0xc]
mov edi, dword [ebp + 8]
test esi, esi
je 0x1000a858
mov ecx, esi
call fcn.1007e380
test al, al
je 0x1000a858
mov eax, dword [0x100bdd2c]
test byte [eax + 0xc], 1
jne 0x1000a858
mov al, byte [esi + 0x134]
cmp al, 9
je 0x1000a858
cmp al, 8
je 0x1000a858
mov ecx, esi
call fcn.1007dec0
test byte [eax], 1
jne 0x1000a858
mov eax, dword fs:[0x2c]
mov ecx, dword [0x100b76f0]
mov ecx, dword [eax + ecx*4]
mov eax, dword [0x10186ac0]
cmp eax, dword [ecx + 4]
jle 0x1000a331
push 0x10186ac0
call fcn.1009832a
add esp, 4
cmp dword [0x10186ac0], 0xffffffff
jne 0x1000a331
mov dword [ebp - 4], 0
mov cl, 0x2e
mov dword [ebp - 0x20], 0x71424d2e
xor eax, eax
mov dword [ebp - 0x1c], 0x4b4a475d
mov dword [ebp - 0x18], 0x4b4b5e5d
mov word [ebp - 0x14], 0x4a
xor byte [ebp + eax - 0x1f], cl
inc eax
cmp eax, 0xc
jae 0x1000a303
mov cl, byte [ebp - 0x20]
jmp 0x1000a2f4
mov ecx, dword [0x100b7ee4]
lea edx, [ebp - 0x1f]
mov byte [ebp - 0x13], 0
push edx
mov eax, dword [ecx]
mov eax, dword [eax + 0x1c]
call eax
push 0x10186ac0
mov dword [0x10186abc], eax
mov dword [ebp - 4], 0xffffffff
call fcn.100982d9
add esp, 4
cmp byte [esi + 0x134], 2
mov eax, dword [0x10186abc]
mov eax, dword [eax + 0x18]
movss xmm0, dword [eax + 0x28]
movss dword [ebp - 0x30], xmm0
jne 0x1000a858
mov ecx, esi
call fcn.1007db30
movss xmm0, dword [edi + 0x18]
movss dword [ebp - 0x24], xmm0
movss xmm0, dword [edi + 0x1c]
movss xmm2, dword [eax]
movss xmm3, dword [eax + 4]
movss dword [ebp - 0x28], xmm0
movaps xmm1, xmm3
movaps xmm0, xmm2
mulss xmm1, xmm3
mulss xmm0, xmm2
movss dword [ebp - 0x44], xmm2
movss dword [ebp - 0x34], xmm3
addss xmm0, xmm1
call fcn.10003730
movss xmm2, dword [ebp - 0x28]
movaps xmm1, xmm0
movss xmm0, dword [0x100a6478]
comiss xmm0, xmm1
movss dword [ebp - 0x40], xmm1
xorps xmm0, xmm0
movss xmm1, dword [ebp - 0x24]
jbe 0x1000a3cd
ucomiss xmm1, xmm0
lahf
test ah, 0x44
jp 0x1000a3cd
ucomiss xmm2, xmm0
lahf
test ah, 0x44
jnp 0x1000a858
cmp byte [0x100b7734], 0
sete al
mov byte [0x100b7734], al
test al, al
je 0x1000a3ea
movss xmm3, dword [0x100a63c0]
jmp 0x1000a3f2
movss xmm3, dword [0x100a6588]
ucomiss xmm1, xmm0
movss dword [ebp - 0x38], xmm3
movss xmm3, dword [edi + 0x10]
lahf
movss dword [ebp - 0x4c], xmm3
movss dword [ebp - 0x2c], xmm3
test ah, 0x44
jp 0x1000a42a
ucomiss xmm2, xmm0
lahf
test ah, 0x44
jp 0x1000a42a
ucomiss xmm1, xmm0
lahf
test ah, 0x44
jnp 0x1000a459
mov dword [edi + 0x18], 0
jmp 0x1000a459
xorps xmm2, xmmword [0x100a73b0]
movaps xmm0, xmm2
mov dword [edi + 0x18], 0
mov dword [edi + 0x1c], 0
call fcn.100036d0
mulss xmm0, dword [0x100a64f8]
addss xmm0, dword [ebp - 0x4c]
movss dword [ebp - 0x2c], xmm0
movss xmm0, dword [0x100a64a0]
divss xmm0, dword [ebp - 0x40]
cvtps2pd xmm0, xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll__libm_sse2_atan_precise
movss xmm6, dword [0x100a6518]
xorps xmm1, xmm1
movss xmm5, dword [0x100a659c]
xorps xmm3, xmm3
movss xmm2, dword [0x100a6558]
cvtsd2ss xmm0, xmm0
mulss xmm0, dword [0x100a64f4]
maxss xmm1, xmm0
movss xmm0, dword [ebp - 0x2c]
minss xmm6, xmm1
movaps xmm1, xmm0
subss xmm1, dword [0x100b7738]
movss dword [ebp - 0x3c], xmm6
comiss xmm5, xmm1
jbe 0x1000a4c9
nop word [eax + eax]
addss xmm1, xmm2
comiss xmm5, xmm1
ja 0x1000a4c0
movss xmm4, dword [0x100a6540]
comiss xmm1, xmm4
jbe 0x1000a4df
subss xmm1, xmm2
comiss xmm1, xmm4
ja 0x1000a4d6
movss dword [0x100b7738], xmm0
movaps xmm0, xmm1
call fcn.1000a1e0
comiss xmm6, xmm0
movss xmm6, dword [0x100a64c8]
jae 0x1000a522
comiss xmm0, xmm6
jae 0x1000a522
comiss xmm1, xmm3
ja 0x1000a67b
comiss xmm3, xmm1
jbe 0x1000a6de
movss xmm0, dword [ebp - 0x30]
movss dword [edi + 0x1c], xmm0
jmp 0x1000a6de
movss xmm1, dword [ebp - 0x44]
movss xmm0, dword [ebp - 0x34]
ucomiss xmm1, xmm3
lahf
test ah, 0x44
jp 0x1000a545
ucomiss xmm0, xmm3
lahf
test ah, 0x44
jp 0x1000a545
movss dword [ebp - 0x28], xmm3
jmp 0x1000a588
call fcn.100036d0
mulss xmm0, dword [0x100a64f4]
xorps xmm1, xmm1
movss xmm2, dword [0x100a6558]
movss xmm4, dword [0x100a6540]
comiss xmm1, xmm0
movss xmm5, dword [0x100a659c]
movss xmm6, dword [0x100a64c8]
movss dword [ebp - 0x28], xmm0
jbe 0x1000a588
addss xmm0, xmm2
movss dword [ebp - 0x28], xmm0
movss xmm0, dword [ebp - 0x2c]
subss xmm0, dword [ebp - 0x28]
comiss xmm5, xmm0
movss dword [ebp - 0x24], xmm0
jbe 0x1000a5ae
nop dword [eax]
addss xmm0, xmm2
comiss xmm5, xmm0
ja 0x1000a5a0
movss dword [ebp - 0x24], xmm0
comiss xmm0, xmm4
jbe 0x1000a5c1
subss xmm0, xmm2
comiss xmm0, xmm4
ja 0x1000a5b3
movss dword [ebp - 0x24], xmm0
divss xmm6, dword [ebp - 0x40]
xorps xmm0, xmm0
cvtss2sd xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll__libm_sse2_atan_precise
cvtsd2ss xmm0, xmm0
push ecx
mulss xmm0, dword [0x100a64f4]
movss dword [ebp - 0x34], xmm0
fld dword [ebp - 0x34]
fstp dword [esp]
movss dword [ebp - 0x44], xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll__fdclass
add esp, 4
cmp ax, 1
je 0x1000a646
fld dword [ebp - 0x44]
fstp dword [ebp - 0x48]
movss xmm0, dword [ebp - 0x48]
ucomiss xmm0, xmm0
setp al
cmp al, 1
je 0x1000a646
fld dword [ebp - 0x34]
push ecx
fstp dword [esp]
call sub.api_ms_win_crt_math_l1_1_0.dll__fdclass
movss xmm0, dword [0x100a6518]
add esp, 4
cmp ax, 0xfffe
je 0x1000a64e
movss xmm2, dword [ebp - 0x44]
comiss xmm2, xmm0
ja 0x1000a64e
xorps xmm0, xmm0
comiss xmm0, xmm2
jbe 0x1000a651
xorps xmm2, xmm2
jmp 0x1000a651
movss xmm0, dword [0x100a6518]
movaps xmm2, xmm0
movss xmm1, dword [ebp - 0x24]
comiss xmm2, xmm1
movss xmm4, dword [0x100a64a0]
movss xmm5, dword [ebp - 0x40]
jae 0x1000a68e
comiss xmm4, xmm5
jae 0x1000a68e
movss xmm0, dword [ebp - 0x28]
addss xmm0, xmm2
movss dword [ebp - 0x2c], xmm0
movss xmm0, dword [ebp - 0x30]
xorps xmm0, xmmword [0x100a73b0]
movss dword [edi + 0x1c], xmm0
jmp 0x1000a6de
movaps xmm0, xmm2
xorps xmm0, xmmword [0x100a73b0]
comiss xmm1, xmm0
jae 0x1000a6bc
comiss xmm4, xmm5
jae 0x1000a6bc
movss xmm0, dword [ebp - 0x28]
subss xmm0, xmm2
movss dword [ebp - 0x2c], xmm0
movss xmm0, dword [ebp - 0x30]
movss dword [edi + 0x1c], xmm0
jmp 0x1000a6de
movss xmm1, dword [ebp - 0x38]
movss xmm0, dword [ebp - 0x3c]
mulss xmm0, xmm1
mulss xmm1, dword [ebp - 0x30]
addss xmm0, dword [ebp - 0x2c]
movss dword [edi + 0x1c], xmm1
movss dword [ebp - 0x2c], xmm0
movss xmm2, dword [edi + 0x1c]
movss xmm0, dword [edi + 0x18]
movaps xmm1, xmm2
mulss xmm0, xmm0
mulss xmm1, xmm2
movss dword [ebp - 0x3c], xmm2
addss xmm0, xmm1
call fcn.10003730
movss xmm1, dword [edi + 0x18]
movss dword [ebp - 0x38], xmm0
xorps xmm0, xmm0
ucomiss xmm1, xmm0
lahf
test ah, 0x44
jp 0x1000a7d8
movss xmm2, dword [edi + 0x1c]
ucomiss xmm2, xmm0
lahf
test ah, 0x44
jp 0x1000a7dd
movss dword [ebp - 0x24], xmm0
movss xmm1, dword [0x100a6558]
movss xmm0, dword [edi + 0xc]
addss xmm0, dword [0x100a6540]
call fcn.10008bd0
movaps xmm1, xmm0
movss xmm0, dword [0x100a6540]
subss xmm1, xmm0
addss xmm0, dword [ebp - 0x4c]
movss dword [ebp - 0x3c], xmm1
movss xmm1, dword [0x100a6558]
call fcn.10008bd0
subss xmm0, dword [0x100a6540]
movss xmm1, dword [ebp - 0x3c]
movss xmm2, dword [0x100a6518]
comiss xmm1, xmm2
subss xmm0, dword [ebp - 0x2c]
addss xmm0, dword [ebp - 0x24]
mulss xmm0, dword [0x100a62f4]
movss dword [ebp - 0x48], xmm0
jae 0x1000a814
movss xmm3, dword [0x100a6598]
comiss xmm3, xmm1
jae 0x1000a814
movss xmm1, dword [edi + 0xc]
comiss xmm1, xmm2
movss xmm2, dword [0x100a654c]
jb 0x1000a7c7
comiss xmm2, xmm1
jae 0x1000a814
comiss xmm3, xmm1
jb 0x1000a7d1
comiss xmm2, xmm1
jae 0x1000a814
call fcn.10003710
jmp 0x1000a820
movss xmm2, dword [ebp - 0x3c]
movaps xmm0, xmm2
call fcn.100036d0
mulss xmm0, dword [0x100a64f4]
xorps xmm1, xmm1
comiss xmm1, xmm0
movss dword [ebp - 0x24], xmm0
jbe 0x1000a732
movss xmm1, dword [0x100a6558]
addss xmm0, xmm1
movss dword [ebp - 0x24], xmm0
jmp 0x1000a73a
call fcn.10003710
xorps xmm0, xmmword [0x100a73b0]
mulss xmm0, dword [ebp - 0x38]
movss dword [edi + 0x18], xmm0
movss xmm0, dword [ebp - 0x48]
call fcn.1000a200
xorps xmm1, xmm1
cvtss2sd xmm1, xmm0
movss xmm0, dword [ebp - 0x38]
cvtps2pd xmm0, xmm0
divsd xmm0, qword [0x100a63f8]
mulsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
movss dword [edi + 0x1c], xmm0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.1009823a
mov esp, ebp
pop ebp
ret 8