Function at 0x18014d6d0
Capabilities:
Encode data using base64
Encode data using xor
Hash data using fnv

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rdx
mov qword [rax + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x3c8]
sub rsp, 0x488
movaps xmmword [rax - 0x58], xmm6
movaps xmmword [rax - 0x68], xmm7
movaps xmmword [rax - 0x78], xmm8
movaps xmmword [rax - 0x88], xmm9
movaps xmmword [rax - 0x98], xmm10
movaps xmmword [rax - 0xa8], xmm11
movaps xmmword [rax - 0xb8], xmm12
movaps xmmword [rax - 0xc8], xmm13
movaps xmmword [rax - 0xd8], xmm14
movaps xmmword [rax - 0xe8], xmm15
mov r14, rdx
xor esi, esi
mov dword [rsp + 0x68], esi
mov dword [rbp + 0x3d0], esi
cmp dword [0x18023fcf4], esi
je 0x18014fd41
mov rax, qword [0x18022a880]
mov qword [rbp + 0x80], rax
test rax, rax
je 0x18014fd41
mov dword [rbp + 0x3d0], esi
lea r8, [rbp + 0x3d0]
lea rdx, [rbp + 0x60]
lea rcx, [0x18022a890]
call fcn.1800b3fa0
mov rcx, qword [rax]
mov rax, qword [rcx + 0x18]
mov qword [rbp + 0xf0], rax
mov rcx, qword [rcx + 0x20]
mov qword [rbp + 0x110], rcx
movss xmm7, dword [0x180206650]
cmp rax, rcx
je 0x18014fd2e
movss xmm11, dword [0x1802065c0]
movss xmm14, dword [0x180206718]
movss xmm15, dword [0x1802066fc]
movss xmm10, dword [0x180206858]
movss xmm8, dword [0x1802067f0]
movss xmm12, dword [0x18020673c]
movss xmm13, dword [0x180206780]
movss xmm9, dword [0x180206600]
nop dword [rax + rax]
mov r12, qword [rax]
mov qword [rbp + 0x100], r12
mov rax, qword [r12 + 0x10]
lea rcx, [r12 + 0x10]
call qword [rax + 0x48]
mov edi, eax
mov dword [rbp + 0x40], eax
mov rcx, r12
call fcn.1800a8b40
cmp byte [rax], 0
jne 0x18014fd0f
mov rcx, r12
call fcn.1800a8e50
mov ecx, dword [rax]
shr ecx, 0xd
test cl, 1
jne 0x18014fd0f
mov rax, qword [r12 + 0x10]
lea rcx, [r12 + 0x10]
call qword [rax + 0x40]
test al, al
je 0x18014d8e7
cmp dword [0x18023fc74], 0
je 0x18014d8c7
cmp byte [0x18023fd71], 0
je 0x18014d8c3
lea rdx, str.Default
lea rcx, [rbp + 0x10]
call fcn.1800922c0
nop
or esi, 1
mov dword [rsp + 0x68], esi
mov dword [rbp + 0x3d0], esi
mov dword [rbp + 0x3e0], edi
lea r8, [rbp + 0x3e0]
lea rdx, [rbp + 0x2d0]
lea rcx, [0x18022a990]
call fcn.1800b41e0
mov rcx, qword [rax]
mov ebx, dword [rcx + 0x14]
lea rdx, [rbp + 0x10]
lea rcx, [0x180240260]
call fcn.180140160
cmp ebx, dword [rax + 4]
jle 0x18014d8c7
xor bl, bl
jmp 0x18014d8c9
mov bl, 1
test sil, 1
je 0x18014d8df
and esi, 0xfffffffe
mov dword [rsp + 0x68], esi
lea rcx, [rbp + 0x10]
call fcn.180092690
test bl, bl
jne 0x18014fd0f
mov rcx, qword [0x180230b20]
mov rax, qword [rcx]
call qword [rax + 0x60]
cmp edi, eax
je 0x18014da2d
test byte [0x18023fef4], 8
je 0x18014d932
mov dword [rbp + 0x3d0], edi
lea r8, [rbp + 0x3d0]
lea rdx, [rbp + 0x240]
lea rcx, [0x18022a910]
call fcn.1800d7fd0
mov rcx, qword [rax]
cmp byte [rcx + 0x14], 0
jne 0x18014d9cb
test byte [0x18023fef4], 0x10
je 0x18014d9cf
xorps xmm0, xmm0
movups xmmword [rbp + 0x10], xmm0
mov qword [rbp + 0x20], 7
mov qword [rbp + 0x28], 0xf
mov rax, qword [str.Default]
mov dword [rbp + 0x10], eax
movzx eax, word [0x1801f7cc4]
mov word [rbp + 0x14], ax
movzx eax, byte [0x1801f7cc6]
mov byte [rbp + 0x16], al
mov byte [rbp + 0x17], 0
or esi, 2
mov dword [rsp + 0x68], esi
mov dword [rbp + 0x3d0], esi
mov dword [rbp + 0x3e0], edi
lea r8, [rbp + 0x3e0]
lea rdx, [rbp + 0x250]
lea rcx, [0x18022a990]
call fcn.1800b41e0
mov rcx, qword [rax]
mov ebx, dword [rcx + 0x14]
lea r8, [rbp + 0x10]
lea rdx, [rbp + 0x260]
lea rcx, [0x180240260]
call fcn.1801401c0
mov rcx, qword [rax]
cmp ebx, dword [rcx + 0x34]
jle 0x18014d9cf
xor bl, bl
jmp 0x18014d9d1
mov bl, 1
test sil, 2
je 0x18014d9e7
and esi, 0xfffffffd
mov dword [rsp + 0x68], esi
lea rcx, [rbp + 0x10]
call fcn.180092690
test bl, bl
je 0x18014da52
test byte [0x18023fef4], 1
jne 0x18014da0e
mov rcx, r12
call fcn.1800a99e0
mov ebx, dword [rax]
mov rcx, r14
call fcn.1800a99e0
cmp ebx, dword [rax]
jne 0x18014fd0f
test byte [0x18023fef4], 2
jne 0x18014da52
mov rcx, r12
call fcn.1800a99e0
mov ebx, dword [rax]
mov rcx, r14
call fcn.1800a99e0
cmp ebx, dword [rax]
jmp 0x18014da4c
test byte [0x18023fef4], 4
je 0x18014fd0f
mov rcx, qword [0x180230b28]
mov rax, qword [rcx]
call qword [rax + 0xf8]
test eax, eax
je 0x18014fd0f
mov rax, qword [0x180230b98]
mov rcx, qword [rax]
mov rbx, qword [rcx + 0x360]
mov rax, qword [r12 + 0x10]
lea rcx, [r12 + 0x10]
call qword [rax + 0x40]
mov ecx, dword [0x18023fe74]
test al, al
cmovne ecx, dword [0x18023fc74]
movd xmm1, ecx
cvtdq2ps xmm1, xmm1
divss xmm1, dword [0x18020683c]
mov rcx, qword [0x180230b98]
call rbx
mov dword [rbp + 0x3e8], 0
xor r14d, r14d
mov dword [rsp + 0x60], r14d
mov dword [rbp + 0x3e0], r14d
xor esi, esi
mov dword [rsp + 0x64], esi
mov rcx, r12
call fcn.1800a9ae0
mov rcx, r12
call fcn.1800a9be0
lea rcx, [r12 + 8]
mov rax, qword [rcx]
call qword [rax + 0x110]
mov rdi, rax
mov rdx, qword [r12 + 0x10]
lea rcx, [r12 + 0x10]
call qword [rdx + 0x48]
mov ebx, eax
mov rcx, qword [0x180230b20]
mov rdx, qword [rcx]
call qword [rdx + 0x60]
cmp ebx, eax
jne 0x18014db51
mov rcx, qword [0x180230b20]
mov qword [rbp + 0x8c], rsi
mov dword [rbp + 0x88], esi
mov rax, qword [rcx]
lea rdx, [rbp + 0x88]
call qword [rax + 0x98]
mov dword [rbp + 0x90], esi
mov dword [rbp + 0x88], esi
mov rdx, rdi
lea rcx, [rbp + 0x88]
call fcn.1800bdfe0
mov rax, qword [r12]
mov rcx, r12
call qword [rax + 0x48]
mov ecx, dword [rax]
mov dword [rdi + 0xc], ecx
mov ecx, dword [rax + 4]
mov dword [rdi + 0x1c], ecx
mov eax, dword [rax + 8]
mov dword [rdi + 0x2c], eax
lea rax, [rbp + 0xa8]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0xb4]
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0xb0]
lea r8, [rbp + 0xac]
mov rdx, rdi
mov rcx, r12
call fcn.18017e8f0
test al, al
je 0x18014dc14
movss xmm4, dword [rbp + 0xb0]
subss xmm4, dword [rbp + 0xac]
movaps xmm3, xmm4
mulss xmm3, xmm11
movaps xmm0, xmm3
addss xmm0, dword [rbp + 0xac]
cvttss2si r13d, xmm0
mov dword [rbp + 0x3e8], r13d
cvttss2si r14d, dword [rbp + 0xa8]
mov dword [rsp + 0x60], r14d
addss xmm3, xmm3
subss xmm4, xmm3
cvttss2si eax, xmm4
mov dword [rbp + 0x3e0], eax
movss xmm0, dword [rbp + 0xb4]
subss xmm0, dword [rbp + 0xa8]
cvttss2si esi, xmm0
mov dword [rsp + 0x64], esi
cmp r13d, dword [0x18022a270]
jg 0x18014dc14
add eax, r13d
js 0x18014dc14
cmp r14d, dword [0x18022a274]
jg 0x18014dc14
lea eax, [rsi + r14]
test eax, eax
js 0x18014dc14
mov al, 1
jmp 0x18014dc16
xor al, al
test al, al
je 0x18014fd04
xor r14d, r14d
mov dword [rbp + 0x3d0], r14d
mov dword [rbp - 0x80], 2
xor r13d, r13d
mov dword [rbp + 0xa0], r13d
lea r8, [rbp + 0xa0]
lea rdx, [rbp + 0x270]
call fcn.18017d4c0
mov rax, qword [rax]
add rax, 0x18
mov qword [rsp + 0x78], rax
movzx eax, byte [0x18023fa71]
mov byte [rsp + 0x20], al
mov r9, r12
mov r8, qword [rbp + 0x3d8]
lea rdx, [rbp - 4]
call fcn.180179e90
mov rax, qword [r12]
mov rdx, qword [rax + 0x358]
mov rcx, r12
call rdx
mov esi, eax
mov rdx, qword [r12 + 0x10]
lea rcx, [r12 + 0x10]
call qword [rdx + 0x40]
test al, al
je 0x18014dcb8
mov rdx, qword [r12 + 0x10]
lea rcx, [r12 + 0x10]
call qword [rdx + 0x48]
mov edx, eax
mov rcx, qword [rbp + 0x80]
call fcn.1800ff8e0
mov edi, eax
jmp 0x18014dcc2
mov rcx, r12
call fcn.1800aeb00
mov edi, dword [rax]
mov rcx, r12
call fcn.1800a9ee0
mov r15d, dword [rax]
mov dword [rbp + 0x44], r15d
mov eax, dword [0x18023fcf4]
mov ebx, dword [rbp - 4]
bt eax, 0xb
jae 0x18014dea7
movdqa xmm0, xmmword [0x180206cc0]
movdqu xmmword [rsp + 0x50], xmm0
lea rax, [rsp + 0x50]
mov qword [rbp + 0x130], rax
lea rax, [rsp + 0x60]
mov qword [rbp + 0x138], rax
movaps xmm0, xmmword [rbp + 0x130]
movdqa xmmword [rbp + 0x60], xmm0
lea rdx, [rbp + 0x60]
lea rcx, [rbp + 0x10]
call fcn.1801246d0
mov r8d, ebx
mov rdx, rax
mov rcx, r12
call fcn.180151f10
movdqa xmm0, xmmword [0x180206cd0]
movdqu xmmword [rsp + 0x50], xmm0
lea rax, [rsp + 0x50]
mov qword [rbp + 0x140], rax
lea rax, [rsp + 0x60]
mov qword [rbp + 0x148], rax
movaps xmm0, xmmword [rbp + 0x140]
movdqa xmmword [rbp + 0x60], xmm0
lea rdx, [rbp + 0x60]
lea rcx, [rbp + 0x10]
call fcn.1801246d0
mov r8d, ebx
mov rdx, rax
mov rcx, r12
call fcn.180151f10
mov dword [rbp + 0xc0], r13d
mov dword [rbp + 0xc4], 4
mov eax, 1
mov dword [rbp + 0xc8], eax
lea rax, [rbp + 0xc0]
mov qword [rbp + 0x150], rax
lea rax, [rbp + 0xcc]
mov qword [rbp + 0x158], rax
movaps xmm0, xmmword [rbp + 0x150]
movdqa xmmword [rbp + 0x60], xmm0
lea rdx, [rbp + 0x60]
lea rcx, [rbp + 0x10]
call fcn.1801246d0
mov r8d, ebx
mov rdx, rax
mov rcx, r12
call fcn.180151f10
mov dword [rbp + 0xd0], 0xe
mov dword [rbp + 0xd4], 0xd
mov eax, 1
mov dword [rbp + 0xd8], eax
lea rax, [rbp + 0xd0]
mov qword [rbp + 0x160], rax
lea rax, [rbp + 0xdc]
mov qword [rbp + 0x168], rax
movaps xmm0, xmmword [rbp + 0x160]
movdqa xmmword [rbp + 0x60], xmm0
lea rdx, [rbp + 0x60]
lea rcx, [rbp + 0x10]
call fcn.1801246d0
mov r8d, ebx
mov rdx, rax
mov rcx, r12
call fcn.180151f10
mov dword [rbp + 0xe0], 0x11
mov dword [rbp + 0xe4], 0x10
mov eax, 1
mov dword [rbp + 0xe8], eax
lea rax, [rbp + 0xe0]
mov qword [rbp + 0x170], rax
lea rax, [rbp + 0xec]
mov qword [rbp + 0x178], rax
movaps xmm0, xmmword [rbp + 0x170]
movdqa xmmword [rbp + 0x60], xmm0
lea rdx, [rbp + 0x60]
lea rcx, [rbp + 0x10]
call fcn.1801246d0
mov r8d, ebx
mov rdx, rax
mov rcx, r12
call fcn.180151f10
mov eax, dword [0x18023fcf4]
bt eax, 0xa
jae 0x18014deeb
mov dword [rbp - 0x18], 0xff000000
lea rax, [rbp - 0x18]
mov qword [rsp + 0x30], rax
lea rax, [rbp - 4]
mov qword [rsp + 0x28], rax
mov eax, dword [rsp + 0x64]
mov dword [rsp + 0x20], eax
mov r9d, dword [rbp + 0x3e0]
mov r8d, dword [rsp + 0x60]
mov edx, dword [rbp + 0x3e8]
call fcn.18017afe0
mov eax, dword [0x18023fcf4]
test al, 2
je 0x18014e058
mov dword [rsp + 0x70], 0x3f800000
mov dword [rsp + 0x6c], r13d
movd xmm6, esi
cvtdq2ps xmm6, xmm6
movd xmm0, edi
cvtdq2ps xmm0, xmm0
divss xmm0, xmm6
movss dword [rsp + 0x50], xmm0
lea r8, [rsp + 0x70]
lea rdx, [rsp + 0x6c]
lea rcx, [rsp + 0x50]
call fcn.1800abbc0
movss xmm3, dword [rax]
mov r8d, dword [0x18023f9fc]
lea rdx, [rbp - 8]
lea rcx, [0x18023f9f8]
call fcn.18014d1d0
mov dword [rsp + 0x50], 7
mov dword [rbp - 0x14], 0xff000000
mov r14d, dword [rbp + 0x3e8]
mov byte [rsp + 0x48], 1
lea rax, [rsp + 0x50]
mov qword [rsp + 0x40], rax
lea rax, [rbp - 0x14]
mov qword [rsp + 0x38], rax
lea rax, [rbp - 8]
mov qword [rsp + 0x30], rax
movss dword [rsp + 0x28], xmm3
mov eax, dword [rsp + 0x64]
mov dword [rsp + 0x20], eax
mov r9d, 2
mov r8d, dword [rsp + 0x60]
lea edx, [r14 - 6]
call fcn.18017b120
cmp edi, esi
jle 0x18014e04c
divss xmm6, xmm14
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_floorf
mulss xmm0, xmm15
mov dword [rsp + 0x50], 0x3f800000
mov dword [rsp + 0x6c], r13d
mov eax, edi
sub eax, esi
movd xmm1, eax
cvtdq2ps xmm1, xmm1
divss xmm1, xmm0
movss dword [rsp + 0x70], xmm1
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x6c]
lea rcx, [rsp + 0x70]
call fcn.1800abbc0
movss xmm2, dword [rax]
mov eax, dword [0x18023f274]
mov dword [rbp - 8], eax
mov dword [rsp + 0x50], 7
mov dword [rbp - 0x10], r13d
mov byte [rsp + 0x48], 1
lea rax, [rsp + 0x50]
mov qword [rsp + 0x40], rax
lea rax, [rbp - 0x10]
mov qword [rsp + 0x38], rax
lea rax, [rbp - 8]
mov qword [rsp + 0x30], rax
movss dword [rsp + 0x28], xmm2
mov eax, dword [rsp + 0x64]
mov dword [rsp + 0x20], eax
mov r9d, 2
mov r8d, dword [rsp + 0x60]
lea edx, [r14 - 6]
call fcn.18017b120
mov r14d, 5
mov eax, dword [0x18023fcf4]
test al, 4
je 0x18014e107
mov dword [rsp + 0x50], 2
lea rcx, [0x180234e84]
cmp edi, esi
lea rax, [0x18023f274]
cmovg rcx, rax
mov eax, dword [rsp + 0x64]
add eax, dword [rsp + 0x60]
movd xmm3, eax
cvtdq2ps xmm3, xmm3
mov eax, edi
cmp esi, edi
cmovl eax, esi
movd xmm2, eax
cvtdq2ps xmm2, xmm2
movd xmm0, esi
cvtdq2ps xmm0, xmm0
divss xmm2, xmm0
mov esi, dword [rsp + 0x64]
movd xmm1, esi
cvtdq2ps xmm1, xmm1
mulss xmm2, xmm1
subss xmm3, xmm2
subss xmm3, dword [0x180206690]
cvttss2si r9d, xmm3
mov r8d, dword [rbp + 0x3e8]
sub r8d, r14d
sub r8d, 5
mov dword [rsp + 0x38], edi
lea rax, [0x1801b343c]
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x50]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
mov r14, qword [rsp + 0x78]
mov rdx, r14
lea rcx, [0x18022a230]
call fcn.18017ab60
jmp 0x18014e110
mov esi, dword [rsp + 0x64]
mov r14, qword [rsp + 0x78]
cmp r15d, 5
jne 0x18014e287
mov edx, 1
mov rcx, r12
call fcn.1800be8d0
mov rdi, rax
test rax, rax
je 0x18014e287
mov ecx, dword [0x18023fcf4]
test cl, 8
je 0x18014e1e2
mov rcx, rax
call fcn.1800aed00
cmp dword [rax], 0x3e6
jne 0x18014e158
movaps xmm6, xmm10
jmp 0x18014e15c
movaps xmm6, xmm8
mov rcx, rdi
call fcn.18014d490
movaps xmm0, xmm6
mulss xmm0, dword [rax]
movaps xmm1, xmm6
minss xmm1, xmm0
divss xmm1, xmm6
mov dword [rsp + 0x50], 3
mov dword [rbp - 0xc], 0xff000000
mov r8d, dword [rsp + 0x60]
add r8d, 4
add r8d, esi
mov byte [rsp + 0x48], r13b
lea rax, [rsp + 0x50]
mov qword [rsp + 0x40], rax
lea rax, [rbp - 0xc]
mov qword [rsp + 0x38], rax
lea rax, [0x18023f7f4]
mov qword [rsp + 0x30], rax
movss dword [rsp + 0x28], xmm1
mov dword [rsp + 0x20], 2
mov r9d, dword [rbp + 0x3e0]
mov edx, dword [rbp + 0x3e8]
call fcn.18017b120
mov dword [rbp - 0x80], 7
mov ecx, dword [0x18023fcf4]
test cl, 0x10
je 0x18014e287
mov dword [rsp + 0x50], 0x42c80000
mov dword [rsp + 0x6c], r13d
mov rcx, rdi
call fcn.18014d490
movss xmm0, dword [rax]
mulss xmm0, xmm8
movss dword [rbp + 0xb8], xmm0
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x6c]
lea rcx, [rbp + 0xb8]
call fcn.1800abbc0
movss xmm2, dword [rax]
cvtps2pd xmm2, xmm2
mov dword [rsp + 0x70], r13d
mov r9d, dword [rsp + 0x60]
add r9d, esi
mov esi, dword [rbp + 0x3e8]
mov edi, dword [rbp + 0x3e0]
lea r8d, [rsi + 4]
add r8d, edi
movsd qword [rsp + 0x38], xmm2
lea rax, str._.f__
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x70]
mov qword [rsp + 0x28], rax
lea rax, [0x180234e84]
mov qword [rsp + 0x20], rax
mov rdx, r14
lea rcx, [0x18022a230]
call fcn.18017ad80
jmp 0x18014e293
mov esi, dword [rbp + 0x3e8]
mov edi, dword [rbp + 0x3e0]
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x1b0], xmm0
movups xmmword [rbp + 0x1c0], xmm0
movups xmmword [rbp + 0x1d0], xmm0
movups xmmword [rbp + 0x1e0], xmm0
movups xmmword [rbp + 0x1f0], xmm0
movups xmmword [rbp + 0x200], xmm0
movups xmmword [rbp + 0x210], xmm0
movups xmmword [rbp + 0x220], xmm0
mov dword [rbp + 0x230], eax
mov rcx, qword [0x180230b20]
mov rax, qword [rcx]
lea r8, [rbp + 0x1b0]
mov edx, dword [rbp + 0x40]
call qword [rax + 0x40]
test al, al
je 0x18014e70a
mov eax, edi
cdq
sub eax, edx
sar eax, 1
lea edi, [rsi + rax]
test byte [0x18023fcf4], 1
je 0x18014e391
mov r13d, dword [r14 + 8]
add r13d, 2
lea rdx, [rbp + 0x1b0]
lea rcx, [rbp + 0x10]
call fcn.1800922c0
nop
lea rdx, [rbp + 0x10]
lea rcx, [rbp + 0x60]
call fcn.18017e140
nop
mov rcx, rax
call fcn.1800e6e80
mov ecx, 1
mov dword [rsp + 0x50], ecx
mov esi, dword [rsp + 0x60]
mov r9d, esi
sub r9d, r13d
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x50]
mov qword [rsp + 0x28], rax
lea rax, [0x180234e84]
mov qword [rsp + 0x20], rax
mov r8d, edi
mov rdx, r14
lea rcx, [0x18022a230]
call fcn.18017ad80
nop
lea rcx, [rbp + 0x60]
call fcn.1800f46c0
nop
lea rcx, [rbp + 0x10]
call fcn.180092690
jmp 0x18014e395
mov esi, dword [rsp + 0x60]
test dword [0x18023fcf4], 0x1000
je 0x18014e43d
lea rcx, [rbp + 0x10]
call fcn.180092420
nop
lea rcx, [rbp + 0x118]
call fcn.1801213d0
mov dword [rsp + 0x20], 1
lea r9, [rbp + 0x118]
lea r8, [rbp + 0x10]
mov edx, dword [rbp + 0x1f8]
lea rcx, [0x1802401d0]
call fcn.18013f110
test al, al
je 0x18014e434
mov eax, dword [r14 + 8]
add eax, 2
add r13d, eax
lea rcx, [rbp + 0x10]
call fcn.18006d780
mov ecx, 1
mov dword [rsp + 0x50], ecx
mov r9d, esi
sub r9d, r13d
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x50]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x118]
mov qword [rsp + 0x20], rax
mov r8d, edi
mov rdx, r14
lea rcx, [0x18022a230]
call fcn.18017ab60
nop
lea rcx, [rbp + 0x10]
call fcn.180092690
test dword [0x18023fcf4], 0x2000
je 0x18014e70a
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x60], xmm0
mov qword [rbp + 0x70], 0
lea rdx, [rbp + 0x1f8]
lea rcx, [0x180240220]
call fcn.180124350
mov r14, qword [rax]
mov r15, qword [rax + 8]
cmp r14, r15
je 0x18014e536
mov dword [rbp], 0xffffffff
mov dword [rbp + 4], 0
mov word [rbp + 8], 0x100
mov byte [rbp + 0xa], 0
mov rdx, r14
lea rcx, [rbp + 0x10]
call fcn.180092300
mov rsi, rax
mov qword [rsp + 0x50], rax
cmp qword [rax + 0x10], 0
je 0x18014e521
mov rdx, rax
lea rcx, [0x180240260]
call fcn.1800e3740
test al, al
je 0x18014e521
mov r8, rsi
lea rdx, [rbp + 0x280]
lea rcx, [0x180240260]
call fcn.1801283d0
mov rcx, qword [rax]
movsd xmm0, qword [rcx + 0x30]
movsd qword [rbp], xmm0
mov edi, dword [rcx + 0x38]
mov dword [rbp + 8], edi
mov rcx, rsi
call fcn.180092690
test dil, dil
je 0x18014e529
lea r8, [rbp]
mov rdx, r14
lea rcx, [rbp + 0x10]
call fcn.180140180
nop
lea rdx, [rbp + 0x10]
lea rcx, [rbp + 0x60]
call fcn.1801241b0
nop
lea rcx, [rbp + 0x10]
jmp 0x18014e524
mov rcx, rsi
call fcn.180092690
add r14, 0x20
cmp r14, r15
jne 0x18014e480
mov eax, dword [rbp + 0x40]
mov dword [rsp + 0x50], eax
lea r8, [rsp + 0x50]
lea rdx, [rbp + 0x290]
lea rcx, [0x18022a910]
call fcn.1800d7fd0
mov rcx, qword [rax]
cmp byte [rcx + 0x14], 0
je 0x18014e5be
lea rdx, str.friend
lea rcx, [rbp + 0x10]
call fcn.1800922c0
nop
lea rdx, [rbp + 0x10]
lea rcx, [0x180240260]
call fcn.180140160
mov rdi, rax
lea rcx, [rbp + 0x10]
call fcn.180092690
cmp byte [rdi + 8], 0
je 0x18014e5be
mov r8, rdi
lea rcx, [rbp + 0x2a0]
call fcn.1801521a0
nop
lea rdx, [rbp + 0x2a0]
lea rcx, [rbp + 0x60]
call fcn.1801241b0
nop
lea rcx, [rbp + 0x2a0]
call fcn.180092690
mov rsi, qword [rbp + 0x68]
mov rcx, rsi
mov r14, qword [rbp + 0x60]
sub rcx, r14
movabs r15, 0x2aaaaaaaaaaaaaab
mov rax, r15
imul rcx
sar rdx, 3
mov rax, rdx
shr rax, 0x3f
add rdx, rax
je 0x18014e698
mov rdx, rsi
mov rcx, r14
call fcn.1801521f0
mov rdi, r14
cmp r14, rsi
je 0x18014e698
mov dword [rsp + 0x50], 0
mov r15d, dword [rbp + 0x3e0]
add r15d, dword [rbp + 0x3e8]
mov rbx, qword [rsp + 0x78]
mov r12d, dword [rsp + 0x60]
nop word [rax + rax]
mov rcx, rdi
cmp qword [rdi + 0x18], 0xf
jbe 0x18014e63d
mov rcx, qword [rdi]
mov r9d, dword [rbp + 0x3d0]
add r9d, r12d
lea rax, [rdi + 0x20]
mov qword [rsp + 0x30], rcx
lea rcx, [rsp + 0x50]
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x20], rax
lea r8d, [r15 + 4]
mov rdx, rbx
lea rcx, [0x18022a230]
call fcn.18017ab60
mov eax, dword [rbx + 8]
add dword [rbp + 0x3d0], eax
add rdi, 0x30
cmp rdi, rsi
jne 0x18014e630
mov ebx, dword [rbp - 4]
mov r12, qword [rbp + 0x100]
movabs r15, 0x2aaaaaaaaaaaaaab
test r14, r14
je 0x18014e706
mov rdi, r14
cmp r14, rsi
je 0x18014e6b6
mov rcx, rdi
call fcn.180092690
add rdi, 0x30
cmp rdi, rsi
jne 0x18014e6a5
mov rcx, qword [rbp + 0x70]
sub rcx, r14
mov rax, r15
imul rcx
sar rdx, 3
mov rax, rdx
shr rax, 0x3f
add rdx, rax
lea rdx, [rdx + rdx*2]
shl rdx, 4
mov rax, r14
cmp rdx, 0x1000
jb 0x18014e6fe
add rdx, 0x27
mov r14, qword [r14 - 8]
sub rax, r14
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18014fd94
mov rcx, r14
call fcn.1801822cc
mov r15d, dword [rbp + 0x44]
mov esi, dword [rsp + 0x60]
mov r14d, dword [rbp + 0x3e0]
mov edi, dword [rbp + 0x3e8]
test byte [0x18023fcf4], 0x20
je 0x18014e76c
movss xmm0, dword [0x1802345d4]
mulss xmm0, xmm12
cvttss2si r9d, xmm0
mov dword [rsp + 0x50], 7
lea ecx, [r15 - 1]
mov r8d, esi
sub r8d, r13d
mov eax, r14d
cdq
sub eax, edx
sar eax, 1
add eax, edi
lea rdx, [rsp + 0x50]
mov qword [rsp + 0x30], rdx
mov dword [rsp + 0x28], ecx
mov dword [rsp + 0x20], r9d
mov edx, eax
call fcn.18017b5a0
test byte [0x18023fcf4], 0x40
je 0x18014e7f9
lea eax, [r15 - 1]
cmp eax, 8
ja 0x18014e792
movsxd rax, r15d
lea rcx, str.unknown
mov rcx, qword [rcx + rax*8]
jmp 0x18014e799
mov rcx, qword [str.unknown]
mov dword [rsp + 0x50], 0
mov r9d, dword [rbp + 0x3d0]
add r9d, esi
lea r8d, [rdi + 4]
add r8d, r14d
mov qword [rsp + 0x38], rcx
lea rax, [0x180201270]
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x50]
mov qword [rsp + 0x28], rax
lea rax, [0x180234e84]
mov qword [rsp + 0x20], rax
mov r13, qword [rsp + 0x78]
mov rdx, r13
lea rcx, [0x18022a230]
call fcn.18017ad80
mov eax, dword [r13 + 8]
add dword [rbp + 0x3d0], eax
jmp 0x18014e7fe
mov r13, qword [rsp + 0x78]
test dword [0x18023fcf4], 0x200
je 0x18014e8e2
mov r14, qword [rbp + 0x3d8]
cmp r12, r14
je 0x18014e8e2
mov rax, qword [r12]
mov rcx, r12
call qword [rax + 0x48]
mov rdi, rax
mov rdx, qword [r14]
mov rcx, r14
call qword [rdx + 0x48]
movss xmm0, dword [rdi + 4]
subss xmm0, dword [rax + 4]
movss xmm1, dword [rdi]
subss xmm1, dword [rax]
mulss xmm1, xmm1
mulss xmm0, xmm0
addss xmm1, xmm0
xorps xmm0, xmm0
ucomiss xmm0, xmm1
ja 0x18014e863
xorps xmm0, xmm0
sqrtss xmm0, xmm1
jmp 0x18014e86b
movaps xmm0, xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
divss xmm0, xmm13
call sub.api_ms_win_crt_math_l1_1_0.dll_roundf
cvttss2si ecx, xmm0
mov eax, 1
mov dword [rsp + 0x50], eax
mov r14d, dword [rsp + 0x64]
mov r15d, dword [rbp - 0x80]
lea r9d, [r15 + r14]
add r9d, esi
mov eax, dword [rbp + 0x3e0]
cdq
sub eax, edx
sar eax, 1
mov edi, dword [rbp + 0x3e8]
lea r8d, [rdi + rax]
mov dword [rsp + 0x38], ecx
lea rcx, [0x180201278]
mov qword [rsp + 0x30], rcx
lea rcx, [rsp + 0x50]
mov qword [rsp + 0x28], rcx
lea rcx, [0x180234e84]
mov qword [rsp + 0x20], rcx
mov rdx, r13
lea rcx, [0x18022a230]
call fcn.18017ad80
add r15d, dword [r13 + 8]
jmp 0x18014e8eb
mov r15d, dword [rbp - 0x80]
mov r14d, dword [rsp + 0x64]
mov rcx, r12
call fcn.1800d5fb0
mov r9, qword [0x180230b08]
mov rcx, qword [r9]
mov r8, qword [rcx + 0x20]
mov eax, dword [rax]
mov dword [rbp + 0x98], eax
lea rdx, [rbp + 0x98]
mov rcx, r9
call r8
mov qword [rsp + 0x78], rax
test rax, rax
je 0x18014ebbd
test dword [0x18023fcf4], 0x100
je 0x18014ead8
mov edi, 4
mov eax, dword [0x18022f1ec]
mov rcx, qword gs:[0x58]
mov rsi, qword [rcx + rax*8]
mov ecx, dword [rdi + rsi]
cmp dword [0x180242010], ecx
jle 0x18014e986
lea rcx, [0x180242010]
call fcn.18018237c
cmp dword [0x180242010], 0xffffffff
jne 0x18014e986
mov rax, qword [0x18022c690]
mov qword [0x180242008], rax
lea rcx, [0x180242010]
call fcn.180182310
mov eax, dword [rdi + rsi]
cmp dword [0x180242014], eax
jle 0x18014e9c0
lea rcx, [0x180242014]
call fcn.18018237c
cmp dword [0x180242014], 0xffffffff
jne 0x18014e9c0
mov rax, qword [0x18022c668]
mov qword [0x180242018], rax
lea rcx, [0x180242014]
call fcn.180182310
mov rcx, qword [rsp + 0x78]
mov rax, qword [rcx]
mov rdx, qword [rax + 0xa50]
call rdx
mov edi, eax
mov rcx, r12
call fcn.1800a9ee0
mov edx, dword [rax]
sub edx, 8
je 0x18014ea94
cmp edx, 1
jne 0x18014ea07
mov eax, edi
sub eax, 3
je 0x18014ea02
mov esi, 1
cmp eax, esi
jne 0x18014ea0c
mov edi, 6
jmp 0x18014ea0c
mov edi, 5
mov esi, 1
xor r8d, r8d
mov edx, edi
mov rcx, r12
call qword [0x180242008]
test rax, rax
je 0x18014eacd
mov rcx, rax
call qword [0x180242018]
mov rcx, rax
mov dword [rsp + 0x50], esi
lea r9d, [r15 + r14]
add r9d, dword [rsp + 0x60]
mov esi, dword [rbp + 0x3e0]
mov eax, esi
cdq
sub eax, edx
sar eax, 1
mov edi, dword [rbp + 0x3e8]
lea r8d, [rdi + rax]
mov qword [rsp + 0x38], rcx
lea rcx, [0x18020139c]
mov qword [rsp + 0x30], rcx
lea rcx, [rsp + 0x50]
mov qword [rsp + 0x28], rcx
lea rcx, [0x180234e84]
mov qword [rsp + 0x20], rcx
mov rdx, r13
lea rcx, [0x18022a230]
call fcn.18017ab60
add r15d, dword [r13 + 8]
mov rax, qword [rsp + 0x78]
jmp 0x18014eade
mov ecx, edi
test edi, edi
je 0x18014eac1
sub ecx, 1
je 0x18014eab7
mov esi, 1
cmp ecx, 2
jne 0x18014ea0c
mov edi, 5
jmp 0x18014ea0c
mov edi, 4
jmp 0x18014ea07
mov esi, 1
mov edi, esi
jmp 0x18014ea0c
mov edi, dword [rbp + 0x3e8]
mov rax, qword [rsp + 0x78]
mov esi, dword [rbp + 0x3e0]
test byte [0x18023fcf4], 0x80
je 0x18014ebbd
mov rcx, rax
call fcn.180173050
mov r9, rax
test rax, rax
je 0x18014ebbd
mov ecx, dword [rax + 0xa8]
sub ecx, dword [rax + 0xa4]
movd xmm5, ecx
cvtdq2ps xmm5, xmm5
mov ecx, dword [rax + 0xb0]
sub ecx, dword [rax + 0xac]
movd xmm1, ecx
cvtdq2ps xmm1, xmm1
mov dword [rsp + 0x50], 0x3f400000
mov dword [rsp + 0x6c], 0x3e800000
addss xmm1, xmm1
movd xmm4, esi
cvtdq2ps xmm4, xmm4
maxss xmm1, xmm5
movaps xmm0, xmm4
divss xmm0, xmm1
movss dword [rsp + 0x70], xmm0
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x6c]
lea rcx, [rsp + 0x70]
call fcn.1800abbc0
movss xmm3, dword [0x1802345d4]
mulss xmm3, dword [rax]
lea eax, [r15 + r14]
mov r15d, dword [rsp + 0x60]
lea ecx, [r15 + 1]
add ecx, eax
movd xmm2, ecx
cvtdq2ps xmm2, xmm2
mulss xmm4, xmm9
movd xmm0, edi
cvtdq2ps xmm0, xmm0
addss xmm4, xmm0
mulss xmm5, xmm9
mulss xmm5, xmm3
subss xmm4, xmm5
mov eax, dword [0x180234e84]
mov dword [rsp + 0x28], eax
mov qword [rsp + 0x20], r9
movaps xmm1, xmm4
call fcn.18017b740
jmp 0x18014ebc2
mov r15d, dword [rsp + 0x60]
test dword [0x18023fcf4], 0x20000
je 0x18014ec76
mov rax, qword [r12 + 0x10]
lea rcx, [r12 + 0x10]
call qword [rax + 0x40]
mov r14, qword [rbp + 0x3d8]
test al, al
jne 0x18014ec7d
cmp r12, r14
je 0x18014ec7d
mov qword [rbp + 0x100], r12
lea rdx, [rbp + 0x100]
lea rcx, [0x180240180]
call fcn.180152180
mov esi, dword [rbp + 0x3e0]
cmp byte [rax], 0
je 0x18014ec83
mov dword [rsp + 0x50], 0
mov dword [rbp - 0x7c], 0xff5f5fff
mov r9d, dword [rbp + 0x3d0]
add r9d, r15d
lea r8d, [rsi + 4]
add r8d, edi
lea rax, str.lagcomp
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x50]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x7c]
mov qword [rsp + 0x20], rax
mov rdx, r13
lea rcx, [0x18022a230]
call fcn.18017ab60
mov eax, dword [r13 + 8]
add dword [rbp + 0x3d0], eax
jmp 0x18014ec83
mov r14, qword [rbp + 0x3d8]
mov esi, dword [rbp + 0x3e0]
test dword [0x18023fcf4], 0x40000
je 0x18014ed4c
cmp r12, r14
je 0x18014ed4c
mov rcx, qword [0x180230b20]
mov rax, qword [rcx]
call qword [rax + 0x240]
test rax, rax
je 0x18014ed4c
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x30]
test al, al
jne 0x18014ed4c
mov rax, qword [r12 + 0x10]
lea rcx, [r12 + 0x10]
call qword [rax + 0x48]
mov edx, eax
mov rcx, qword [rbp + 0x80]
call fcn.18014d5b0
test eax, eax
je 0x18014ed4c
lea ecx, [rax - 6]
cmp ecx, 0xc1
jbe 0x18014ed4c
mov dword [rsp + 0x50], 0
mov dword [rbp - 0x78], 0xff5f5fff
mov r9d, dword [rbp + 0x3d0]
add r9d, r15d
lea r8d, [rdi + 4]
add r8d, esi
mov dword [rsp + 0x38], eax
lea rax, str._dms
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x50]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x78]
mov qword [rsp + 0x20], rax
mov rdx, r13
lea rcx, [0x18022a230]
call fcn.18017ab60
mov eax, dword [r13 + 8]
add dword [rbp + 0x3d0], eax
test dword [0x18023fcf4], 0x80000
je 0x18014f017
cmp r12, r14
je 0x18014f017
mov rax, qword [r12 + 0x10]
lea rcx, [r12 + 0x10]
call qword [rax + 0x48]
mov r14d, eax
mov eax, 4
mov esi, eax
mov edi, eax
mov eax, dword [0x18022f1ec]
mov rcx, qword gs:[0x58]
mov rcx, qword [rcx + rax*8]
mov edx, dword [rsi + rcx]
cmp dword [0x180231120], edx
jle 0x18014ee46
lea rcx, [0x180231120]
call fcn.18018237c
mov edi, esi
cmp dword [0x180231120], 0xffffffff
jne 0x18014ee46
mov rcx, qword [0x180230ae0]
mov rax, qword [rcx]
call qword [rax + 0x40]
mov r10, rax
test rax, rax
je 0x18014ee32
mov r8, qword [r10 + 0x10]
mov rcx, 0xffffffffffffffff
mov r9d, 0x811c9dc5
inc rcx
cmp byte [r8 + rcx], 0
jne 0x18014ede1
xor edx, edx
test rcx, rcx
je 0x18014ee24
nop dword [rax]
nop word [rax + rax]
movsx eax, byte [rdx + r8]
xor eax, r9d
imul r9d, eax, 0x1000193
inc rdx
cmp rdx, rcx
jb 0x18014ee00
cmp r9d, 0x3369e751
je 0x18014efe8
mov r10, qword [r10 + 0x20]
test r10, r10
jne 0x18014edd0
mov edi, 4
xor eax, eax
mov dword [0x180231104], eax
lea rcx, [0x180231120]
call fcn.180182310
lea eax, [r14*4]
movsxd rcx, eax
movsxd rdx, dword [0x180231104]
mov rax, qword [rbp + 0x80]
add rax, rcx
mov esi, dword [rdx + rax]
mov rax, qword [r12 + 0x10]
lea rcx, [r12 + 0x10]
call qword [rax + 0x48]
mov r14d, eax
mov eax, dword [0x18022f1ec]
mov rcx, qword gs:[0x58]
mov rcx, qword [rcx + rax*8]
mov edx, dword [rdi + rcx]
cmp dword [0x180231100], edx
jle 0x18014ef31
lea rcx, [0x180231100]
call fcn.18018237c
cmp dword [0x180231100], 0xffffffff
jne 0x18014ef31
mov rcx, qword [0x180230ae0]
mov rdx, qword [rcx]
call qword [rdx + 0x40]
mov r10, rax
test rax, rax
je 0x18014ef1d
mov r8, qword [r10 + 0x10]
mov rcx, 0xffffffffffffffff
mov r9d, 0x811c9dc5
inc rcx
cmp byte [r8 + rcx], 0
jne 0x18014eed6
xor edx, edx
test rcx, rcx
je 0x18014ef14
nop word [rax + rax]
movsx eax, byte [rdx + r8]
xor eax, r9d
imul r9d, eax, 0x1000193
inc rdx
cmp rdx, rcx
jb 0x18014eef0
cmp r9d, 0x3369e751
je 0x18014f002
mov r10, qword [r10 + 0x20]
test r10, r10
jne 0x18014eec5
xor eax, eax
mov dword [0x180231110], eax
lea rcx, [0x180231100]
call fcn.180182310
lea eax, [r14*4]
movsxd rcx, eax
movsxd rdx, dword [0x180231110]
mov rax, qword [rbp + 0x80]
add rax, rcx
mov r10d, dword [rdx + rax]
cmp esi, 0x14
jl 0x18014f017
mov ecx, r10d
cmp r10d, 1
mov eax, 1
cmovl ecx, eax
mov eax, esi
cdq
idiv ecx
mov r14d, dword [rbp + 0x3e8]
cmp eax, 0xa
jl 0x18014f01e
mov dword [rsp + 0x50], 0
mov dword [rbp - 0x74], 0xff5f5fff
mov r9d, dword [rbp + 0x3d0]
add r9d, r15d
mov r8d, dword [rbp + 0x3e0]
add r8d, 4
add r8d, r14d
mov dword [rsp + 0x40], r10d
mov dword [rsp + 0x38], esi
lea rax, str.high_k_d___d__d_
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x50]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x74]
mov qword [rsp + 0x20], rax
mov rdx, r13
lea rcx, [0x18022a230]
call fcn.18017ab60
mov eax, dword [r13 + 8]
add dword [rbp + 0x3d0], eax
jmp 0x18014f01e
lea r8, str.m_iScore
mov rdx, qword [r10 + 0x18]
call fcn.180181f10
mov edi, 4
jmp 0x18014ee34
lea r8, str.m_iDeaths
mov rdx, qword [r10 + 0x18]
call fcn.180181f10
jmp 0x18014ef1f
mov r14d, dword [rbp + 0x3e8]
lea rax, [rbp + 0x3d0]
mov qword [rbp + 0x48], rax
mov qword [rbp + 0x50], r13
test dword [0x18023fcf4], 0x4000
je 0x18014f707
mov rcx, r12
call fcn.1800af3f0
mov esi, dword [rbp + 0x3e0]
test al, al
je 0x18014f0b3
mov dword [rbp - 0x70], 0xff6c6bff
lea r8d, [rsi + 4]
add r8d, r14d
mov eax, dword [rbp - 0x70]
mov dword [rsp + 0x50], eax
mov dword [rbp + 0x3e8], 0
mov r9d, dword [rbp + 0x3d0]
add r9d, r15d
lea rax, str.crits
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0x3e8]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x50]
mov qword [rsp + 0x20], rax
mov rdx, r13
lea rcx, [0x18022a230]
call fcn.18017ab60
mov eax, dword [r13 + 8]
add dword [rbp + 0x3d0], eax
mov edx, 0x13
mov rcx, r12
call fcn.1800aa640
test al, al
jne 0x18014f0d5
mov edx, 0x1f
mov rcx, r12
call fcn.1800aa640
test al, al
je 0x18014f139
mov dword [rbp - 0x6c], 0xff57cafe
lea r8d, [r14 + 4]
add r8d, esi
mov eax, dword [rbp - 0x6c]
mov dword [rsp + 0x50], eax
mov dword [rbp + 0x3e8], 0
mov r9d, dword [rbp + 0x3d0]
add r9d, r15d
lea rax, str.mini_crits
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0x3e8]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x50]
mov qword [rsp + 0x20], rax
mov rdx, r13
lea rcx, [0x18022a230]
call fcn.18017ab60
mov eax, dword [r13 + 8]
add dword [rbp + 0x3d0], eax
mov rax, qword [r12]
mov rdx, qword [rax + 0x358]
mov rcx, r12
call rdx
mov edi, eax
mov rcx, r12
call fcn.1800aeb00
cmp dword [rax], edi
jle 0x18014f1b7
lea r8d, [r14 + 4]
add r8d, esi
mov eax, dword [0x18023f274]
mov dword [rsp + 0x50], eax
xor edi, edi
mov dword [rbp + 0x3e8], edi
mov r9d, dword [rbp + 0x3d0]
add r9d, r15d
lea rax, [0x18020135c]
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0x3e8]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x50]
mov qword [rsp + 0x20], rax
mov rdx, r13
lea rcx, [0x18022a230]
call fcn.18017ab60
mov eax, dword [r13 + 8]
add dword [rbp + 0x3d0], eax
jmp 0x18014f1b9
xor edi, edi
mov edx, 0x15
mov rcx, r12
call fcn.1800aa640
test al, al
jne 0x18014f1e7
mov edx, 0x1c
mov rcx, r12
call fcn.1800aa640
test al, al
jne 0x18014f1e7
mov rcx, r12
call fcn.18014d590
test al, al
je 0x18014f243
lea r8d, [r14 + 4]
add r8d, esi
mov eax, dword [0x18023f274]
mov dword [rsp + 0x50], eax
mov dword [rbp + 0x3e8], edi
mov r9d, dword [rbp + 0x3d0]
add r9d, r15d
lea rax, [0x180201360]
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0x3e8]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x50]
mov qword [rsp + 0x20], rax
mov rdx, r13
lea rcx, [0x18022a230]
call fcn.18017ab60
mov eax, dword [r13 + 8]
add dword [rbp + 0x3d0], eax
mov edx, 5
mov rcx, r12
call fcn.1800aa640
test al, al
jne 0x18014f2c5
mov edx, 0x33
mov rcx, r12
call fcn.1800aa640
test al, al
jne 0x18014f2c5
mov edx, 0x34
mov rcx, r12
call fcn.1800aa640
test al, al
jne 0x18014f2c5
mov edx, 0x39
mov rcx, r12
call fcn.1800aa640
test al, al
jne 0x18014f2c5
mov edx, 0xe
mov rcx, r12
call fcn.1800aa640
test al, al
je 0x18014f321
mov dword [rbp - 0x68], 0xff57cafe
lea r9d, [r14 + 4]
add r9d, esi
mov dword [rsp + 0x20], r15d
mov r8d, dword [rbp - 0x68]
lea rdx, str.bonk
lea rcx, [rbp + 0x48]
call fcn.18014fda0
jmp 0x18014f321
lea r8d, [r14 + 4]
add r8d, esi
mov eax, dword [0x18023f7f4]
mov dword [rsp + 0x50], eax
mov dword [rbp + 0x3e8], edi
mov r9d, dword [rbp + 0x3d0]
add r9d, r15d
lea rax, str.uber
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0x3e8]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x50]
mov qword [rsp + 0x20], rax
mov rdx, r13
lea rcx, [0x18022a230]
call fcn.18017ab60
mov eax, dword [r13 + 8]
add dword [rbp + 0x3d0], eax
mov edx, 0x3a
mov rcx, r12
call fcn.1800aa640
test al, al
jne 0x18014f381
mov edx, 0x43
mov rcx, r12
call fcn.1800aa640
test al, al
jne 0x18014f381
mov edx, 0x3d
mov rcx, r12
call fcn.1800aa640
test al, al
je 0x18014f3e1
mov dword [rbp - 0x64], 0xff6c6bff
lea r9d, [r14 + 4]
add r9d, esi
mov dword [rsp + 0x20], r15d
mov r8d, dword [rbp - 0x64]
lea rdx, str.bullet
lea rcx, [rbp + 0x48]
call fcn.18014fda0
jmp 0x18014f3e1
mov dword [rbp - 0x60], 0xff6c6bff
lea r8d, [r14 + 4]
add r8d, esi
mov eax, dword [rbp - 0x60]
mov dword [rsp + 0x50], eax
mov dword [rbp + 0x3e8], edi
mov r9d, dword [rbp + 0x3d0]
add r9d, r15d
lea rax, [0x1802013c8]
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0x3e8]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x50]
mov qword [rsp + 0x20], rax
mov rdx, r13
lea rcx, [0x18022a230]
call fcn.18017ab60
mov eax, dword [r13 + 8]
add dword [rbp + 0x3d0], eax
mov edx, 0x3b
mov rcx, r12
call fcn.1800aa640
test al, al
jne 0x18014f441
mov edx, 0x44
mov rcx, r12
call fcn.1800aa640
test al, al
jne 0x18014f441
mov edx, 0x3e
mov rcx, r12
call fcn.1800aa640
test al, al
je 0x18014f4a1
mov dword [rbp - 0x5c], 0xff6c6bff
lea r9d, [r14 + 4]
add r9d, esi
mov dword [rsp + 0x20], r15d
mov r8d, dword [rbp - 0x5c]
lea rdx, str.blast
lea rcx, [rbp + 0x48]
call fcn.18014fda0
jmp 0x18014f4a1
mov dword [rbp - 0x58], 0xff6c6bff
lea r8d, [r14 + 4]
add r8d, esi
mov eax, dword [rbp - 0x58]
mov dword [rsp + 0x50], eax
mov dword [rbp + 0x3e8], edi
mov r9d, dword [rbp + 0x3d0]
add r9d, r15d
lea rax, [0x1802013b8]
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0x3e8]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x50]
mov qword [rsp + 0x20], rax
mov rdx, r13
lea rcx, [0x18022a230]
call fcn.18017ab60
mov eax, dword [r13 + 8]
add dword [rbp + 0x3d0], eax
mov edx, 0x3c
mov rcx, r12
call fcn.1800aa640
test al, al
jne 0x18014f501
mov edx, 0x45
mov rcx, r12
call fcn.1800aa640
test al, al
jne 0x18014f501
mov edx, 0x3f
mov rcx, r12
call fcn.1800aa640
test al, al
je 0x18014f561
mov dword [rbp - 0x54], 0xff6c6bff
lea r9d, [r14 + 4]
add r9d, esi
mov dword [rsp + 0x20], r15d
mov r8d, dword [rbp - 0x54]
lea rdx, str.fire
lea rcx, [rbp + 0x48]
call fcn.18014fda0
jmp 0x18014f561
mov dword [rbp - 0x50], 0xff6c6bff
lea r8d, [r14 + 4]
add r8d, esi
mov eax, dword [rbp - 0x50]
mov dword [rsp + 0x50], eax
mov dword [rbp + 0x3e8], edi
mov r9d, dword [rbp + 0x3d0]
add r9d, r15d
lea rax, [0x1802013a8]
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0x3e8]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x50]
mov qword [rsp + 0x20], rax
mov rdx, r13
lea rcx, [0x18022a230]
call fcn.18017ab60
mov eax, dword [r13 + 8]
add dword [rbp + 0x3d0], eax
mov edx, 0x10
mov rcx, r12
call fcn.1800aa640
test al, al
je 0x18014f5c8
lea r8d, [r14 + 4]
add r8d, esi
mov dword [rsp + 0x50], ebx
mov dword [rbp + 0x3e8], edi
mov r9d, dword [rbp + 0x3d0]
add r9d, r15d
lea rax, str.banner
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0x3e8]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x50]
mov qword [rsp + 0x20], rax
mov rdx, r13
lea rcx, [0x18022a230]
call fcn.18017ab60
mov eax, dword [r13 + 8]
add dword [rbp + 0x3d0], eax
mov edx, 0x1a
mov rcx, r12
call fcn.1800aa640
test al, al
je 0x18014f62f
lea r8d, [r14 + 4]
add r8d, esi
mov dword [rsp + 0x50], ebx
mov dword [rbp + 0x3e8], edi
mov r9d, dword [rbp + 0x3d0]
add r9d, r15d
lea rax, str.battalions
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0x3e8]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x50]
mov qword [rsp + 0x20], rax
mov rdx, r13
lea rcx, [0x18022a230]
call fcn.18017ab60
mov eax, dword [r13 + 8]
add dword [rbp + 0x3d0], eax
mov edx, 0x1d
mov rcx, r12
call fcn.1800aa640
test al, al
je 0x18014f696
lea r8d, [r14 + 4]
add r8d, esi
mov dword [rsp + 0x50], ebx
mov dword [rbp + 0x3e8], edi
mov r9d, dword [rbp + 0x3d0]
add r9d, r15d
lea rax, str.conch
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0x3e8]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x50]
mov qword [rsp + 0x20], rax
mov rdx, r13
lea rcx, [0x18022a230]
call fcn.18017ab60
mov eax, dword [r13 + 8]
add dword [rbp + 0x3d0], eax
mov edx, 0x51
mov rcx, r12
call fcn.1800aa640
test al, al
je 0x18014f707
mov dword [rbp - 0x4c], 0xff57cafe
lea r8d, [r14 + 4]
add r8d, esi
mov eax, dword [rbp - 0x4c]
mov dword [rsp + 0x50], eax
mov dword [rbp + 0x3e8], edi
mov r9d, dword [rbp + 0x3d0]
add r9d, r15d
lea rax, str.rocket_jump
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0x3e8]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x50]
mov qword [rsp + 0x20], rax
mov rdx, r13
lea rcx, [0x18022a230]
call fcn.18017ab60
mov eax, dword [r13 + 8]
add dword [rbp + 0x3d0], eax
test dword [0x18023fcf4], 0x8000
je 0x18014f8f4
mov edx, 0x18
mov rcx, r12
call fcn.1800aa640
mov ebx, dword [rbp + 0x3e0]
xor edi, edi
test al, al
je 0x18014f790
mov dword [rbp - 0x48], 0xff57cafe
lea r8d, [rbx + 4]
add r8d, r14d
mov eax, dword [rbp - 0x48]
mov dword [rsp + 0x50], eax
mov dword [rbp + 0x3e8], edi
mov r9d, dword [rbp + 0x3d0]
add r9d, r15d
lea rax, str.piss
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0x3e8]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x50]
mov qword [rsp + 0x20], rax
mov rdx, r13
lea rcx, [0x18022a230]
call fcn.18017ab60
mov eax, dword [r13 + 8]
add dword [rbp + 0x3d0], eax
mov edx, 0x1e
mov rcx, r12
call fcn.1800aa640
test al, al
jne 0x18014f7b2
mov edx, 0x30
mov rcx, r12
call fcn.1800aa640
test al, al
je 0x18014f812
mov dword [rbp - 0x44], 0xff57cafe
lea r8d, [r14 + 4]
add r8d, ebx
mov eax, dword [rbp - 0x44]
mov dword [rsp + 0x50], eax
mov dword [rbp + 0x3e8], edi
mov r9d, dword [rbp + 0x3d0]
add r9d, r15d
lea rax, str.marked
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0x3e8]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x50]
mov qword [rsp + 0x20], rax
mov rdx, r13
lea rcx, [0x18022a230]
call fcn.18017ab60
mov eax, dword [r13 + 8]
add dword [rbp + 0x3d0], eax
mov edx, 0x16
mov rcx, r12
call fcn.1800aa640
test al, al
je 0x18014f883
mov dword [rbp - 0x40], 0xff57cafe
lea r8d, [r14 + 4]
add r8d, ebx
mov eax, dword [rbp - 0x40]
mov dword [rsp + 0x50], eax
mov dword [rbp + 0x3e8], edi
mov r9d, dword [rbp + 0x3d0]
add r9d, r15d
lea rax, str.burn
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0x3e8]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x50]
mov qword [rsp + 0x20], rax
mov rdx, r13
lea rcx, [0x18022a230]
call fcn.18017ab60
mov eax, dword [r13 + 8]
add dword [rbp + 0x3d0], eax
mov edx, 0x1b
mov rcx, r12
call fcn.1800aa640
test al, al
je 0x18014f8f4
mov dword [rbp - 0x3c], 0xff57cafe
lea r8d, [r14 + 4]
add r8d, ebx
mov eax, dword [rbp - 0x3c]
mov dword [rsp + 0x50], eax
mov dword [rbp + 0x3e8], edi
mov r9d, dword [rbp + 0x3d0]
add r9d, r15d
lea rax, [0x1802013e8]
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0x3e8]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x50]
mov qword [rsp + 0x20], rax
mov rdx, r13
lea rcx, [0x18022a230]
call fcn.18017ab60
mov eax, dword [r13 + 8]
add dword [rbp + 0x3d0], eax
test dword [0x18023fcf4], 0x10000
je 0x18014fd04
cmp byte [0x180237c91], 0
je 0x18014f94d
mov edx, 7
mov rcx, r12
call fcn.1800aa640
mov esi, dword [rbp + 0x3e0]
test al, al
je 0x18014f953
mov dword [rbp - 0x38], 0xffc864ff
lea r9d, [rsi + 4]
add r9d, r14d
mov dword [rsp + 0x20], r15d
mov r8d, dword [rbp - 0x38]
lea rdx, str.taunt
lea rcx, [rbp + 0x48]
call fcn.18014fda0
jmp 0x18014f953
mov esi, dword [rbp + 0x3e0]
mov rcx, r12
call fcn.1800a8d50
cmp byte [rax], 0
je 0x18014f9c8
mov dword [rbp - 0x34], 0xff57cafe
lea r8d, [r14 + 4]
add r8d, esi
mov eax, dword [rbp - 0x34]
mov dword [rbp + 0x3e8], eax
mov dword [rbp + 0x3e0], 0
mov r9d, dword [rbp + 0x3d0]
add r9d, r15d
lea rax, str.dead_ringer
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0x3e0]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x3e8]
mov qword [rsp + 0x20], rax
mov rdx, r13
lea rcx, [0x18022a230]
call fcn.18017ab60
mov eax, dword [r13 + 8]
add dword [rbp + 0x3d0], eax
xor edx, edx
mov rcx, r12
call fcn.1800aa640
test al, al
je 0x18014fab5
mov rbx, qword [rsp + 0x78]
test rbx, rbx
je 0x18014fab5
mov rcx, rbx
call fcn.1800a8c40
cmp eax, 0x12
jne 0x18014fa1c
mov dword [rbp - 0x30], 0xff808080
lea r9d, [r14 + 4]
add r9d, esi
mov dword [rsp + 0x20], r15d
mov r8d, dword [rbp - 0x30]
lea rdx, str.reved
lea rcx, [rbp + 0x48]
call fcn.18014fda0
mov rcx, rbx
call fcn.1800a8c40
cmp eax, 0x3d
jne 0x18014fa81
mov rax, qword [0x180230b60]
movss xmm6, dword [rax + 0xc]
mov rcx, rbx
call fcn.1800be6d0
lea r9d, [r14 + 4]
add r9d, esi
subss xmm6, dword [rax]
mov dword [rsp + 0x20], r15d
lea rcx, [rbp + 0x48]
comiss xmm6, xmm7
jb 0x18014fa6a
mov dword [rbp - 0x2c], 0xff57cafe
mov r8d, dword [rbp - 0x2c]
lea rdx, str.charged
jmp 0x18014fa7c
mov dword [rbp - 0x28], 0xff57cafe
mov r8d, dword [rbp - 0x28]
lea rdx, str.charging
call fcn.18014fda0
mov rcx, rbx
call fcn.1800a8c40
cmp eax, 0x4f
jne 0x18014fab5
mov dword [rbp - 0x24], 0xff57cafe
lea r9d, [r14 + 4]
add r9d, esi
mov dword [rsp + 0x20], r15d
mov r8d, dword [rbp - 0x24]
lea rdx, str.charging
lea rcx, [rbp + 0x48]
call fcn.18014fda0
mov edx, 1
mov rcx, r12
call fcn.1800aa640
test al, al
je 0x18014fb2e
mov dword [rbp - 0x20], 0xff57cafe
lea r8d, [r14 + 4]
add r8d, esi
mov eax, dword [rbp - 0x20]
mov dword [rbp + 0x3e8], eax
mov dword [rbp + 0x3e0], 0
mov r9d, dword [rbp + 0x3d0]
add r9d, r15d
lea rax, str.zoom
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0x3e0]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x3e8]
mov qword [rsp + 0x20], rax
mov rdx, r13
lea rcx, [0x18022a230]
call fcn.18017ab60
mov eax, dword [r13 + 8]
add dword [rbp + 0x3d0], eax
mov edx, 4
mov rcx, r12
call fcn.1800aa640
test al, al
jne 0x18014fb76
mov edx, 9
mov rcx, r12
call fcn.1800aa640
test al, al
jne 0x18014fb76
mov edx, 0x40
mov rcx, r12
call fcn.1800aa640
test al, al
jne 0x18014fb76
mov edx, 0x42
mov rcx, r12
call fcn.1800aa640
test al, al
je 0x18014fc73
lea edi, [rsi + r14]
mov ebx, dword [0x18023f874]
mov rcx, r12
call fcn.1800aa730
lea rax, str.cloak_:.0f__
mov qword [rbp + 0x1a0], rax
mov qword [rbp + 0x1a8], 0xe
movss dword [rbp + 0x188], xmm0
movabs rax, 0x7000000000000000
mov qword [rbp + 0x180], rax
mov eax, 1
mov qword [rbp + 0x190], rax
lea rax, [rbp + 0x180]
mov qword [rbp + 0x198], rax
movaps xmm0, xmmword [rbp + 0x190]
movdqa xmmword [rbp + 0x60], xmm0
movaps xmm1, xmmword [rbp + 0x1a0]
movdqa xmmword [rbp + 0x100], xmm1
lea r8, [rbp + 0x60]
lea rdx, [rbp + 0x100]
lea rcx, [rbp + 0x10]
call fcn.1800cdb90
or dword [rsp + 0x68], 4
lea rcx, [rbp + 0x10]
cmp qword [rbp + 0x28], 0xf
cmova rcx, qword [rbp + 0x10]
mov dword [rbp + 0x3e8], ebx
mov dword [rbp + 0x3e0], 0
mov r9d, dword [rbp + 0x3d0]
add r9d, r15d
mov qword [rsp + 0x30], rcx
lea rax, [rbp + 0x3e0]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x3e8]
mov qword [rsp + 0x20], rax
lea r8d, [rdi + 4]
mov rdx, r13
lea rcx, [0x18022a230]
call fcn.18017ab60
mov eax, dword [r13 + 8]
add dword [rbp + 0x3d0], eax
lea rcx, [rbp + 0x10]
call fcn.180092690
mov edx, 2
mov rcx, r12
call fcn.1800aa640
test al, al
jne 0x18014fca6
mov edx, 0x2f
mov rcx, r12
call fcn.1800aa640
test al, al
jne 0x18014fca6
mov edx, 3
mov rcx, r12
call fcn.1800aa640
test al, al
je 0x18014fd04
mov dword [rbp - 0x1c], 0xff57cafe
mov eax, dword [rbp - 0x1c]
mov dword [rbp + 0x3e8], eax
mov dword [rbp + 0x3e0], 0
mov r9d, dword [rbp + 0x3d0]
add r9d, r15d
lea r8d, [r14 + 4]
add r8d, esi
lea rax, str.disguise
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0x3e0]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x3e8]
mov qword [rsp + 0x20], rax
mov rdx, r13
lea rcx, [0x18022a230]
call fcn.18017ab60
mov r14, qword [rbp + 0x3d8]
mov esi, dword [rsp + 0x68]
mov rax, qword [rbp + 0xf0]
add rax, 8
mov qword [rbp + 0xf0], rax
cmp rax, qword [rbp + 0x110]
jne 0x18014d800
mov rcx, qword [0x180230b98]
mov rax, qword [rcx]
movaps xmm1, xmm7
call qword [rax + 0x360]
lea r11, [rsp + 0x488]
movaps xmm6, xmmword [r11 - 0x18]
movaps xmm7, xmmword [r11 - 0x28]
movaps xmm8, xmmword [r11 - 0x38]
movaps xmm9, xmmword [r11 - 0x48]
movaps xmm10, xmmword [r11 - 0x58]
movaps xmm11, xmmword [r11 - 0x68]
movaps xmm12, xmmword [r11 - 0x78]
movaps xmm13, xmmword [r11 - 0x88]
movaps xmm14, xmmword [r11 - 0x98]
movaps xmm15, xmmword [r11 - 0xa8]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3