Function at 0x18014e700
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 - 0x398]
sub rsp, 0x458
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 + 0x6c], esi
mov dword [rbp + 0x3a0], esi
cmp dword [0x180242614], esi
je 0x180150d7f
mov rax, qword [0x18022d8b0]
mov qword [rbp + 0x60], rax
test rax, rax
je 0x180150d7f
mov dword [rbp + 0x3a0], esi
lea r8, [rbp + 0x3a0]
lea rdx, [rbp + 0x40]
lea rcx, [0x18022d8c0]
call fcn.1800b2bd0
mov rcx, qword [rax]
mov rax, qword [rcx + 0x18]
mov qword [rbp + 0xc8], rax
mov rcx, qword [rcx + 0x20]
mov qword [rbp + 0xe0], rcx
movss xmm7, dword [0x1802091b0]
cmp rax, rcx
je 0x180150d6c
movss xmm11, dword [0x18020911c]
movss xmm14, dword [0x180209278]
movss xmm15, dword [0x18020925c]
movss xmm10, dword [0x1802093b0]
movss xmm8, dword [0x180209350]
movss xmm12, dword [0x18020929c]
movss xmm13, dword [0x1802092e0]
movss xmm9, dword [0x180209160]
nop dword [rax + rax]
mov r13, qword [rax]
mov qword [rbp + 0xd0], r13
mov rax, qword [r13 + 0x10]
lea rcx, [r13 + 0x10]
call qword [rax + 0x48]
mov edi, eax
mov dword [rbp + 0x38], eax
mov rcx, r13
call fcn.1800a78c0
cmp byte [rax], 0
jne 0x180150d4d
mov rcx, r13
call fcn.1800a7bd0
mov ecx, dword [rax]
shr ecx, 0xd
test cl, 1
jne 0x180150d4d
mov rax, qword [r13 + 0x10]
lea rcx, [r13 + 0x10]
call qword [rax + 0x40]
test al, al
je 0x18014e94b
cmp dword [0x180242594], 0
je 0x18014e92a
cmp byte [0x180242691], 0
je 0x18014e926
xorps xmm0, xmm0
movups xmmword [rsp + 0x78], xmm0
mov qword [rbp - 0x78], 7
mov qword [rbp - 0x70], 0xf
mov rax, qword [str.Default]
mov dword [rsp + 0x78], eax
movzx eax, word [0x1801f8c74]
mov word [rsp + 0x7c], ax
movzx eax, byte [0x1801f8c76]
mov byte [rsp + 0x7e], al
mov byte [rsp + 0x7f], 0
or esi, 1
mov dword [rsp + 0x6c], esi
mov dword [rbp + 0x3a0], esi
mov dword [rbp + 0x3b0], edi
lea r8, [rbp + 0x3b0]
lea rdx, [rbp + 0x2a0]
lea rcx, [0x18022d9c0]
call fcn.1800b2e10
mov rcx, qword [rax]
mov ebx, dword [rcx + 0x14]
lea rdx, [rsp + 0x78]
lea rcx, [0x180242b80]
call fcn.180140a70
cmp ebx, dword [rax + 4]
jle 0x18014e92a
xor bl, bl
jmp 0x18014e92c
mov bl, 1
test sil, 1
je 0x18014e943
and esi, 0xfffffffe
mov dword [rsp + 0x6c], esi
lea rcx, [rsp + 0x78]
call fcn.180090ac0
test bl, bl
jne 0x180150d4d
mov rcx, qword [0x180233bc0]
mov rax, qword [rcx]
call qword [rax + 0x60]
cmp edi, eax
je 0x18014ea98
test byte [0x180242814], 8
je 0x18014e996
mov dword [rbp + 0x3a0], edi
lea r8, [rbp + 0x3a0]
lea rdx, [rbp + 0x210]
lea rcx, [0x18022d940]
call fcn.1800d7db0
mov rcx, qword [rax]
cmp byte [rcx + 0x14], 0
jne 0x18014ea35
test byte [0x180242814], 0x10
je 0x18014ea39
xorps xmm0, xmm0
movups xmmword [rsp + 0x78], xmm0
mov qword [rbp - 0x78], 7
mov qword [rbp - 0x70], 0xf
mov rax, qword [str.Default]
mov dword [rsp + 0x78], eax
movzx eax, word [0x1801f8c74]
mov word [rsp + 0x7c], ax
movzx eax, byte [0x1801f8c76]
mov byte [rsp + 0x7e], al
mov byte [rsp + 0x7f], 0
or esi, 2
mov dword [rsp + 0x6c], esi
mov dword [rbp + 0x3a0], esi
mov dword [rbp + 0x3b0], edi
lea r8, [rbp + 0x3b0]
lea rdx, [rbp + 0x220]
lea rcx, [0x18022d9c0]
call fcn.1800b2e10
mov rcx, qword [rax]
mov ebx, dword [rcx + 0x14]
lea r8, [rsp + 0x78]
lea rdx, [rbp + 0x230]
lea rcx, [0x180242b80]
call fcn.180140ad0
mov rcx, qword [rax]
cmp ebx, dword [rcx + 0x34]
jle 0x18014ea39
xor bl, bl
jmp 0x18014ea3b
mov bl, 1
test sil, 2
je 0x18014ea52
and esi, 0xfffffffd
mov dword [rsp + 0x6c], esi
lea rcx, [rsp + 0x78]
call fcn.180090ac0
test bl, bl
je 0x18014eabd
test byte [0x180242814], 1
jne 0x18014ea79
mov rcx, r13
call fcn.1800a8760
mov ebx, dword [rax]
mov rcx, r14
call fcn.1800a8760
cmp ebx, dword [rax]
jne 0x180150d4d
test byte [0x180242814], 2
jne 0x18014eabd
mov rcx, r13
call fcn.1800a8760
mov ebx, dword [rax]
mov rcx, r14
call fcn.1800a8760
cmp ebx, dword [rax]
jmp 0x18014eab7
test byte [0x180242814], 4
je 0x180150d4d
mov rcx, qword [0x180233bc8]
mov rax, qword [rcx]
call qword [rax + 0xf8]
test eax, eax
je 0x180150d4d
mov rax, qword [0x180233c38]
mov rcx, qword [rax]
mov rbx, qword [rcx + 0x360]
mov rax, qword [r13 + 0x10]
lea rcx, [r13 + 0x10]
call qword [rax + 0x40]
mov ecx, dword [0x180242794]
test al, al
cmovne ecx, dword [0x180242594]
movd xmm1, ecx
cvtdq2ps xmm1, xmm1
divss xmm1, dword [0x180209394]
mov rcx, qword [0x180233c38]
call rbx
mov dword [rsp + 0x50], 0
xor r14d, r14d
mov dword [rbp + 0x3b8], r14d
mov dword [rbp + 0x3b0], r14d
xor esi, esi
mov dword [rsp + 0x68], esi
mov rcx, r13
call fcn.1800a8860
mov rcx, r13
call fcn.1800a8960
lea rcx, [r13 + 8]
mov rax, qword [rcx]
call qword [rax + 0x110]
mov rdi, rax
mov rdx, qword [r13 + 0x10]
lea rcx, [r13 + 0x10]
call qword [rdx + 0x48]
mov ebx, eax
mov rcx, qword [0x180233bc0]
mov rdx, qword [rcx]
call qword [rdx + 0x60]
cmp ebx, eax
jne 0x18014eba5
mov rcx, qword [0x180233bc0]
mov qword [rbp + 0x6c], rsi
mov dword [rbp + 0x68], esi
mov rax, qword [rcx]
lea rdx, [rbp + 0x68]
call qword [rax + 0x98]
mov dword [rbp + 0x70], esi
mov dword [rbp + 0x68], esi
mov rdx, rdi
lea rcx, [rbp + 0x68]
call fcn.1800bcd90
mov rax, qword [r13]
mov rcx, r13
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 + 0x88]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x94]
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0x90]
lea r8, [rbp + 0x8c]
mov rdx, rdi
mov rcx, r13
call fcn.18017fad0
test al, al
je 0x18014ec68
movss xmm4, dword [rbp + 0x90]
subss xmm4, dword [rbp + 0x8c]
movaps xmm3, xmm4
mulss xmm3, xmm11
movaps xmm0, xmm3
addss xmm0, dword [rbp + 0x8c]
cvttss2si r12d, xmm0
mov dword [rsp + 0x50], r12d
cvttss2si r14d, dword [rbp + 0x88]
mov dword [rbp + 0x3b8], r14d
addss xmm3, xmm3
subss xmm4, xmm3
cvttss2si eax, xmm4
mov dword [rbp + 0x3b0], eax
movss xmm0, dword [rbp + 0x94]
subss xmm0, dword [rbp + 0x88]
cvttss2si esi, xmm0
mov dword [rsp + 0x68], esi
cmp r12d, dword [0x18022d260]
jg 0x18014ec68
add eax, r12d
js 0x18014ec68
cmp r14d, dword [0x18022d264]
jg 0x18014ec68
lea eax, [rsi + r14]
test eax, eax
js 0x18014ec68
mov al, 1
jmp 0x18014ec6a
xor al, al
test al, al
je 0x180150d42
xor r14d, r14d
mov dword [rbp + 0x3a0], r14d
mov dword [rbp - 0x58], 2
xor r12d, r12d
mov dword [rbp + 0x80], r12d
lea r8, [rbp + 0x80]
lea rdx, [rbp + 0x240]
call fcn.18017e660
mov rax, qword [rax]
add rax, 0x18
mov qword [rbp + 0x18], rax
movzx eax, byte [0x180242391]
mov byte [rsp + 0x20], al
mov r9, r13
mov r8, qword [rbp + 0x3a8]
lea rdx, [rbp + 0x20]
call fcn.18017afd0
mov rax, qword [r13]
mov rdx, qword [rax + 0x358]
mov rcx, r13
call rdx
mov esi, eax
mov rdx, qword [r13 + 0x10]
lea rcx, [r13 + 0x10]
call qword [rdx + 0x40]
test al, al
je 0x18014ed04
mov rdx, qword [r13 + 0x10]
lea rcx, [r13 + 0x10]
call qword [rdx + 0x48]
mov edx, eax
mov rcx, qword [rbp + 0x60]
call fcn.1800ff740
mov edi, eax
jmp 0x18014ed0e
mov rcx, r13
call fcn.1800ad720
mov edi, dword [rax]
mov rcx, r13
call fcn.1800a8c60
mov r15d, dword [rax]
mov dword [rbp + 0x3c], r15d
mov eax, dword [0x180242614]
mov ebx, dword [rbp + 0x20]
bt eax, 0xb
jae 0x18014eef8
movdqa xmm0, xmmword [0x180209810]
movdqu xmmword [rsp + 0x58], xmm0
lea rax, [rsp + 0x58]
mov qword [rbp + 0x100], rax
lea rax, [rsp + 0x68]
mov qword [rbp + 0x108], rax
movaps xmm0, xmmword [rbp + 0x100]
movdqa xmmword [rbp + 0x40], xmm0
lea rdx, [rbp + 0x40]
lea rcx, [rsp + 0x78]
call fcn.180118e20
mov r8d, ebx
mov rdx, rax
mov rcx, r13
call fcn.180153520
movdqa xmm0, xmmword [0x180209820]
movdqu xmmword [rsp + 0x58], xmm0
lea rax, [rsp + 0x58]
mov qword [rbp + 0x110], rax
lea rax, [rsp + 0x68]
mov qword [rbp + 0x118], rax
movaps xmm0, xmmword [rbp + 0x110]
movdqa xmmword [rbp + 0x40], xmm0
lea rdx, [rbp + 0x40]
lea rcx, [rsp + 0x78]
call fcn.180118e20
mov r8d, ebx
mov rdx, rax
mov rcx, r13
call fcn.180153520
mov dword [rbp + 0x98], r12d
mov dword [rbp + 0x9c], 4
mov eax, 1
mov dword [rbp + 0xa0], eax
lea rax, [rbp + 0x98]
mov qword [rbp + 0x120], rax
lea rax, [rbp + 0xa4]
mov qword [rbp + 0x128], rax
movaps xmm0, xmmword [rbp + 0x120]
movdqa xmmword [rbp + 0x40], xmm0
lea rdx, [rbp + 0x40]
lea rcx, [rsp + 0x78]
call fcn.180118e20
mov r8d, ebx
mov rdx, rax
mov rcx, r13
call fcn.180153520
mov dword [rbp + 0xa8], 0xe
mov dword [rbp + 0xac], 0xd
mov eax, 1
mov dword [rbp + 0xb0], eax
lea rax, [rbp + 0xa8]
mov qword [rbp + 0x130], rax
lea rax, [rbp + 0xb4]
mov qword [rbp + 0x138], rax
movaps xmm0, xmmword [rbp + 0x130]
movdqa xmmword [rbp + 0x40], xmm0
lea rdx, [rbp + 0x40]
lea rcx, [rsp + 0x78]
call fcn.180118e20
mov r8d, ebx
mov rdx, rax
mov rcx, r13
call fcn.180153520
mov dword [rbp + 0xb8], 0x11
mov dword [rbp + 0xbc], 0x10
mov eax, 1
mov dword [rbp + 0xc0], eax
lea rax, [rbp + 0xb8]
mov qword [rbp + 0x140], rax
lea rax, [rbp + 0xc4]
mov qword [rbp + 0x148], rax
movaps xmm0, xmmword [rbp + 0x140]
movdqa xmmword [rbp + 0x40], xmm0
lea rdx, [rbp + 0x40]
lea rcx, [rsp + 0x78]
call fcn.180118e20
mov r8d, ebx
mov rdx, rax
mov rcx, r13
call fcn.180153520
mov eax, dword [0x180242614]
bt eax, 0xa
jae 0x18014ef3c
mov dword [rbp + 8], 0xff000000
lea rax, [rbp + 8]
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0x20]
mov qword [rsp + 0x28], rax
mov eax, dword [rsp + 0x68]
mov dword [rsp + 0x20], eax
mov r9d, dword [rbp + 0x3b0]
mov r8d, dword [rbp + 0x3b8]
mov edx, dword [rsp + 0x50]
call fcn.18017c110
mov eax, dword [0x180242614]
test al, 2
je 0x18014f0ab
mov dword [rsp + 0x70], 0x3f800000
mov dword [rsp + 0x74], r12d
movd xmm6, esi
cvtdq2ps xmm6, xmm6
movd xmm0, edi
cvtdq2ps xmm0, xmm0
divss xmm0, xmm6
movss dword [rsp + 0x58], xmm0
lea r8, [rsp + 0x70]
lea rdx, [rsp + 0x74]
lea rcx, [rsp + 0x58]
call fcn.1800aa7e0
movss xmm3, dword [rax]
mov r8d, dword [0x18024231c]
lea rdx, [rbp + 0x24]
lea rcx, [0x180242318]
call fcn.18014e020
mov dword [rsp + 0x58], 7
mov dword [rbp + 0xc], 0xff000000
mov r14d, dword [rsp + 0x50]
mov byte [rsp + 0x48], 1
lea rax, [rsp + 0x58]
mov qword [rsp + 0x40], rax
lea rax, [rbp + 0xc]
mov qword [rsp + 0x38], rax
lea rax, [rbp + 0x24]
mov qword [rsp + 0x30], rax
movss dword [rsp + 0x28], xmm3
mov eax, dword [rsp + 0x68]
mov dword [rsp + 0x20], eax
mov r9d, 2
mov r8d, dword [rbp + 0x3b8]
lea edx, [r14 - 6]
call fcn.18017c250
cmp edi, esi
jle 0x18014f09f
divss xmm6, xmm14
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_floorf
mulss xmm0, xmm15
mov dword [rsp + 0x58], 0x3f800000
mov dword [rsp + 0x74], r12d
mov eax, edi
sub eax, esi
movd xmm1, eax
cvtdq2ps xmm1, xmm1
divss xmm1, xmm0
movss dword [rsp + 0x70], xmm1
lea r8, [rsp + 0x58]
lea rdx, [rsp + 0x74]
lea rcx, [rsp + 0x70]
call fcn.1800aa7e0
movss xmm2, dword [rax]
mov eax, dword [0x180241b94]
mov dword [rbp + 0x24], eax
mov dword [rsp + 0x58], 7
mov dword [rbp - 0x20], r12d
mov byte [rsp + 0x48], 1
lea rax, [rsp + 0x58]
mov qword [rsp + 0x40], rax
lea rax, [rbp - 0x20]
mov qword [rsp + 0x38], rax
lea rax, [rbp + 0x24]
mov qword [rsp + 0x30], rax
movss dword [rsp + 0x28], xmm2
mov eax, dword [rsp + 0x68]
mov dword [rsp + 0x20], eax
mov r9d, 2
mov r8d, dword [rbp + 0x3b8]
lea edx, [r14 - 6]
call fcn.18017c250
mov r14d, 5
mov eax, dword [0x180242614]
test al, 4
je 0x18014f159
mov dword [rsp + 0x58], 2
lea rcx, [0x180237ec4]
cmp edi, esi
lea rax, [0x180241b94]
cmovg rcx, rax
mov eax, dword [rsp + 0x68]
add eax, dword [rbp + 0x3b8]
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 + 0x68]
movd xmm1, esi
cvtdq2ps xmm1, xmm1
mulss xmm2, xmm1
subss xmm3, xmm2
subss xmm3, dword [0x1802091f0]
cvttss2si r9d, xmm3
mov r8d, dword [rsp + 0x50]
sub r8d, r14d
sub r8d, 5
mov dword [rsp + 0x38], edi
lea rax, [0x1801b437c]
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x58]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
mov r14, qword [rbp + 0x18]
mov rdx, r14
lea rcx, [0x18022d220]
call fcn.18017bc90
jmp 0x18014f161
mov esi, dword [rsp + 0x68]
mov r14, qword [rbp + 0x18]
cmp r15d, 5
jne 0x18014f2d2
mov edx, 1
mov rcx, r13
call fcn.1800bd680
mov rdi, rax
test rax, rax
je 0x18014f2d2
mov ecx, dword [0x180242614]
test cl, 8
je 0x18014f233
mov rcx, rax
call fcn.1800ad920
cmp dword [rax], 0x3e6
jne 0x18014f1a9
movaps xmm6, xmm10
jmp 0x18014f1ad
movaps xmm6, xmm8
mov rcx, rdi
call fcn.18014e5e0
movaps xmm0, xmm6
mulss xmm0, dword [rax]
movaps xmm1, xmm6
minss xmm1, xmm0
divss xmm1, xmm6
mov dword [rsp + 0x58], 3
mov dword [rbp + 0x14], 0xff000000
mov r8d, dword [rbp + 0x3b8]
add r8d, 4
add r8d, esi
mov byte [rsp + 0x48], r12b
lea rax, [rsp + 0x58]
mov qword [rsp + 0x40], rax
lea rax, [rbp + 0x14]
mov qword [rsp + 0x38], rax
lea rax, [0x180242114]
mov qword [rsp + 0x30], rax
movss dword [rsp + 0x28], xmm1
mov dword [rsp + 0x20], 2
mov r9d, dword [rbp + 0x3b0]
mov edx, dword [rsp + 0x50]
call fcn.18017c250
mov dword [rbp - 0x58], 7
mov ecx, dword [0x180242614]
test cl, 0x10
je 0x18014f2d2
mov dword [rsp + 0x58], 0x42c80000
mov dword [rsp + 0x74], r12d
mov rcx, rdi
call fcn.18014e5e0
movss xmm0, dword [rax]
mulss xmm0, xmm8
movss dword [rbp + 0x78], xmm0
lea r8, [rsp + 0x58]
lea rdx, [rsp + 0x74]
lea rcx, [rbp + 0x78]
call fcn.1800aa7e0
movss xmm2, dword [rax]
cvtps2pd xmm2, xmm2
mov dword [rsp + 0x70], r12d
mov r9d, dword [rbp + 0x3b8]
add r9d, esi
mov esi, dword [rsp + 0x50]
mov edi, dword [rbp + 0x3b0]
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, [0x180237ec4]
mov qword [rsp + 0x20], rax
mov rdx, r14
lea rcx, [0x18022d220]
call fcn.18017beb0
jmp 0x18014f2dc
mov esi, dword [rsp + 0x50]
mov edi, dword [rbp + 0x3b0]
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x180], xmm0
movups xmmword [rbp + 0x190], xmm0
movups xmmword [rbp + 0x1a0], xmm0
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
mov dword [rbp + 0x200], eax
mov rcx, qword [0x180233bc0]
mov rax, qword [rcx]
lea r8, [rbp + 0x180]
mov edx, dword [rbp + 0x38]
call qword [rax + 0x40]
test al, al
je 0x18014f76a
mov eax, edi
cdq
sub eax, edx
sar eax, 1
lea edi, [rsi + rax]
test byte [0x180242614], 1
je 0x18014f3df
mov r12d, dword [r14 + 8]
add r12d, 2
lea rdx, [rbp + 0x180]
lea rcx, [rsp + 0x78]
call fcn.1800906f0
nop
lea rdx, [rsp + 0x78]
lea rcx, [rbp + 0x40]
call fcn.18017f320
nop
mov rcx, rax
call fcn.1800e6cb0
mov ecx, 1
mov dword [rsp + 0x58], ecx
mov esi, dword [rbp + 0x3b8]
mov r9d, esi
sub r9d, r12d
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x58]
mov qword [rsp + 0x28], rax
lea rax, [0x180237ec4]
mov qword [rsp + 0x20], rax
mov r8d, edi
mov rdx, r14
lea rcx, [0x18022d220]
call fcn.18017beb0
nop
lea rcx, [rbp + 0x40]
call fcn.1800f4520
nop
lea rcx, [rsp + 0x78]
call fcn.180090ac0
jmp 0x18014f3e5
mov esi, dword [rbp + 0x3b8]
test dword [0x180242614], 0x1000
je 0x18014f491
lea rcx, [rsp + 0x78]
call fcn.180090850
nop
lea rcx, [rbp + 0xe8]
call fcn.180121aa0
mov dword [rsp + 0x20], 1
lea r9, [rbp + 0xe8]
lea r8, [rsp + 0x78]
mov edx, dword [rbp + 0x1c8]
lea rcx, [0x180242af0]
call fcn.18013fa20
test al, al
je 0x18014f487
mov eax, dword [r14 + 8]
add eax, 2
add r12d, eax
lea rcx, [rsp + 0x78]
call fcn.18006bc10
mov ecx, 1
mov dword [rsp + 0x58], ecx
mov r9d, esi
sub r9d, r12d
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x58]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0xe8]
mov qword [rsp + 0x20], rax
mov r8d, edi
mov rdx, r14
lea rcx, [0x18022d220]
call fcn.18017bc90
nop
lea rcx, [rsp + 0x78]
call fcn.180090ac0
test dword [0x180242614], 0x2000
je 0x18014f76a
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x40], xmm0
mov qword [rbp + 0x50], 0
lea rdx, [rbp + 0x1c8]
lea rcx, [0x180242b40]
call fcn.1801251a0
mov r14, qword [rax]
mov r15, qword [rax + 8]
cmp r14, r15
je 0x18014f59a
nop dword [rax]
nop dword [rax + rax]
mov dword [rbp + 0x28], 0xffffffff
mov dword [rbp + 0x2c], 0
mov word [rbp + 0x30], pe_nt_image_headers64
mov byte [rbp + 0x32], 0
mov rdx, r14
lea rcx, [rsp + 0x78]
call fcn.180090730
mov rsi, rax
mov qword [rsp + 0x58], rax
cmp qword [rax + 0x10], 0
je 0x18014f585
mov rdx, rax
lea rcx, [0x180242b80]
call fcn.1800e3510
test al, al
je 0x18014f585
mov r8, rsi
lea rdx, [rbp + 0x250]
lea rcx, [0x180242b80]
call fcn.180129280
mov rcx, qword [rax]
movsd xmm0, qword [rcx + 0x30]
movsd qword [rbp + 0x28], xmm0
mov edi, dword [rcx + 0x38]
mov dword [rbp + 0x30], edi
mov rcx, rsi
call fcn.180090ac0
test dil, dil
je 0x18014f58d
lea r8, [rbp + 0x28]
mov rdx, r14
lea rcx, [rsp + 0x78]
call fcn.180140a90
nop
lea rdx, [rsp + 0x78]
lea rcx, [rbp + 0x40]
call fcn.180125000
nop
lea rcx, [rsp + 0x78]
jmp 0x18014f588
mov rcx, rsi
call fcn.180090ac0
add r14, 0x20
cmp r14, r15
jne 0x18014f4e0
mov eax, dword [rbp + 0x38]
mov dword [rsp + 0x58], eax
lea r8, [rsp + 0x58]
lea rdx, [rbp + 0x260]
lea rcx, [0x18022d940]
call fcn.1800d7db0
mov rcx, qword [rax]
cmp byte [rcx + 0x14], 0
je 0x18014f625
lea rdx, str.Friend
lea rcx, [rsp + 0x78]
call fcn.1800906f0
nop
lea rdx, [rsp + 0x78]
lea rcx, [0x180242b80]
call fcn.180140a70
mov rdi, rax
lea rcx, [rsp + 0x78]
call fcn.180090ac0
cmp byte [rdi + 8], 0
je 0x18014f625
mov r8, rdi
lea rcx, [rbp + 0x270]
call fcn.1801537b0
nop
lea rdx, [rbp + 0x270]
lea rcx, [rbp + 0x40]
call fcn.180125000
nop
lea rcx, [rbp + 0x270]
call fcn.180090ac0
mov rsi, qword [rbp + 0x48]
mov rcx, rsi
mov r14, qword [rbp + 0x40]
sub rcx, r14
movabs r15, 0x2aaaaaaaaaaaaaab
mov rax, r15
imul rcx
sar rdx, 3
mov rax, rdx
shr rax, 0x3f
add rdx, rax
je 0x18014f6f8
mov rdx, rsi
mov rcx, r14
call fcn.180153800
mov rdi, r14
cmp r14, rsi
je 0x18014f6f8
mov dword [rsp + 0x58], 0
mov r15d, dword [rbp + 0x3b0]
add r15d, dword [rsp + 0x50]
mov rbx, qword [rbp + 0x18]
mov r13d, dword [rbp + 0x3b8]
nop dword [rax]
mov rcx, rdi
cmp qword [rdi + 0x18], 0xf
jbe 0x18014f69d
mov rcx, qword [rdi]
mov r9d, dword [rbp + 0x3a0]
add r9d, r13d
lea rax, [rdi + 0x20]
mov qword [rsp + 0x30], rcx
lea rcx, [rsp + 0x58]
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x20], rax
lea r8d, [r15 + 4]
mov rdx, rbx
lea rcx, [0x18022d220]
call fcn.18017bc90
mov eax, dword [rbx + 8]
add dword [rbp + 0x3a0], eax
add rdi, 0x30
cmp rdi, rsi
jne 0x18014f690
mov ebx, dword [rbp + 0x20]
mov r13, qword [rbp + 0xd0]
movabs r15, 0x2aaaaaaaaaaaaaab
test r14, r14
je 0x18014f766
mov rdi, r14
cmp r14, rsi
je 0x18014f716
mov rcx, rdi
call fcn.180090ac0
add rdi, 0x30
cmp rdi, rsi
jne 0x18014f705
mov rcx, qword [rbp + 0x50]
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 0x18014f75e
add rdx, 0x27
mov r14, qword [r14 - 8]
sub rax, r14
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180150dd2
mov rcx, r14
call fcn.1801839fc
mov r15d, dword [rbp + 0x3c]
mov esi, dword [rbp + 0x3b8]
mov r14d, dword [rbp + 0x3b0]
mov edi, dword [rsp + 0x50]
test byte [0x180242614], 0x20
je 0x18014f7cc
movss xmm0, dword [0x180237614]
mulss xmm0, xmm12
cvttss2si r9d, xmm0
mov dword [rsp + 0x58], 7
lea ecx, [r15 - 1]
mov r8d, esi
sub r8d, r12d
mov eax, r14d
cdq
sub eax, edx
sar eax, 1
add eax, edi
lea rdx, [rsp + 0x58]
mov qword [rsp + 0x30], rdx
mov dword [rsp + 0x28], ecx
mov dword [rsp + 0x20], r9d
mov edx, eax
call fcn.18017c6d0
test byte [0x180242614], 0x40
je 0x18014f859
lea eax, [r15 - 1]
cmp eax, 8
ja 0x18014f7f2
movsxd rax, r15d
lea rcx, str.Unknown_Class
mov rcx, qword [rcx + rax*8]
jmp 0x18014f7f9
mov rcx, qword [str.Unknown_Class]
mov dword [rsp + 0x58], 0
mov r9d, dword [rbp + 0x3a0]
add r9d, esi
lea r8d, [rdi + 4]
add r8d, r14d
mov qword [rsp + 0x38], rcx
lea rax, [0x180203d10]
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x58]
mov qword [rsp + 0x28], rax
lea rax, [0x180237ec4]
mov qword [rsp + 0x20], rax
mov r12, qword [rbp + 0x18]
mov rdx, r12
lea rcx, [0x18022d220]
call fcn.18017beb0
mov eax, dword [r12 + 8]
add dword [rbp + 0x3a0], eax
jmp 0x18014f85d
mov r12, qword [rbp + 0x18]
test dword [0x180242614], 0x200
je 0x18014f940
mov r14, qword [rbp + 0x3a8]
cmp r13, r14
je 0x18014f940
mov rax, qword [r13]
mov rcx, r13
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 0x18014f8c2
xorps xmm0, xmm0
sqrtss xmm0, xmm1
jmp 0x18014f8ca
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 + 0x58], eax
mov r14d, dword [rsp + 0x68]
mov r15d, dword [rbp - 0x58]
lea r9d, [r15 + r14]
add r9d, esi
mov eax, dword [rbp + 0x3b0]
cdq
sub eax, edx
sar eax, 1
mov edi, dword [rsp + 0x50]
lea r8d, [rdi + rax]
mov dword [rsp + 0x38], ecx
lea rcx, [0x180203d18]
mov qword [rsp + 0x30], rcx
lea rcx, [rsp + 0x58]
mov qword [rsp + 0x28], rcx
lea rcx, [0x180237ec4]
mov qword [rsp + 0x20], rcx
mov rdx, r12
lea rcx, [0x18022d220]
call fcn.18017beb0
add r15d, dword [r12 + 8]
jmp 0x18014f949
mov r15d, dword [rbp - 0x58]
mov r14d, dword [rsp + 0x68]
mov rcx, r13
call fcn.1800d55c0
mov r9, qword [0x180233ba8]
mov rcx, qword [r9]
mov r8, qword [rcx + 0x20]
mov eax, dword [rax]
mov dword [rbp + 0x7c], eax
lea rdx, [rbp + 0x7c]
mov rcx, r9
call r8
mov rsi, rax
mov qword [rbp + 0x18], rax
test rax, rax
je 0x18014fbe6
test dword [0x180242614], 0x100
je 0x18014faff
mov edi, 4
mov eax, dword [0x18023228c]
mov rcx, qword gs:[0x58]
mov rsi, qword [rcx + rax*8]
mov ecx, dword [rdi + rsi]
cmp dword [0x180244970], ecx
jle 0x18014f9e0
lea rcx, [0x180244970]
call fcn.180183aac
cmp dword [0x180244970], 0xffffffff
jne 0x18014f9e0
mov rax, qword [0x18022f6c0]
mov qword [0x180244968], rax
lea rcx, [0x180244970]
call fcn.180183a40
mov eax, dword [rdi + rsi]
cmp dword [0x180244974], eax
jle 0x18014fa1a
lea rcx, [0x180244974]
call fcn.180183aac
cmp dword [0x180244974], 0xffffffff
jne 0x18014fa1a
mov rax, qword [0x18022f698]
mov qword [0x180244978], rax
lea rcx, [0x180244974]
call fcn.180183a40
mov rsi, qword [rbp + 0x18]
mov rax, qword [rsi]
mov rdx, qword [rax + 0xa50]
mov rcx, rsi
call rdx
mov edi, eax
mov rcx, r13
call fcn.1800a8c60
mov edx, dword [rax]
sub edx, 8
je 0x18014fa55
cmp edx, 1
jne 0x18014fa78
mov eax, edi
sub eax, 3
je 0x18014fa65
cmp eax, edx
jne 0x18014fa78
mov edi, 6
jmp 0x18014fa78
mov ecx, edi
test edi, edi
je 0x18014fa73
sub ecx, 1
je 0x18014fa6c
cmp ecx, 2
jne 0x18014fa78
mov edi, 5
jmp 0x18014fa78
mov edi, 4
jmp 0x18014fa78
mov edi, 1
xor r8d, r8d
mov edx, edi
mov rcx, r13
call qword [0x180244968]
test rax, rax
je 0x18014fafb
mov rcx, rax
call qword [0x180244978]
mov rcx, rax
mov eax, 1
mov dword [rsp + 0x58], eax
lea r9d, [r15 + r14]
add r9d, dword [rbp + 0x3b8]
mov eax, dword [rbp + 0x3b0]
cdq
sub eax, edx
sar eax, 1
mov edi, dword [rsp + 0x50]
lea r8d, [rdi + rax]
mov qword [rsp + 0x38], rcx
lea rcx, [0x180203e3c]
mov qword [rsp + 0x30], rcx
lea rcx, [rsp + 0x58]
mov qword [rsp + 0x28], rcx
lea rcx, [0x180237ec4]
mov qword [rsp + 0x20], rcx
mov rdx, r12
lea rcx, [0x18022d220]
call fcn.18017bc90
add r15d, dword [r12 + 8]
jmp 0x18014faff
mov edi, dword [rsp + 0x50]
test byte [0x180242614], 0x80
je 0x18014fbe6
mov rcx, rsi
call fcn.180174190
mov r9, rax
mov esi, dword [rbp + 0x3b0]
test rax, rax
je 0x18014fbec
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 + 0x58], 0x3f400000
mov dword [rsp + 0x74], 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 + 0x58]
lea rdx, [rsp + 0x74]
lea rcx, [rsp + 0x70]
call fcn.1800aa7e0
movss xmm3, dword [0x180237614]
mulss xmm3, dword [rax]
lea eax, [r15 + r14]
mov r15d, dword [rbp + 0x3b8]
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 [0x180237ec4]
mov dword [rsp + 0x28], eax
mov qword [rsp + 0x20], r9
movaps xmm1, xmm4
call fcn.18017c870
jmp 0x18014fbf3
mov esi, dword [rbp + 0x3b0]
mov r15d, dword [rbp + 0x3b8]
test dword [0x180242614], 0x20000
je 0x18014fca4
mov rax, qword [r13 + 0x10]
lea rcx, [r13 + 0x10]
call qword [rax + 0x40]
mov r14, qword [rbp + 0x3a8]
test al, al
jne 0x18014fcab
cmp r13, r14
je 0x18014fcab
mov qword [rbp + 0x3b8], r13
lea rdx, [rbp + 0x3b8]
lea rcx, [0x180242aa0]
call fcn.180153790
cmp byte [rax], 0
je 0x18014fcab
mov dword [rbp + 0x3b8], 0
mov dword [rbp - 0x54], 0xff5f5fff
mov r9d, dword [rbp + 0x3a0]
add r9d, r15d
lea r8d, [rdi + 4]
add r8d, esi
lea rax, str.LAGCOMP
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0x3b8]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x54]
mov qword [rsp + 0x20], rax
mov rdx, r12
lea rcx, [0x18022d220]
call fcn.18017bc90
mov eax, dword [r12 + 8]
add dword [rbp + 0x3a0], eax
jmp 0x18014fcab
mov r14, qword [rbp + 0x3a8]
test dword [0x180242614], 0x40000
je 0x18014fd7b
cmp r13, r14
je 0x18014fd7b
mov rcx, qword [0x180233bc0]
mov rax, qword [rcx]
call qword [rax + 0x240]
test rax, rax
je 0x18014fd7b
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x30]
test al, al
jne 0x18014fd7b
mov rax, qword [r13 + 0x10]
lea rcx, [r13 + 0x10]
call qword [rax + 0x48]
mov edx, eax
mov rcx, qword [rbp + 0x60]
call fcn.180134c90
mov r10d, eax
test eax, eax
je 0x18014fd7b
lea ecx, [rax - 6]
cmp ecx, 0xc1
jbe 0x18014fd7b
mov dword [rbp + 0x3b8], 0
call fcn.18017f1b0
mov dword [rsp + 0x58], eax
mov r9d, dword [rbp + 0x3a0]
add r9d, r15d
lea r8d, [rdi + 4]
add r8d, esi
mov dword [rsp + 0x38], r10d
lea rax, str._dMS
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0x3b8]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x58]
mov qword [rsp + 0x20], rax
mov rdx, r12
lea rcx, [0x18022d220]
call fcn.18017bc90
mov eax, dword [r12 + 8]
add dword [rbp + 0x3a0], eax
test dword [0x180242614], 0x80000
je 0x180150047
cmp r13, r14
je 0x180150047
mov rax, qword [r13 + 0x10]
lea rcx, [r13 + 0x10]
call qword [rax + 0x48]
mov r14d, eax
mov eax, 4
mov esi, eax
mov edi, eax
mov eax, dword [0x18023228c]
mov rcx, qword gs:[0x58]
mov rcx, qword [rcx + rax*8]
mov edx, dword [rsi + rcx]
cmp dword [0x1802341d8], edx
jle 0x18014fe76
lea rcx, [0x1802341d8]
call fcn.180183aac
mov edi, esi
cmp dword [0x1802341d8], 0xffffffff
jne 0x18014fe76
mov rcx, qword [0x180233b80]
mov rax, qword [rcx]
call qword [rax + 0x40]
mov r10, rax
test rax, rax
je 0x18014fe62
nop dword [rax]
mov r8, qword [r10 + 0x10]
mov rcx, 0xffffffffffffffff
mov r9d, 0x811c9dc5
inc rcx
cmp byte [r8 + rcx], 0
jne 0x18014fe11
xor edx, edx
test rcx, rcx
je 0x18014fe54
nop dword [rax]
nop word [rax + rax]
movsx eax, byte [r8 + rdx]
xor eax, r9d
imul r9d, eax, 0x1000193
inc rdx
cmp rdx, rcx
jb 0x18014fe30
cmp r9d, 0x3369e751
je 0x180150018
mov r10, qword [r10 + 0x20]
test r10, r10
jne 0x18014fe00
mov edi, 4
xor eax, eax
mov dword [0x1802341b4], eax
lea rcx, [0x1802341d8]
call fcn.180183a40
lea eax, [r14*4]
movsxd rcx, eax
movsxd rdx, dword [0x1802341b4]
mov rax, qword [rbp + 0x60]
add rax, rcx
mov esi, dword [rdx + rax]
mov rax, qword [r13 + 0x10]
lea rcx, [r13 + 0x10]
call qword [rax + 0x48]
mov r14d, eax
mov eax, dword [0x18023228c]
mov rcx, qword gs:[0x58]
mov rcx, qword [rcx + rax*8]
mov edx, dword [rdi + rcx]
cmp dword [0x1802341b0], edx
jle 0x18014ff61
lea rcx, [0x1802341b0]
call fcn.180183aac
cmp dword [0x1802341b0], 0xffffffff
jne 0x18014ff61
mov rcx, qword [0x180233b80]
mov rdx, qword [rcx]
call qword [rdx + 0x40]
mov r10, rax
test rax, rax
je 0x18014ff4d
mov r8, qword [r10 + 0x10]
mov rcx, 0xffffffffffffffff
mov r9d, 0x811c9dc5
inc rcx
cmp byte [r8 + rcx], 0
jne 0x18014ff01
xor edx, edx
test rcx, rcx
je 0x18014ff44
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 0x18014ff20
cmp r9d, 0x3369e751
je 0x180150032
mov r10, qword [r10 + 0x20]
test r10, r10
jne 0x18014fef0
xor eax, eax
mov dword [0x1802341c0], eax
lea rcx, [0x1802341b0]
call fcn.180183a40
lea eax, [r14*4]
movsxd rcx, eax
movsxd rdx, dword [0x1802341c0]
mov rax, qword [rbp + 0x60]
add rax, rcx
mov r10d, dword [rdx + rax]
cmp esi, 0x14
jl 0x180150047
mov ecx, r10d
cmp r10d, 1
mov eax, 1
cmovl ecx, eax
mov eax, esi
cdq
idiv ecx
mov r14d, dword [rbp + 0x3b0]
cmp eax, 0xa
jl 0x18015004e
mov dword [rbp + 0x3b8], 0
mov dword [rbp - 0x50], 0xff5f5fff
mov r9d, dword [rbp + 0x3a0]
add r9d, r15d
mov r8d, dword [rsp + 0x50]
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, [rbp + 0x3b8]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x50]
mov qword [rsp + 0x20], rax
mov rdx, r12
lea rcx, [0x18022d220]
call fcn.18017bc90
mov eax, dword [r12 + 8]
add dword [rbp + 0x3a0], eax
jmp 0x18015004e
lea r8, str.m_iScore
mov rdx, qword [r10 + 0x18]
call fcn.180183640
mov edi, 4
jmp 0x18014fe64
lea r8, str.m_iDeaths
mov rdx, qword [r10 + 0x18]
call fcn.180183640
jmp 0x18014ff4f
mov r14d, dword [rbp + 0x3b0]
mov esi, dword [rsp + 0x50]
mov dword [rsp + 0x78], esi
mov dword [rsp + 0x7c], r14d
mov dword [rbp - 0x80], r15d
lea rax, [rbp + 0x3a0]
mov qword [rbp - 0x78], rax
mov qword [rbp - 0x70], r12
test dword [0x180242614], 0x4000
je 0x18015077a
mov rcx, r13
call fcn.1800ae010
test al, al
je 0x18015011f
mov rax, qword [0x180233c00]
mov ecx, dword [rax + 0x18]
mov eax, 0x82082083
imul ecx
add edx, ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x3f
sub ecx, eax
mov eax, 0x3c14dc
cmp ecx, 0x20
mov ecx, 0x33ffff
cmovge eax, ecx
mov dword [rbp + 0x3b8], eax
mov dword [rbp + 0x3b0], 0
mov r9d, dword [rbp + 0x3a0]
add r9d, r15d
lea r8d, [rsi + 4]
add r8d, r14d
lea rax, [0x180203e04]
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0x3b0]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x3b8]
mov qword [rsp + 0x20], rax
mov rdx, r12
lea rcx, [0x18022d220]
call fcn.18017bc90
mov eax, dword [r12 + 8]
add dword [rbp + 0x3a0], eax
mov edx, 0x13
mov rcx, r13
call fcn.1800a93c0
test al, al
jne 0x180150141
mov edx, 0x1f
mov rcx, r13
call fcn.1800a93c0
test al, al
je 0x1801501aa
mov dword [rbp - 0x4c], 0xff57cafe
mov eax, dword [rbp - 0x4c]
mov dword [rbp + 0x3b8], eax
mov dword [rbp + 0x3b0], 0
mov r9d, dword [rbp + 0x3a0]
add r9d, r15d
lea r8d, [rsi + 4]
add r8d, r14d
lea rax, [0x180203e10]
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0x3b0]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x3b8]
mov qword [rsp + 0x20], rax
mov rdx, r12
lea rcx, [0x18022d220]
call fcn.18017bc90
mov eax, dword [r12 + 8]
add dword [rbp + 0x3a0], eax
mov rax, qword [r13]
mov rdx, qword [rax + 0x358]
mov rcx, r13
call rdx
mov edi, eax
mov rcx, r13
call fcn.1800ad720
cmp dword [rax], edi
jle 0x18015022d
mov eax, dword [0x180241b94]
mov dword [rbp + 0x3b8], eax
xor edi, edi
mov dword [rbp + 0x3b0], edi
mov r9d, dword [rbp + 0x3a0]
add r9d, r15d
lea r8d, [rsi + 4]
add r8d, r14d
lea rax, [0x180203dfc]
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0x3b0]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x3b8]
mov qword [rsp + 0x20], rax
mov rdx, r12
lea rcx, [0x18022d220]
call fcn.18017bc90
mov eax, dword [r12 + 8]
add dword [rbp + 0x3a0], eax
jmp 0x18015022f
xor edi, edi
mov edx, 0x15
mov rcx, r13
call fcn.1800a93c0
test al, al
jne 0x18015025d
mov edx, 0x1c
mov rcx, r13
call fcn.1800a93c0
test al, al
jne 0x18015025d
mov rcx, r13
call fcn.18014e6e0
test al, al
je 0x1801502be
mov eax, dword [0x180241b94]
mov dword [rbp + 0x3b8], eax
mov dword [rbp + 0x3b0], edi
mov r9d, dword [rbp + 0x3a0]
add r9d, r15d
lea r8d, [rsi + 4]
add r8d, r14d
lea rax, [0x180203e00]
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0x3b0]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x3b8]
mov qword [rsp + 0x20], rax
mov rdx, r12
lea rcx, [0x18022d220]
call fcn.18017bc90
mov eax, dword [r12 + 8]
add dword [rbp + 0x3a0], eax
mov edx, 5
mov rcx, r13
call fcn.1800a93c0
test al, al
jne 0x180150331
mov edx, 0x33
mov rcx, r13
call fcn.1800a93c0
test al, al
jne 0x180150331
mov edx, 0x34
mov rcx, r13
call fcn.1800a93c0
test al, al
jne 0x180150331
mov edx, 0x39
mov rcx, r13
call fcn.1800a93c0
test al, al
jne 0x180150331
mov edx, 0xe
mov rcx, r13
call fcn.1800a93c0
test al, al
je 0x180150392
mov dword [rbp - 0x48], 0xff57cafe
mov r8d, dword [rbp - 0x48]
lea rdx, [0x180203e80]
lea rcx, [rsp + 0x78]
call fcn.180150de0
jmp 0x180150392
mov eax, dword [0x180242114]
mov dword [rbp + 0x3b8], eax
mov dword [rbp + 0x3b0], edi
mov r9d, dword [rbp + 0x3a0]
add r9d, r15d
lea r8d, [rsi + 4]
add r8d, r14d
lea rax, str.UBER
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0x3b0]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x3b8]
mov qword [rsp + 0x20], rax
mov rdx, r12
lea rcx, [0x18022d220]
call fcn.18017bc90
mov eax, dword [r12 + 8]
add dword [rbp + 0x3a0], eax
mov edx, 0x3a
mov rcx, r13
call fcn.1800a93c0
test al, al
jne 0x1801503e7
mov edx, 0x43
mov rcx, r13
call fcn.1800a93c0
test al, al
jne 0x1801503e7
mov edx, 0x3d
mov rcx, r13
call fcn.1800a93c0
test al, al
je 0x18015044c
mov dword [rbp - 0x44], 0xff6c6bff
mov r8d, dword [rbp - 0x44]
lea rdx, [0x180203e70]
lea rcx, [rsp + 0x78]
call fcn.180150de0
jmp 0x18015044c
mov dword [rbp - 0x40], 0xff6c6bff
mov eax, dword [rbp - 0x40]
mov dword [rbp + 0x3b8], eax
mov dword [rbp + 0x3b0], edi
mov r9d, dword [rbp + 0x3a0]
add r9d, r15d
lea r8d, [rsi + 4]
add r8d, r14d
lea rax, [0x180203e68]
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0x3b0]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x3b8]
mov qword [rsp + 0x20], rax
mov rdx, r12
lea rcx, [0x18022d220]
call fcn.18017bc90
mov eax, dword [r12 + 8]
add dword [rbp + 0x3a0], eax
mov edx, 0x3b
mov rcx, r13
call fcn.1800a93c0
test al, al
jne 0x1801504a1
mov edx, 0x44
mov rcx, r13
call fcn.1800a93c0
test al, al
jne 0x1801504a1
mov edx, 0x3e
mov rcx, r13
call fcn.1800a93c0
test al, al
je 0x180150506
mov dword [rbp - 0x3c], 0xff6c6bff
mov r8d, dword [rbp - 0x3c]
lea rdx, [0x180203e60]
lea rcx, [rsp + 0x78]
call fcn.180150de0
jmp 0x180150506
mov dword [rbp - 0x38], 0xff6c6bff
mov eax, dword [rbp - 0x38]
mov dword [rbp + 0x3b8], eax
mov dword [rbp + 0x3b0], edi
mov r9d, dword [rbp + 0x3a0]
add r9d, r15d
lea r8d, [rsi + 4]
add r8d, r14d
lea rax, [0x180203e58]
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0x3b0]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x3b8]
mov qword [rsp + 0x20], rax
mov rdx, r12
lea rcx, [0x18022d220]
call fcn.18017bc90
mov eax, dword [r12 + 8]
add dword [rbp + 0x3a0], eax
mov edx, 0x3c
mov rcx, r13
call fcn.1800a93c0
test al, al
jne 0x18015055b
mov edx, 0x45
mov rcx, r13
call fcn.1800a93c0
test al, al
jne 0x18015055b
mov edx, 0x3f
mov rcx, r13
call fcn.1800a93c0
test al, al
je 0x1801505c0
mov dword [rbp - 0x34], 0xff6c6bff
mov r8d, dword [rbp - 0x34]
lea rdx, [0x180203e50]
lea rcx, [rsp + 0x78]
call fcn.180150de0
jmp 0x1801505c0
mov dword [rbp - 0x30], 0xff6c6bff
mov eax, dword [rbp - 0x30]
mov dword [rbp + 0x3b8], eax
mov dword [rbp + 0x3b0], edi
mov r9d, dword [rbp + 0x3a0]
add r9d, r15d
lea r8d, [rsi + 4]
add r8d, r14d
lea rax, [0x180203e48]
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0x3b0]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x3b8]
mov qword [rsp + 0x20], rax
mov rdx, r12
lea rcx, [0x18022d220]
call fcn.18017bc90
mov eax, dword [r12 + 8]
add dword [rbp + 0x3a0], eax
mov edx, 0x10
mov rcx, r13
call fcn.1800a93c0
test al, al
je 0x18015062c
mov dword [rbp + 0x3b8], ebx
mov dword [rbp + 0x3b0], edi
mov r9d, dword [rbp + 0x3a0]
add r9d, r15d
lea r8d, [rsi + 4]
add r8d, r14d
lea rax, str.BANNER
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0x3b0]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x3b8]
mov qword [rsp + 0x20], rax
mov rdx, r12
lea rcx, [0x18022d220]
call fcn.18017bc90
mov eax, dword [r12 + 8]
add dword [rbp + 0x3a0], eax
mov edx, 0x1a
mov rcx, r13
call fcn.1800a93c0
test al, al
je 0x180150698
mov dword [rbp + 0x3b8], ebx
mov dword [rbp + 0x3b0], edi
mov r9d, dword [rbp + 0x3a0]
add r9d, r15d
lea r8d, [rsi + 4]
add r8d, r14d
lea rax, str.BATTALIONS
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0x3b0]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x3b8]
mov qword [rsp + 0x20], rax
mov rdx, r12
lea rcx, [0x18022d220]
call fcn.18017bc90
mov eax, dword [r12 + 8]
add dword [rbp + 0x3a0], eax
mov edx, 0x1d
mov rcx, r13
call fcn.1800a93c0
test al, al
je 0x180150704
mov dword [rbp + 0x3b8], ebx
mov dword [rbp + 0x3b0], edi
mov r9d, dword [rbp + 0x3a0]
add r9d, r15d
lea r8d, [rsi + 4]
add r8d, r14d
lea rax, str.CONCH
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0x3b0]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x3b8]
mov qword [rsp + 0x20], rax
mov rdx, r12
lea rcx, [0x18022d220]
call fcn.18017bc90
mov eax, dword [r12 + 8]
add dword [rbp + 0x3a0], eax
mov edx, 0x51
mov rcx, r13
call fcn.1800a93c0
test al, al
je 0x18015077a
mov dword [rbp - 0x2c], 0xff57cafe
mov eax, dword [rbp - 0x2c]
mov dword [rbp + 0x3b8], eax
mov dword [rbp + 0x3b0], edi
mov r9d, dword [rbp + 0x3a0]
add r9d, r15d
lea r8d, [rsi + 4]
add r8d, r14d
lea rax, [0x180203eb0]
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0x3b0]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x3b8]
mov qword [rsp + 0x20], rax
mov rdx, r12
lea rcx, [0x18022d220]
call fcn.18017bc90
mov eax, dword [r12 + 8]
add dword [rbp + 0x3a0], eax
test dword [0x180242614], 0x8000
je 0x180150975
mov edx, 0x18
mov rcx, r13
call fcn.1800a93c0
xor ebx, ebx
test al, al
je 0x180150802
mov dword [rbp - 0x28], 0xff57cafe
mov eax, dword [rbp - 0x28]
mov dword [rbp + 0x3b8], eax
mov dword [rbp + 0x3b0], ebx
mov r9d, dword [rbp + 0x3a0]
add r9d, r15d
lea r8d, [rsi + 4]
add r8d, r14d
lea rax, [0x180203e98]
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0x3b0]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x3b8]
mov qword [rsp + 0x20], rax
mov rdx, r12
lea rcx, [0x18022d220]
call fcn.18017bc90
mov eax, dword [r12 + 8]
add dword [rbp + 0x3a0], eax
mov edx, 0x1e
mov rcx, r13
call fcn.1800a93c0
test al, al
jne 0x180150824
mov edx, 0x30
mov rcx, r13
call fcn.1800a93c0
test al, al
je 0x180150889
mov dword [rbp - 0x24], 0xff57cafe
mov eax, dword [rbp - 0x24]
mov dword [rbp + 0x3b8], eax
mov dword [rbp + 0x3b0], ebx
mov r9d, dword [rbp + 0x3a0]
add r9d, r15d
lea r8d, [rsi + 4]
add r8d, r14d
lea rax, str.MARKED
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0x3b0]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x3b8]
mov qword [rsp + 0x20], rax
mov rdx, r12
lea rcx, [0x18022d220]
call fcn.18017bc90
mov eax, dword [r12 + 8]
add dword [rbp + 0x3a0], eax
mov edx, 0x16
mov rcx, r13
call fcn.1800a93c0
test al, al
je 0x1801508ff
mov dword [rbp + 0x10], 0xff57cafe
mov eax, dword [rbp + 0x10]
mov dword [rbp + 0x3b8], eax
mov dword [rbp + 0x3b0], ebx
mov r9d, dword [rbp + 0x3a0]
add r9d, r15d
lea r8d, [rsi + 4]
add r8d, r14d
lea rax, [0x180203e88]
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0x3b0]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x3b8]
mov qword [rsp + 0x20], rax
mov rdx, r12
lea rcx, [0x18022d220]
call fcn.18017bc90
mov eax, dword [r12 + 8]
add dword [rbp + 0x3a0], eax
mov edx, 0x1b
mov rcx, r13
call fcn.1800a93c0
test al, al
je 0x180150975
mov dword [rbp - 0x1c], 0xff57cafe
mov eax, dword [rbp - 0x1c]
mov dword [rbp + 0x3b8], eax
mov dword [rbp + 0x3b0], ebx
mov r9d, dword [rbp + 0x3a0]
add r9d, r15d
lea r8d, [rsi + 4]
add r8d, r14d
lea rax, [0x180203e90]
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0x3b0]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x3b8]
mov qword [rsp + 0x20], rax
mov rdx, r12
lea rcx, [0x18022d220]
call fcn.18017bc90
mov eax, dword [r12 + 8]
add dword [rbp + 0x3a0], eax
test dword [0x180242614], 0x10000
je 0x180150d42
cmp byte [0x18023b1b1], 0
je 0x1801509bb
mov edx, 7
mov rcx, r13
call fcn.1800a93c0
test al, al
je 0x1801509bb
mov dword [rbp - 0x18], 0xffc864ff
mov r8d, dword [rbp - 0x18]
lea rdx, [0x180203f18]
lea rcx, [rsp + 0x78]
call fcn.180150de0
mov rcx, r13
call fcn.1800a7ad0
xor edi, edi
cmp byte [rax], dil
je 0x180150a2f
mov dword [rbp - 0x14], 0xff57cafe
mov eax, dword [rbp - 0x14]
mov dword [rbp + 0x3b8], eax
mov dword [rbp + 0x3b0], edi
mov r9d, dword [rbp + 0x3a0]
add r9d, r15d
lea r8d, [rsi + 4]
add r8d, r14d
lea rax, [0x180203f20]
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0x3b0]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x3b8]
mov qword [rsp + 0x20], rax
mov rdx, r12
lea rcx, [0x18022d220]
call fcn.18017bc90
mov eax, dword [r12 + 8]
add dword [rbp + 0x3a0], eax
xor edx, edx
mov rcx, r13
call fcn.1800a93c0
test al, al
je 0x180150afa
mov rbx, qword [rbp + 0x18]
test rbx, rbx
je 0x180150afa
mov rcx, rbx
call fcn.1800a79c0
cmp eax, 0x12
jne 0x180150a77
mov dword [rbp - 0x10], 0xff808080
mov r8d, dword [rbp - 0x10]
lea rdx, [0x180203f0c]
lea rcx, [rsp + 0x78]
call fcn.180150de0
mov rcx, rbx
call fcn.1800a79c0
cmp eax, 0x3d
jne 0x180150ad1
mov rax, qword [0x180233c00]
movss xmm6, dword [rax + 0xc]
mov rcx, rbx
call fcn.1800bd480
subss xmm6, dword [rax]
lea rcx, [rsp + 0x78]
comiss xmm6, xmm7
jb 0x180150aba
mov dword [rbp - 0xc], 0xff57cafe
mov r8d, dword [rbp - 0xc]
lea rdx, str.CHARGED
jmp 0x180150acc
mov dword [rbp - 8], 0xff57cafe
mov r8d, dword [rbp - 8]
lea rdx, [0x180203ef8]
call fcn.180150de0
mov rcx, rbx
call fcn.1800a79c0
cmp eax, 0x4f
jne 0x180150afa
mov dword [rbp - 4], 0xff57cafe
mov r8d, dword [rbp - 4]
lea rdx, [0x180203ef8]
lea rcx, [rsp + 0x78]
call fcn.180150de0
mov edx, 1
mov rcx, r13
call fcn.1800a93c0
test al, al
je 0x180150b70
mov dword [rbp], 0xff57cafe
mov eax, dword [rbp]
mov dword [rbp + 0x3b8], eax
mov dword [rbp + 0x3b0], edi
mov r9d, dword [rbp + 0x3a0]
add r9d, r15d
lea r8d, [rsi + 4]
add r8d, r14d
lea rax, [0x180203f04]
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0x3b0]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x3b8]
mov qword [rsp + 0x20], rax
mov rdx, r12
lea rcx, [0x18022d220]
call fcn.18017bc90
mov eax, dword [r12 + 8]
add dword [rbp + 0x3a0], eax
mov edx, 4
mov rcx, r13
call fcn.1800a93c0
test al, al
jne 0x180150bb8
mov edx, 9
mov rcx, r13
call fcn.1800a93c0
test al, al
jne 0x180150bb8
mov edx, 0x40
mov rcx, r13
call fcn.1800a93c0
test al, al
jne 0x180150bb8
mov edx, 0x42
mov rcx, r13
call fcn.1800a93c0
test al, al
je 0x180150cb5
mov ebx, dword [0x180242194]
mov rcx, r13
call fcn.1800a94b0
lea rax, str.CLOAK_:.0f__
mov qword [rbp + 0x170], rax
mov qword [rbp + 0x178], 0xe
movss dword [rbp + 0x158], xmm0
movabs rax, 0x7000000000000000
mov qword [rbp + 0x150], rax
mov eax, 1
mov qword [rbp + 0x160], rax
lea rax, [rbp + 0x150]
mov qword [rbp + 0x168], rax
movaps xmm0, xmmword [rbp + 0x160]
movdqa xmmword [rbp + 0x40], xmm0
movaps xmm1, xmmword [rbp + 0x170]
movdqa xmmword [rbp + 0xd0], xmm1
lea r8, [rbp + 0x40]
lea rdx, [rbp + 0xd0]
lea rcx, [rsp + 0x78]
call fcn.1800cc930
or dword [rsp + 0x6c], 4
lea rcx, [rsp + 0x78]
cmp qword [rbp - 0x70], 0xf
cmova rcx, qword [rsp + 0x78]
mov dword [rbp + 0x3b8], ebx
mov dword [rbp + 0x3b0], edi
mov r9d, dword [rbp + 0x3a0]
add r9d, r15d
lea r8d, [rsi + 4]
add r8d, r14d
mov qword [rsp + 0x30], rcx
lea rax, [rbp + 0x3b0]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x3b8]
mov qword [rsp + 0x20], rax
mov rdx, r12
lea rcx, [0x18022d220]
call fcn.18017bc90
mov eax, dword [r12 + 8]
add dword [rbp + 0x3a0], eax
lea rcx, [rsp + 0x78]
call fcn.180090ac0
mov edx, 2
mov rcx, r13
call fcn.1800a93c0
test al, al
jne 0x180150ce8
mov edx, 0x2f
mov rcx, r13
call fcn.1800a93c0
test al, al
jne 0x180150ce8
mov edx, 3
mov rcx, r13
call fcn.1800a93c0
test al, al
je 0x180150d42
mov dword [rbp + 4], 0xff57cafe
mov eax, dword [rbp + 4]
mov dword [rbp + 0x3b8], eax
mov dword [rbp + 0x3b0], edi
mov r9d, dword [rbp + 0x3a0]
add r9d, r15d
lea r8d, [rsi + 4]
add r8d, r14d
lea rax, [0x180203ee8]
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0x3b0]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x3b8]
mov qword [rsp + 0x20], rax
mov rdx, r12
lea rcx, [0x18022d220]
call fcn.18017bc90
mov r14, qword [rbp + 0x3a8]
mov esi, dword [rsp + 0x6c]
mov rax, qword [rbp + 0xc8]
add rax, 8
mov qword [rbp + 0xc8], rax
cmp rax, qword [rbp + 0xe0]
jne 0x18014e830
mov rcx, qword [0x180233c38]
mov rax, qword [rcx]
movaps xmm1, xmm7
call qword [rax + 0x360]
lea r11, [rsp + 0x458]
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