Function at 0x180047380
Capabilities:
Create thread

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rdi
push rbp
lea rbp, [rax - 0x5f]
sub rsp, 0xd0
mov r9, qword [0x18006b068]
xor edi, edi
cmp byte [0x18006c240], dil
movaps xmmword [rax - 0x18], xmm6
movaps xmmword [rax - 0x28], xmm7
movaps xmmword [rax - 0x38], xmm8
movaps xmmword [rax - 0x48], xmm9
movaps xmmword [rax - 0x58], xmm10
movaps xmmword [rax - 0x68], xmm11
movaps xmmword [rax - 0x78], xmm12
mov rax, qword [r9 + 0x3ed8]
mov byte [rax + 0x98], 1
mov rax, qword [r9 + 0x3ed8]
mov rbx, qword [rax + 0x288]
jne 0x180047411
mov qword [rsp + 0x28], rdi
lea r8, [0x180015f70]
xor r9d, r9d
mov dword [rsp + 0x20], edi
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateThread]
mov r9, qword [0x18006b068]
mov byte [0x18006c240], 1
mov rax, qword [r9 + 0x3ed8]
lea rcx, [rbp - 0x29]
movss xmm1, dword [r9 + 0x37f8]
xorps xmm10, xmm10
movss xmm11, dword [0x180060874]
movss xmm12, dword [0x180060648]
movss xmm8, dword [rax + 0x18]
movss xmm6, dword [rax + 0x1c]
mulss xmm1, xmm11
mov qword [rbp - 0x29], 0x3f149495
mov dword [rbp - 0x21], 0x3f800000
cvttss2si eax, xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm12
movss dword [rbp - 0x1d], xmm0
call fcn.180009c50
movss xmm2, dword [0x1800607dc]
movaps xmm0, xmm6
movss xmm7, dword [0x1800607b4]
movaps xmm9, xmm8
mov r8, qword [0x18006b1e0]
addss xmm0, xmm2
addss xmm9, xmm7
mov ecx, eax
movss dword [rbp + 0x6b], xmm0
movss dword [rbp + 0x67], xmm9
test eax, 0xff000000
je 0x180047515
test r8, r8
jne 0x1800474bc
mov rax, qword [rbx + 0x38]
mov r8, qword [rax + 8]
movups xmm0, xmmword [rbx + 0x88]
mov byte [rsp + 0x48], dil
lea rax, [0x18005db08]
movss dword [rsp + 0x40], xmm10
lea r9, [rbp + 0x67]
mov qword [rsp + 0x38], rax
mov rdx, rbx
lea rax, str.Luna
mov qword [rsp + 0x30], rax
lea rax, [rbp - 0x29]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], ecx
mov rcx, r8
movups xmmword [rbp - 0x29], xmm0
call fcn.18002fb90
mov r8, qword [0x18006b1e0]
mov r9, qword [0x18006b068]
movss xmm1, dword [r9 + 0x37f8]
lea rcx, [rbp - 0x29]
mulss xmm1, xmm11
mov dword [rbp - 0x29], 0x3ef2f2f4
mov dword [rbp - 0x25], 0x3e7cfcfe
mov dword [rbp - 0x21], 0x3f5fdfe1
cvttss2si eax, xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm12
movss dword [rbp - 0x1d], xmm0
call fcn.180009c50
movss dword [rbp + 0x67], xmm9
movaps xmm0, xmm6
movss xmm9, dword [0x1800607c4]
mov ecx, eax
addss xmm0, dword [0x180060818]
movss dword [rbp + 0x6b], xmm0
test eax, 0xff000000
je 0x1800475e8
test r8, r8
jne 0x18004758b
mov rax, qword [rbx + 0x38]
mov r8, qword [rax + 8]
movups xmm0, xmmword [rbx + 0x88]
mov byte [rsp + 0x48], dil
lea rax, [0x180060186]
movss dword [rsp + 0x40], xmm10
lea r9, [rbp + 0x67]
mov qword [rsp + 0x38], rax
movaps xmm2, xmm9
lea rax, str.COMBAT
mov rdx, rbx
mov qword [rsp + 0x30], rax
lea rax, [rbp - 0x29]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], ecx
mov rcx, r8
movups xmmword [rbp - 0x29], xmm0
call fcn.18002fb90
mov r8, qword [0x18006b1e0]
mov r9, qword [0x18006b068]
movss xmm0, dword [r9 + 0x37f8]
lea rcx, [rbp - 0x29]
mulss xmm0, xmm11
mov dword [rbp - 0x29], 0x3ef2f2f4
mov dword [rbp - 0x25], 0x3e7cfcfe
mov dword [rbp - 0x21], 0x3f5fdfe1
cvttss2si eax, xmm0
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mulss xmm1, xmm12
movss dword [rbp - 0x1d], xmm1
call fcn.180009c50
movaps xmm0, xmm8
movaps xmm1, xmm6
addss xmm0, xmm7
mov ecx, eax
addss xmm1, dword [0x180060850]
movss dword [rbp + 0x67], xmm0
movss dword [rbp + 0x6b], xmm1
test eax, 0xff000000
je 0x1800476b9
test r8, r8
jne 0x18004765c
mov rax, qword [rbx + 0x38]
mov r8, qword [rax + 8]
movups xmm0, xmmword [rbx + 0x88]
mov byte [rsp + 0x48], dil
lea rax, [0x180060190]
movss dword [rsp + 0x40], xmm10
lea r9, [rbp + 0x67]
mov qword [rsp + 0x38], rax
movaps xmm2, xmm9
lea rax, str.MOVEMENT
mov rdx, rbx
mov qword [rsp + 0x30], rax
lea rax, [rbp - 0x29]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], ecx
mov rcx, r8
movups xmmword [rbp - 0x29], xmm0
call fcn.18002fb90
mov r8, qword [0x18006b1e0]
mov r9, qword [0x18006b068]
movss xmm0, dword [r9 + 0x37f8]
lea rcx, [rbp - 0x29]
mulss xmm0, xmm11
mov dword [rbp - 0x29], 0x3ef2f2f4
mov dword [rbp - 0x25], 0x3e7cfcfe
mov dword [rbp - 0x21], 0x3f5fdfe1
cvttss2si eax, xmm0
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mulss xmm1, xmm12
movss dword [rbp - 0x1d], xmm1
call fcn.180009c50
addss xmm8, xmm7
mov ecx, eax
addss xmm6, dword [0x180060870]
movss dword [rbp + 0x67], xmm8
movss dword [rbp + 0x6b], xmm6
test eax, 0xff000000
je 0x18004777e
test r8, r8
jne 0x180047728
mov rax, qword [rbx + 0x38]
mov r8, qword [rax + 8]
movups xmm0, xmmword [rbx + 0x88]
mov byte [rsp + 0x48], dil
lea rax, [0x1800601a1]
movss dword [rsp + 0x40], xmm10
lea r9, [rbp + 0x67]
mov qword [rsp + 0x38], rax
movaps xmm2, xmm9
lea rax, str.OPTIONALS
mov rdx, rbx
mov qword [rsp + 0x30], rax
lea rax, [rbp - 0x29]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], ecx
mov rcx, r8
movups xmmword [rbp - 0x29], xmm0
call fcn.18002fb90
mov r9, qword [0x18006b068]
mov rax, qword [r9 + 0x3ed8]
lea rdx, str.Aura
cmp dword [0x18006b510], edi
lea rcx, [0x18005eb84]
sete r8b
mov byte [rax + 0x98], 1
mov rax, qword [r9 + 0x3ed8]
movss xmm0, dword [rax + 0x18]
subss xmm0, dword [rax + 0x64]
movss xmm2, dword [rax + 0x1c]
subss xmm2, dword [rax + 0x68]
addss xmm0, xmm7
addss xmm2, dword [0x180060824]
movss dword [rax + 0xe0], xmm0
movss dword [rax + 0xe4], xmm2
movss xmm1, dword [rax + 0xf8]
maxss xmm1, xmm0
movss xmm0, dword [rax + 0xfc]
maxss xmm0, xmm2
movss dword [rax + 0xf8], xmm1
movss dword [rax + 0xfc], xmm0
call fcn.18003ce30
test al, al
je 0x180047814
mov dword [0x18006b510], edi
jmp 0x18004781a
mov edi, dword [0x18006b510]
mov rcx, qword [0x18006b068]
lea rdx, str.TpAura
cmp edi, 1
sete r8b
mov rax, qword [rcx + 0x3ed8]
mov byte [rax + 0x98], 1
mov rax, qword [rcx + 0x3ed8]
lea rcx, [0x1800601ac]
movss xmm0, dword [rax + 0x18]
subss xmm0, dword [rax + 0x64]
movss xmm2, dword [rax + 0x1c]
subss xmm2, dword [rax + 0x68]
addss xmm0, xmm7
addss xmm2, dword [0x18006083c]
movss dword [rax + 0xe0], xmm0
movss dword [rax + 0xe4], xmm2
movss xmm1, dword [rax + 0xf8]
maxss xmm1, xmm0
movss xmm0, dword [rax + 0xfc]
maxss xmm0, xmm2
movss dword [rax + 0xf8], xmm1
movss dword [rax + 0xfc], xmm0
call fcn.18003ce30
test al, al
je 0x1800478b9
mov edx, 1
mov dword [0x18006b510], edx
jmp 0x1800478bf
mov edx, dword [0x18006b510]
mov rcx, qword [0x18006b068]
cmp edx, 3
lea rdx, str.Glide
sete r8b
mov rax, qword [rcx + 0x3ed8]
mov byte [rax + 0x98], 1
mov rax, qword [rcx + 0x3ed8]
lea rcx, [0x18005eb9c]
movss xmm0, dword [rax + 0x18]
subss xmm0, dword [rax + 0x64]
movss xmm2, dword [rax + 0x1c]
subss xmm2, dword [rax + 0x68]
addss xmm0, xmm7
addss xmm2, dword [0x180060860]
movss dword [rax + 0xe0], xmm0
movss dword [rax + 0xe4], xmm2
movss xmm1, dword [rax + 0xf8]
maxss xmm1, xmm0
movss xmm0, dword [rax + 0xfc]
maxss xmm0, xmm2
movss dword [rax + 0xf8], xmm1
movss dword [rax + 0xfc], xmm0
call fcn.18003ce30
test al, al
je 0x18004795e
mov edx, 3
mov dword [0x18006b510], edx
jmp 0x180047964
mov edx, dword [0x18006b510]
mov rcx, qword [0x18006b068]
cmp edx, 5
lea rdx, str.ClickTP
sete r8b
mov rax, qword [rcx + 0x3ed8]
mov byte [rax + 0x98], 1
mov rax, qword [rcx + 0x3ed8]
lea rcx, [0x1800601b0]
movss xmm0, dword [rax + 0x18]
subss xmm0, dword [rax + 0x64]
movss xmm2, dword [rax + 0x1c]
subss xmm2, dword [rax + 0x68]
addss xmm0, xmm7
addss xmm2, dword [0x180060868]
movss dword [rax + 0xe0], xmm0
movss dword [rax + 0xe4], xmm2
movss xmm1, dword [rax + 0xf8]
maxss xmm1, xmm0
movss xmm0, dword [rax + 0xfc]
maxss xmm0, xmm2
movss dword [rax + 0xf8], xmm1
movss dword [rax + 0xfc], xmm0
call fcn.18003ce30
test al, al
je 0x180047a03
mov edx, 5
mov dword [0x18006b510], edx
jmp 0x180047a09
mov edx, dword [0x18006b510]
mov rcx, qword [0x18006b068]
cmp edx, 6
lea rdx, str.Miscs
sete r8b
mov rax, qword [rcx + 0x3ed8]
mov byte [rax + 0x98], 1
mov rax, qword [rcx + 0x3ed8]
lea rcx, [0x18005ebb4]
movss xmm0, dword [rax + 0x18]
subss xmm0, dword [rax + 0x64]
movss xmm2, dword [rax + 0x1c]
subss xmm2, dword [rax + 0x68]
addss xmm0, xmm7
addss xmm2, dword [0x180060878]
movss dword [rax + 0xe0], xmm0
movss dword [rax + 0xe4], xmm2
movss xmm1, dword [rax + 0xf8]
maxss xmm1, xmm0
movss xmm0, dword [rax + 0xfc]
maxss xmm0, xmm2
movss dword [rax + 0xf8], xmm1
movss dword [rax + 0xfc], xmm0
call fcn.18003ce30
test al, al
je 0x180047aa8
mov edx, 6
mov dword [0x18006b510], edx
jmp 0x180047aae
mov edx, dword [0x18006b510]
mov rcx, qword [0x18006b068]
cmp edx, 7
lea rdx, str.WhiteList
sete r8b
mov rax, qword [rcx + 0x3ed8]
mov byte [rax + 0x98], 1
mov rax, qword [rcx + 0x3ed8]
lea rcx, [0x18005ebdc]
movss xmm0, dword [rax + 0x18]
subss xmm0, dword [rax + 0x64]
movss xmm2, dword [rax + 0x1c]
subss xmm2, dword [rax + 0x68]
addss xmm0, xmm7
addss xmm2, dword [0x180060880]
movss dword [rax + 0xe0], xmm0
movss dword [rax + 0xe4], xmm2
movss xmm1, dword [rax + 0xf8]
maxss xmm1, xmm0
movss xmm0, dword [rax + 0xfc]
maxss xmm0, xmm2
movss dword [rax + 0xf8], xmm1
movss dword [rax + 0xfc], xmm0
call fcn.18003ce30
test al, al
je 0x180047b4d
mov eax, 7
mov dword [0x18006b510], eax
jmp 0x180047b53
mov eax, dword [0x18006b510]
cmp eax, 7
ja case.0x180047b6b.2
lea rdx, [0x180000000]
cdqe
mov ecx, dword [rdx + rax*4 + 0x47bd0]
add rcx, rdx
jmp rcx
call fcn.180045330
jmp case.0x180047b6b.2
call fcn.1800456f0
jmp case.0x180047b6b.2
call fcn.180045b40
jmp case.0x180047b6b.2
call fcn.180045fb0
jmp case.0x180047b6b.2
call fcn.1800466f0
jmp case.0x180047b6b.2
call fcn.1800463e0
lea r11, [rsp + 0xd0]
mov rbx, qword [r11 + 0x18]
mov rdi, qword [r11 + 0x20]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
movaps xmm11, xmmword [r11 - 0x60]
movaps xmm12, xmmword [r11 - 0x70]
mov rsp, r11
pop rbp
ret