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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
mov eax, dword [0x10216634]
sub esp, 0x314
cmp byte [eax + 0x1a50], 0
push ebx
push esi
push edi
mov ebx, ecx
je 0x100aad4b
xorps xmm0, xmm0
comiss xmm0, dword [eax + 0x1a68]
jae 0x100aad4b
test ebx, ebx
je 0x100aad4b
mov eax, dword [0x102187c8]
cmp dword [eax], 0
je 0x100aad4b
mov eax, dword [0x1021663c]
push 0
push str.userid
mov edi, dword [eax + 0x18]
mov esi, dword [eax + 0x10]
mov eax, dword [ebx]
mov eax, dword [eax + 0x18]
call eax
mov edx, dword [esi]
mov ecx, esi
push eax
mov edx, dword [edx + 0x24]
call edx
mov edx, dword [edi]
mov ecx, edi
push eax
mov edx, dword [edx + 0xc]
call edx
mov ecx, dword [0x1021663c]
mov edx, dword [ebx]
push 0
push str.attacker
mov edi, dword [ecx + 0x18]
mov esi, dword [ecx + 0x10]
mov ecx, ebx
mov edx, dword [edx + 0x18]
mov dword [esp + 0x1c], eax
call edx
mov edx, dword [esi]
mov ecx, esi
push eax
mov edx, dword [edx + 0x24]
call edx
mov edx, dword [edi]
mov ecx, edi
push eax
mov edx, dword [edx + 0xc]
call edx
cmp dword [esp + 0x14], 0
mov dword [esp + 0x38], eax
je 0x100aad4b
test eax, eax
je 0x100aad4b
mov ecx, dword [0x1021663c]
mov eax, dword [0x102187c8]
mov esi, dword [ecx + 0x10]
mov ecx, dword [eax]
mov eax, dword [ecx + 8]
add ecx, 8
mov eax, dword [eax + 0x28]
call eax
mov edx, dword [esi]
lea ecx, [esp + 0x70]
push ecx
push eax
mov ecx, esi
mov edx, dword [edx + 0x20]
call edx
mov ecx, dword [esp + 0x38]
or ebx, 0xffffffff
test al, al
mov edi, ebx
mov eax, dword [0x1021663c]
cmovne edi, dword [esp + 0x100]
add ecx, 8
mov esi, dword [eax + 0x10]
mov eax, dword [ecx]
mov eax, dword [eax + 0x28]
call eax
mov edx, dword [esi]
lea ecx, [esp + 0x1c8]
push ecx
push eax
mov ecx, esi
mov edx, dword [edx + 0x20]
call edx
test al, al
mov ecx, ebx
cmovne ecx, dword [esp + 0x258]
cmp edi, ecx
jne 0x100aad4b
mov eax, dword [0x1021663c]
mov esi, dword [eax + 0x10]
mov eax, dword [0x102187c8]
mov ecx, dword [eax]
mov eax, dword [ecx + 8]
add ecx, 8
mov eax, dword [eax + 0x28]
call eax
mov edx, dword [esi]
lea ecx, [esp + 0x1c8]
push ecx
push eax
mov ecx, esi
mov edx, dword [edx + 0x20]
call edx
mov ecx, dword [esp + 0x14]
test al, al
mov eax, dword [0x1021663c]
mov edi, ebx
cmovne edi, dword [esp + 0x258]
add ecx, 8
mov esi, dword [eax + 0x10]
mov eax, dword [ecx]
mov eax, dword [eax + 0x28]
call eax
mov edx, dword [esi]
lea ecx, [esp + 0x70]
push ecx
push eax
mov ecx, esi
mov edx, dword [edx + 0x20]
call edx
test al, al
cmovne ebx, dword [esp + 0x100]
cmp edi, ebx
je 0x100aad4b
mov eax, dword [0x1021663c]
mov edi, dword [esp + 0x14]
lea ecx, [edi + 4]
mov esi, dword [eax + 0x40]
mov eax, dword [ecx]
mov eax, dword [eax + 0x20]
call eax
mov edx, dword [esi]
mov ecx, esi
push eax
mov edx, dword [edx + 0x80]
call edx
cmp dword [eax + 0xac], 0
jle 0x100aa77b
mov ebx, dword [eax + 0xb0]
add ebx, eax
jmp 0x100aa77d
xor ebx, ebx
mov eax, dword [edi + 0x2914]
xor edi, edi
movss xmm1, dword [0x101ece10]
mov dword [esp + 0x40], eax
mov eax, dword [0x10216634]
movss xmm0, dword [eax + 0x1a51]
mulss xmm0, xmm1
cvttss2si ecx, xmm0
movss xmm0, dword [eax + 0x1a55]
mulss xmm0, xmm1
mov dword [esp + 0x54], ecx
cvttss2si ecx, xmm0
movss xmm0, dword [eax + 0x1a59]
mulss xmm0, xmm1
mov dword [esp + 0x50], ecx
cvttss2si ecx, xmm0
movss xmm0, dword [eax + 0x1a5d]
mulss xmm0, xmm1
mov dword [esp + 0x4c], ecx
cvttss2si ecx, xmm0
movss xmm0, dword [eax + 0x1a68]
mov eax, dword [ebx + 4]
mov dword [esp + 0x48], ecx
movss dword [esp + 0x44], xmm0
test eax, eax
jle 0x100aad4b
xor ecx, ecx
mov dword [esp + 0x38], ecx
test edi, edi
js 0x100aad38
cmp edi, eax
jge 0x100aad38
mov esi, dword [ebx + 8]
add esi, ecx
add esi, ebx
je 0x100aad38
movss xmm0, dword [esi + 0x28]
mulss xmm0, dword [0x101ecaa0]
cvtps2pd xmm0, xmm0
movsd qword [esp + 0x20], xmm0
call fcn.10187d90
xorps xmm7, xmm7
cvtsd2ss xmm7, xmm0
movsd xmm0, qword [esp + 0x20]
movss dword [esp + 0x30], xmm7
call fcn.10186b10
cvtsd2ss xmm0, xmm0
movss dword [esp + 0x1c], xmm0
movss xmm0, dword [esi + 0x24]
mulss xmm0, dword [0x101ecaa0]
cvtps2pd xmm0, xmm0
movsd qword [esp + 0x20], xmm0
call fcn.10187d90
cvtsd2ss xmm0, xmm0
movss dword [esp + 0x14], xmm0
movsd xmm0, qword [esp + 0x20]
call fcn.10186b10
cvtsd2ss xmm0, xmm0
movss dword [esp + 0x2c], xmm0
movss xmm0, dword [esi + 0x2c]
mulss xmm0, dword [0x101ecaa0]
cvtps2pd xmm0, xmm0
movsd qword [esp + 0x20], xmm0
call fcn.10187d90
cvtsd2ss xmm0, xmm0
movss dword [esp + 0x34], xmm0
movsd xmm0, qword [esp + 0x20]
call fcn.10186b10
movss xmm7, dword [esp + 0x1c]
xorps xmm6, xmm6
movss xmm3, dword [esp + 0x34]
cvtsd2ss xmm6, xmm0
movaps xmm2, xmm3
movss xmm4, dword [esi + 8]
mulss xmm3, dword [esp + 0x30]
movaps xmm1, xmm6
mulss xmm2, xmm7
movss dword [esp + 0x3c], xmm6
mulss xmm6, dword [esp + 0x30]
movaps xmm0, xmm2
movss dword [esp + 0x1c], xmm3
mulss xmm0, dword [esp + 0x14]
movss xmm3, dword [esi + 0xc]
movss xmm5, dword [esi + 0x10]
subss xmm0, xmm6
mulss xmm1, xmm7
mulss xmm6, dword [esp + 0x14]
mulss xmm0, xmm3
subss xmm6, xmm2
movss dword [esp + 0x18], xmm0
movss xmm0, dword [esp + 0x2c]
mulss xmm0, xmm7
movss xmm7, dword [esp + 0x18]
mulss xmm6, xmm5
mulss xmm0, xmm4
addss xmm7, xmm0
movaps xmm0, xmm1
mulss xmm0, dword [esp + 0x14]
addss xmm0, dword [esp + 0x1c]
movss dword [esp + 0x18], xmm7
mulss xmm0, xmm5
addss xmm7, xmm0
movss xmm0, dword [esp + 0x1c]
mulss xmm0, dword [esp + 0x14]
addss xmm0, xmm1
movss dword [esp + 0x18], xmm7
movss xmm1, dword [esp + 0x2c]
mulss xmm0, xmm3
movss dword [esp + 0x1c], xmm0
movaps xmm0, xmm1
mulss xmm0, dword [esp + 0x30]
movss xmm7, dword [esp + 0x1c]
mulss xmm0, xmm4
addss xmm7, xmm0
addss xmm7, xmm6
movss xmm6, dword [esp + 0x34]
mulss xmm6, xmm1
mov eax, dword [esi]
mulss xmm4, dword [esp + 0x14]
movss xmm0, dword [esp + 0x3c]
mulss xmm0, xmm1
lea eax, [eax + eax*2]
shl eax, 4
add eax, dword [esp + 0x40]
mulss xmm6, xmm3
mulss xmm0, xmm5
movups xmm2, xmmword [eax]
movss xmm5, dword [esp + 0x18]
subss xmm6, xmm4
movups xmm3, xmmword [eax + 0x10]
movups xmm4, xmmword [eax + 0x20]
addss xmm6, xmm0
movaps xmm1, xmm2
shufps xmm1, xmm2, 0x55
movaps xmm0, xmm2
mulss xmm0, xmm5
mulss xmm1, xmm7
addss xmm1, xmm0
movaps xmm0, xmm2
shufps xmm0, xmm2, 0xaa
mulss xmm0, xmm6
shufps xmm2, xmm2, 0xff
addss xmm1, xmm0
movaps xmm0, xmm3
mulss xmm0, xmm5
addss xmm1, xmm2
movss dword [esp + 0x64], xmm1
movaps xmm1, xmm3
shufps xmm1, xmm3, 0x55
mulss xmm1, xmm7
addss xmm1, xmm0
movaps xmm0, xmm3
shufps xmm0, xmm3, 0xaa
mulss xmm0, xmm6
shufps xmm3, xmm3, 0xff
addss xmm1, xmm0
movaps xmm0, xmm4
mulss xmm0, xmm5
addss xmm1, xmm3
movss dword [esp + 0x68], xmm1
movaps xmm1, xmm4
shufps xmm1, xmm4, 0x55
mulss xmm1, xmm7
addss xmm1, xmm0
movaps xmm0, xmm4
shufps xmm0, xmm4, 0xaa
mulss xmm0, xmm6
shufps xmm4, xmm4, 0xff
addss xmm1, xmm0
addss xmm1, xmm4
movss dword [esp + 0x6c], xmm1
movss xmm0, dword [esi + 0x28]
mulss xmm0, dword [0x101ecaa0]
cvtps2pd xmm0, xmm0
movsd qword [esp + 0x20], xmm0
call fcn.10187d90
xorps xmm7, xmm7
cvtsd2ss xmm7, xmm0
movsd xmm0, qword [esp + 0x20]
movss dword [esp + 0x30], xmm7
call fcn.10186b10
cvtsd2ss xmm0, xmm0
movss dword [esp + 0x3c], xmm0
movss xmm0, dword [esi + 0x24]
mulss xmm0, dword [0x101ecaa0]
cvtps2pd xmm0, xmm0
movsd qword [esp + 0x20], xmm0
call fcn.10187d90
cvtsd2ss xmm0, xmm0
movss dword [esp + 0x1c], xmm0
movsd xmm0, qword [esp + 0x20]
call fcn.10186b10
cvtsd2ss xmm0, xmm0
movss dword [esp + 0x34], xmm0
movss xmm0, dword [esi + 0x2c]
mulss xmm0, dword [0x101ecaa0]
cvtps2pd xmm0, xmm0
movsd qword [esp + 0x20], xmm0
call fcn.10187d90
cvtsd2ss xmm0, xmm0
movss dword [esp + 0x2c], xmm0
movsd xmm0, qword [esp + 0x20]
call fcn.10186b10
movss xmm3, dword [esp + 0x2c]
xorps xmm6, xmm6
cvtsd2ss xmm6, xmm0
mov eax, dword [esi]
movss xmm7, dword [esp + 0x3c]
movaps xmm2, xmm3
mulss xmm3, dword [esp + 0x30]
lea eax, [eax + eax*2]
shl eax, 4
mulss xmm2, xmm7
movaps xmm1, xmm6
add eax, dword [esp + 0x40]
movss xmm4, dword [esi + 0x14]
movss dword [esp + 0x20], xmm6
mulss xmm6, dword [esp + 0x30]
movaps xmm0, xmm2
mulss xmm0, dword [esp + 0x1c]
movss dword [esp + 0x14], xmm3
movss xmm3, dword [esi + 0x18]
subss xmm0, xmm6
movss xmm5, dword [esi + 0x1c]
mulss xmm1, xmm7
mulss xmm6, dword [esp + 0x1c]
mulss xmm0, xmm3
subss xmm6, xmm2
movups xmm2, xmmword [eax]
movss dword [esp + 0x18], xmm0
movss xmm0, dword [esp + 0x34]
mulss xmm0, xmm7
movss xmm7, dword [esp + 0x18]
mulss xmm6, xmm5
mulss xmm0, xmm4
addss xmm7, xmm0
movaps xmm0, xmm1
mulss xmm0, dword [esp + 0x1c]
addss xmm0, dword [esp + 0x14]
movss dword [esp + 0x18], xmm7
mulss xmm0, xmm5
addss xmm7, xmm0
movss xmm0, dword [esp + 0x14]
mulss xmm0, dword [esp + 0x1c]
addss xmm0, xmm1
movss dword [esp + 0x18], xmm7
movss xmm1, dword [esp + 0x34]
mulss xmm0, xmm3
movss dword [esp + 0x14], xmm0
movaps xmm0, xmm1
mulss xmm0, dword [esp + 0x30]
movss xmm7, dword [esp + 0x14]
mulss xmm0, xmm4
mulss xmm4, dword [esp + 0x1c]
addss xmm7, xmm0
movss xmm0, dword [esp + 0x20]
mulss xmm0, xmm1
addss xmm7, xmm6
mulss xmm0, xmm5
movss xmm6, dword [esp + 0x2c]
movss xmm5, dword [esp + 0x18]
mulss xmm6, xmm1
movaps xmm1, xmm2
shufps xmm1, xmm2, 0x55
mulss xmm1, xmm7
mulss xmm6, xmm3
movups xmm3, xmmword [eax + 0x10]
subss xmm6, xmm4
movups xmm4, xmmword [eax + 0x20]
addss xmm6, xmm0
movaps xmm0, xmm2
mulss xmm0, xmm5
addss xmm1, xmm0
movaps xmm0, xmm2
shufps xmm0, xmm2, 0xaa
mulss xmm0, xmm6
shufps xmm2, xmm2, 0xff
addss xmm1, xmm0
addss xmm1, xmm2
movss dword [esp + 0x58], xmm1
movaps xmm0, xmm3
mulss xmm0, xmm5
movaps xmm1, xmm3
mov eax, dword [0x1021663c]
shufps xmm1, xmm3, 0x55
mulss xmm1, xmm7
push 1
push 0
addss xmm1, xmm0
movaps xmm0, xmm3
shufps xmm0, xmm3, 0xaa
mulss xmm0, xmm6
shufps xmm3, xmm3, 0xff
addss xmm1, xmm0
movaps xmm0, xmm4
mulss xmm0, xmm5
addss xmm1, xmm3
movss dword [esp + 0x64], xmm1
movaps xmm1, xmm4
shufps xmm1, xmm4, 0x55
mulss xmm1, xmm7
addss xmm1, xmm0
movaps xmm0, xmm4
shufps xmm0, xmm4, 0xaa
mulss xmm0, xmm6
shufps xmm4, xmm4, 0xff
addss xmm1, xmm0
movss xmm0, dword [esp + 0x4c]
addss xmm1, xmm4
movss dword [esp + 0x68], xmm1
mov ecx, dword [eax + 0xc]
lea eax, [esi + 0x30]
push ecx
movss dword [esp], xmm0
push dword [esp + 0x54]
mov edx, dword [ecx]
push dword [esp + 0x5c]
push dword [esp + 0x64]
push dword [esp + 0x6c]
push eax
lea eax, [esp + 0x78]
push eax
lea eax, [esp + 0x88]
push eax
call dword [edx + 0x5c]
mov ecx, dword [esp + 0x38]
mov eax, dword [ebx + 4]
inc edi
add ecx, 0x44
mov dword [esp + 0x38], ecx
cmp edi, eax
jl 0x100aa805
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret