Function at 0x1800915e0
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x18], rbp
mov qword [rax + 0x20], rsi
push rdi
push r14
push r15
sub rsp, 0xd0
movaps xmmword [rax - 0x28], xmm6
xor edi, edi
movaps xmmword [rax - 0x38], xmm7
movabs rbx, 0x50fac3a3e030a6e1
movaps xmmword [rax - 0x48], xmm8
movaps xmmword [rax - 0x58], xmm9
mov eax, dword [0x180384d88]
mov qword [rsp + 0xf8], rdi
mov dword [rsp + 0xf8], eax
mov rax, qword [rsp + 0xf8]
mov qword [0x18035ebb8], rax
mov dword [0x18035eaf0], edi
mov qword [0x1803afcd8], rbx
mov dword [0x18035eae0], 1
call fcn.180110360
mov qword [rsp + 0xf8], rdi
mov ecx, dword [rax]
movabs rax, 0x3fef770d40960d5a
mov dword [rsp + 0xf8], ecx
mov qword [0x1803afcd8], rax
mov rax, qword [rsp + 0xf8]
mov qword [0x18035ebb8], rax
mov dword [0x18035eaf0], edi
mov qword [0x18035ebc0], rdi
mov dword [0x18035eae0], 2
call fcn.180110360
mov qword [rsp + 0xf8], rdi
mov qword [0x1803afcd8], rbx
movups xmm0, xmmword [rax]
movsd xmm1, qword [rax + 0x10]
mov eax, dword [0x180384d88]
mov dword [rsp + 0xf8], eax
mov rax, qword [rsp + 0xf8]
mov qword [0x18035ebb8], rax
movups xmmword [rsp + 0x70], xmm0
mov dword [0x18035eaf0], edi
movsd qword [rsp + 0x80], xmm1
mov dword [0x18035eae0], 1
call fcn.180110360
movabs r15, 0xd80958fc74e988a6
mov dword [0x18035eae0], edi
mov qword [0x1803afcd8], r15
mov dword [0x18035eaf0], edi
call fcn.180110360
mov esi, edi
lea r14, str.WEAPON_AIRSTRIKE_ROCKET
mov ebx, edi
mov ebp, dword [rax]
nop dword [rax + rax]
mov eax, esi
movsx ecx, byte [rax + r14]
call fcn.18022e718
add eax, ebx
inc esi
imul ebx, eax, 0x401
mov eax, ebx
shr eax, 6
xor ebx, eax
cmp esi, 0x17
jb 0x180091730
movss xmm0, dword [0x1802fc858]
lea ecx, [rbx + rbx*8]
movss xmm9, dword [rsp + 0x80]
mov eax, ecx
movss xmm6, dword [rsp + 0x78]
movaps xmm8, xmm9
movss xmm7, dword [rsp + 0x70]
movaps xmm1, xmm6
addss xmm8, dword [0x1802fb7e4]
movss dword [rsp + 0x60], xmm0
movaps xmm3, xmm7
mov dword [rsp + 0x58], 1
movaps xmm0, xmm7
mov dword [rsp + 0x50], 1
mov dword [rsp + 0x48], ebp
shr eax, 0xb
movaps xmm2, xmm8
xor eax, ecx
imul ecx, eax, 0x8001
mov dword [rsp + 0x40], ecx
mov dword [rsp + 0x38], 1
mov dword [rsp + 0x30], 0x64
movss dword [rsp + 0x28], xmm9
movss dword [rsp + 0x20], xmm6
call fcn.1800e3670
mov dword [0x18035eae0], edi
mov dword [0x18035eaf0], edi
mov qword [0x1803afcd8], r15
call fcn.180110360
mov esi, edi
mov ebx, edi
mov ebp, dword [rax]
nop dword [rax + rax]
mov eax, esi
movsx ecx, byte [rax + r14]
call fcn.18022e718
add eax, ebx
inc esi
imul ebx, eax, 0x401
mov eax, ebx
shr eax, 6
xor ebx, eax
cmp esi, 0x17
jb 0x180091800
movss xmm0, dword [0x1802fca70]
lea eax, [rbx + rbx*8]
movss dword [rsp + 0x60], xmm0
mov ecx, eax
mov dword [rsp + 0x58], 1
movaps xmm1, xmm6
addss xmm1, dword [0x1802fb7e4]
mov dword [rsp + 0x50], 1
movaps xmm3, xmm7
mov dword [rsp + 0x48], ebp
movaps xmm2, xmm8
shr ecx, 0xb
movaps xmm0, xmm7
xor ecx, eax
imul eax, ecx, 0x8001
mov dword [rsp + 0x40], eax
mov dword [rsp + 0x38], 1
mov dword [rsp + 0x30], 0x64
movss dword [rsp + 0x28], xmm9
movss dword [rsp + 0x20], xmm6
call fcn.1800e3670
mov dword [0x18035eae0], edi
mov dword [0x18035eaf0], edi
mov qword [0x1803afcd8], r15
call fcn.180110360
mov esi, edi
mov ebx, edi
mov ebp, dword [rax]
nop dword [rax]
mov eax, esi
movsx ecx, byte [rax + r14]
call fcn.18022e718
add eax, ebx
inc esi
imul ebx, eax, 0x401
mov eax, ebx
shr eax, 6
xor ebx, eax
cmp esi, 0x17
jb 0x1800918b0
movss xmm0, dword [0x1802fc670]
lea eax, [rbx + rbx*8]
movss dword [rsp + 0x60], xmm0
mov ecx, eax
mov dword [rsp + 0x58], 1
movaps xmm4, xmm7
addss xmm4, dword [0x1802fb71c]
mov dword [rsp + 0x50], 1
movaps xmm3, xmm7
mov dword [rsp + 0x48], ebp
movaps xmm2, xmm8
shr ecx, 0xb
movaps xmm1, xmm6
xor ecx, eax
imul eax, ecx, 0x8001
movaps xmm0, xmm4
mov dword [rsp + 0x40], eax
mov dword [rsp + 0x38], 1
mov dword [rsp + 0x30], 0x64
movss dword [rsp + 0x28], xmm9
movss dword [rsp + 0x20], xmm6
call fcn.1800e3670
mov dword [0x18035eae0], edi
mov dword [0x18035eaf0], edi
mov qword [0x1803afcd8], r15
call fcn.180110360
mov esi, edi
mov ebx, edi
mov ebp, dword [rax]
mov eax, esi
movsx ecx, byte [rax + r14]
call fcn.18022e718
add eax, ebx
inc esi
imul ebx, eax, 0x401
mov eax, ebx
shr eax, 6
xor ebx, eax
cmp esi, 0x17
jb 0x180091960
movss xmm0, dword [0x1802fc90c]
lea eax, [rbx + rbx*8]
movss dword [rsp + 0x60], xmm0
mov ecx, eax
mov dword [rsp + 0x58], 1
movaps xmm4, xmm7
subss xmm4, dword [0x1802fb7e4]
mov dword [rsp + 0x50], 1
movaps xmm3, xmm7
mov dword [rsp + 0x48], ebp
movaps xmm2, xmm8
shr ecx, 0xb
movaps xmm1, xmm6
xor ecx, eax
imul eax, ecx, 0x8001
movaps xmm0, xmm4
mov dword [rsp + 0x40], eax
mov dword [rsp + 0x38], 1
mov dword [rsp + 0x30], 0x64
movss dword [rsp + 0x28], xmm9
movss dword [rsp + 0x20], xmm6
call fcn.1800e3670
mov dword [0x18035eae0], edi
mov dword [0x18035eaf0], edi
mov qword [0x1803afcd8], r15
call fcn.180110360
mov ebx, edi
mov esi, dword [rax]
nop
mov eax, edi
movsx ecx, byte [rax + r14]
call fcn.18022e718
add eax, ebx
inc edi
imul ebx, eax, 0x401
mov eax, ebx
shr eax, 6
xor ebx, eax
cmp edi, 0x17
jb 0x180091a10
movss xmm3, dword [0x1802fcb54]
lea eax, [rbx + rbx*8]
movss dword [rsp + 0x60], xmm3
mov ecx, eax
mov dword [rsp + 0x58], 1
movaps xmm1, xmm6
subss xmm1, dword [0x1802fb694]
mov dword [rsp + 0x50], 1
movaps xmm3, xmm7
mov dword [rsp + 0x48], esi
movaps xmm2, xmm8
shr ecx, 0xb
movaps xmm0, xmm7
xor ecx, eax
imul eax, ecx, 0x8001
mov dword [rsp + 0x40], eax
mov dword [rsp + 0x38], 1
mov dword [rsp + 0x30], 0x64
movss dword [rsp + 0x28], xmm9
movss dword [rsp + 0x20], xmm6
call fcn.1800e3670
lea r11, [rsp + 0xd0]
mov rbx, qword [r11 + 0x20]
mov rbp, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
mov rsp, r11
pop r15
pop r14
pop rdi
ret