Function at 0x1800e6b10
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 ebx, ebx
movaps xmmword [rax - 0x38], xmm7
movabs rdi, 0x50fac3a3e030a6e1
movaps xmmword [rax - 0x48], xmm8
movaps xmmword [rax - 0x58], xmm9
mov eax, dword [0x1805b1140]
mov qword [rsp + 0xf8], rbx
mov dword [rsp + 0xf8], eax
mov rax, qword [rsp + 0xf8]
mov qword [0x180587120], rax
mov dword [0x1805870f8], ebx
mov qword [0x1805dd278], rdi
mov dword [0x1805870e8], 1
call fcn.1801e4620
mov qword [rsp + 0xf8], rbx
mov ecx, dword [rax]
movabs rax, 0x3fef770d40960d5a
mov dword [rsp + 0xf8], ecx
mov qword [0x1805dd278], rax
mov rax, qword [rsp + 0xf8]
mov qword [0x180587120], rax
mov dword [0x1805870f8], ebx
mov qword [0x180587128], rbx
mov dword [0x1805870e8], 2
call fcn.1801e4620
mov qword [rsp + 0xf8], rbx
mov qword [0x1805dd278], rdi
movsd xmm0, qword [rax + 0x10]
movups xmm7, xmmword [rax]
mov eax, dword [0x1805b1140]
mov dword [rsp + 0xf8], eax
mov rax, qword [rsp + 0xf8]
mov qword [0x180587120], rax
movsd qword [rsp + 0x80], xmm0
mov dword [0x1805870f8], ebx
mov dword [0x1805870e8], 1
call fcn.1801e4620
movabs r15, 0xd80958fc74e988a6
mov dword [0x1805870e8], ebx
mov qword [0x1805dd278], r15
mov dword [0x1805870f8], ebx
call fcn.1801e4620
mov esi, ebx
lea r14, str.WEAPON_AIRSTRIKE_ROCKET
mov edi, ebx
mov ebp, dword [rax]
nop word [rax + rax]
mov eax, esi
movsx ecx, byte [rax + r14]
call fcn.180370a88
add eax, edi
inc esi
imul edi, eax, 0x401
mov eax, edi
shr eax, 6
xor edi, eax
cmp esi, 0x17
jb 0x1800e6c60
movss xmm0, dword [0x18050552c]
lea ecx, [rdi + rdi*8]
movss xmm9, dword [rsp + 0x80]
mov eax, ecx
movss dword [rsp + 0x60], xmm0
movaps xmm8, xmm9
addss xmm8, dword [0x1805044a4]
mov dword [rsp + 0x58], 1
movaps xmm6, xmm7
mov dword [rsp + 0x50], 1
movaps xmm3, xmm7
mov dword [rsp + 0x48], ebp
movaps xmm0, xmm7
shufps xmm6, xmm7, 0xaa
shr eax, 0xb
movaps xmm2, xmm8
xor eax, ecx
movaps xmm1, xmm6
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.18015cc10
mov dword [0x1805870e8], ebx
mov dword [0x1805870f8], ebx
mov qword [0x1805dd278], r15
call fcn.1801e4620
mov esi, ebx
mov edi, ebx
mov ebp, dword [rax]
mov eax, esi
movsx ecx, byte [rax + r14]
call fcn.180370a88
add eax, edi
inc esi
imul edi, eax, 0x401
mov eax, edi
shr eax, 6
xor edi, eax
cmp esi, 0x17
jb 0x1800e6d23
movss xmm0, dword [0x180505748]
lea eax, [rdi + rdi*8]
movss dword [rsp + 0x60], xmm0
mov ecx, eax
mov dword [rsp + 0x58], 1
movaps xmm1, xmm6
addss xmm1, dword [0x1805044a4]
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.18015cc10
mov dword [0x1805870e8], ebx
mov dword [0x1805870f8], ebx
mov qword [0x1805dd278], r15
call fcn.1801e4620
mov esi, ebx
mov edi, ebx
mov ebp, dword [rax]
mov eax, esi
movsx ecx, byte [rax + r14]
call fcn.180370a88
add eax, edi
inc esi
imul edi, eax, 0x401
mov eax, edi
shr eax, 6
xor edi, eax
cmp esi, 0x17
jb 0x1800e6dd0
movss xmm0, dword [0x180505340]
lea eax, [rdi + rdi*8]
movss dword [rsp + 0x60], xmm0
mov ecx, eax
mov dword [rsp + 0x58], 1
movaps xmm4, xmm7
addss xmm4, dword [0x1805043d0]
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.18015cc10
mov dword [0x1805870e8], ebx
mov dword [0x1805870f8], ebx
mov qword [0x1805dd278], r15
call fcn.1801e4620
mov esi, ebx
mov edi, ebx
mov ebp, dword [rax]
mov eax, esi
movsx ecx, byte [rax + r14]
call fcn.180370a88
add eax, edi
inc esi
imul edi, eax, 0x401
mov eax, edi
shr eax, 6
xor edi, eax
cmp esi, 0x17
jb 0x1800e6e80
movss xmm0, dword [0x1805055e0]
lea eax, [rdi + rdi*8]
movss dword [rsp + 0x60], xmm0
mov ecx, eax
mov dword [rsp + 0x58], 1
movaps xmm4, xmm7
subss xmm4, dword [0x1805044a4]
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.18015cc10
mov dword [0x1805870e8], ebx
mov dword [0x1805870f8], ebx
mov qword [0x1805dd278], r15
call fcn.1801e4620
mov edi, ebx
mov esi, dword [rax]
nop
mov eax, ebx
movsx ecx, byte [rax + r14]
call fcn.180370a88
add eax, edi
inc ebx
imul edi, eax, 0x401
mov eax, edi
shr eax, 6
xor edi, eax
cmp ebx, 0x17
jb 0x1800e6f30
movss xmm3, dword [0x18050582c]
lea eax, [rdi + rdi*8]
movss dword [rsp + 0x60], xmm3
mov ecx, eax
mov dword [rsp + 0x58], 1
movaps xmm1, xmm6
subss xmm1, dword [0x180504354]
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.18015cc10
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