Function at 0x18004f340
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov rax, rsp
mov qword [rax + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x78]
sub rsp, 0x178
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
call fcn.18004b200
call fcn.180054820
mov esi, 4
mov edi, dword [0x1800863e8]
movss xmm8, dword [0x18007abe8]
xor r13d, r13d
mov rax, qword [0x180086088]
cmp byte [rax + 2], r13b
je 0x18004f549
xor ecx, ecx
cmp dword [rax + 0x1c], 1
jne 0x18004f47d
movups xmm6, xmmword [rax + 0x4c]
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
add rax, 0x21ad6c8
mov ebx, r13d
je 0x18004f3e2
mov rbx, qword [rax]
movaps xmmword [rsp + 0x60], xmm6
movss xmm6, dword [rbx + 0x16b4]
mov rax, qword gs:[0x58]
mov rax, qword [rax + rdi*8]
mov ecx, dword [rsi + rax]
cmp dword [0x180086b88], ecx
jle 0x18004f43d
lea rcx, [0x180086b88]
call fcn.18006a3ec
cmp dword [0x180086b88], 0xffffffff
jne 0x18004f43d
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
add rax, 0x1fbd10
mov qword [0x180086b78], rax
lea rcx, [0x180086b88]
call fcn.18006a38c
mov rcx, rbx
call qword [0x180086b78]
movaps xmm1, xmm0
addss xmm1, xmm6
movsd xmm0, qword [rbx + 0x220]
movsd qword [rsp + 0x30], xmm0
mov eax, dword [rbx + 0x228]
mov dword [rsp + 0x38], eax
lea r9, [rsp + 0x60]
movaps xmm2, xmm8
lea rcx, [rsp + 0x30]
call fcn.18004b9b0
jmp 0x18004f542
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
add rax, 0x21ad6c8
mov rbx, r13
je 0x18004f491
mov rbx, qword [rax]
cmp byte [rbx + 0x310], r13b
je 0x18004f542
mov rcx, rbx
call fcn.1800551e0
test al, al
je 0x18004f542
movss xmm6, dword [rbx + 0x16b4]
mov rax, qword gs:[0x58]
mov rax, qword [rax + rdi*8]
mov ecx, dword [rsi + rax]
cmp dword [0x180086b88], ecx
jle 0x18004f504
lea rcx, [0x180086b88]
call fcn.18006a3ec
cmp dword [0x180086b88], 0xffffffff
jne 0x18004f504
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
add rax, 0x1fbd10
mov qword [0x180086b78], rax
lea rcx, [0x180086b88]
call fcn.18006a38c
mov rcx, rbx
call qword [0x180086b78]
movaps xmm1, xmm0
addss xmm1, xmm6
movsd xmm0, qword [rbx + 0x220]
movsd qword [rsp + 0x30], xmm0
mov eax, dword [rbx + 0x228]
mov dword [rsp + 0x38], eax
movaps xmm3, xmm8
movss xmm2, dword [0x18007ac8c]
lea rcx, [rsp + 0x30]
call fcn.18004bba0
mov rax, qword [0x180086088]
cmp byte [rax + 3], r13b
je 0x18004f695
movups xmm6, xmmword [rax + 0x5c]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
add rax, 0x21ad6c8
mov rbx, r13
je 0x18004f56d
mov rbx, qword [rax]
movaps xmmword [rsp + 0x60], xmm6
mov rax, qword [0x180086088]
cmp byte [rax + 4], r13b
je 0x18004f5c0
mov rcx, qword [rbx + 0x30b8]
call fcn.18004e6e0
movsd xmm1, qword [rbx + 0x220]
movsd qword [rsp + 0x30], xmm1
mov eax, dword [rbx + 0x228]
mov dword [rsp + 0x38], eax
lea r9, [rsp + 0x60]
movaps xmm2, xmm8
movaps xmm1, xmm0
lea rcx, [rsp + 0x30]
call fcn.18004b9b0
mov rax, qword [0x180086088]
cmp byte [rax + 5], r13b
je 0x18004f607
mov rcx, qword [rbx + 0x30c0]
call fcn.18004e6e0
movsd xmm1, qword [rbx + 0x220]
movsd qword [rsp + 0x30], xmm1
mov eax, dword [rbx + 0x228]
mov dword [rsp + 0x38], eax
lea r9, [rsp + 0x60]
movaps xmm2, xmm8
movaps xmm1, xmm0
lea rcx, [rsp + 0x30]
call fcn.18004b9b0
mov rax, qword [0x180086088]
cmp byte [rax + 6], r13b
je 0x18004f64e
mov rcx, qword [rbx + 0x30c8]
call fcn.18004e6e0
movsd xmm1, qword [rbx + 0x220]
movsd qword [rsp + 0x30], xmm1
mov eax, dword [rbx + 0x228]
mov dword [rsp + 0x38], eax
lea r9, [rsp + 0x60]
movaps xmm2, xmm8
movaps xmm1, xmm0
lea rcx, [rsp + 0x30]
call fcn.18004b9b0
mov rax, qword [0x180086088]
cmp byte [rax + 7], r13b
je 0x18004f695
mov rcx, qword [rbx + 0x30d0]
call fcn.18004e6e0
movsd xmm1, qword [rbx + 0x220]
movsd qword [rsp + 0x30], xmm1
mov eax, dword [rbx + 0x228]
mov dword [rsp + 0x38], eax
lea r9, [rsp + 0x60]
movaps xmm2, xmm8
movaps xmm1, xmm0
lea rcx, [rsp + 0x30]
call fcn.18004b9b0
mov rax, qword [0x180086088]
cmp byte [rax + 0x10], r13b
je 0x18004f6a7
call fcn.1800539d0
mov rax, qword [0x180086088]
cmp byte [rax + 8], r13b
jne 0x18004f6b2
cmp byte [rax], r13b
je 0x18004f6cb
cmp dword [rax + 0x18], 1
jne 0x18004f6c6
lea rcx, [0x180086a40]
call fcn.180052150
jmp 0x18004f6cb
call fcn.180051ab0
mov rax, qword gs:[0x58]
mov r14d, esi
mov r15, qword [rax + rdi*8]
mov eax, dword [r15 + rsi]
cmp dword [0x180086b58], eax
jle 0x18004f714
lea rcx, [0x180086b58]
call fcn.18006a3ec
cmp dword [0x180086b58], 0xffffffff
jne 0x18004f714
lea rcx, [0x180070580]
call fcn.18006a1d0
lea rcx, [0x180086b58]
call fcn.18006a38c
mov rax, qword [0x180086b08]
mov qword [0x180086b10], rax
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rcx, qword [rax + 0x2191470]
mov rsi, qword [rcx + 8]
mov edi, dword [rcx + 0x10]
mov ebx, r13d
mov rdx, qword [0x180086b10]
test edi, edi
je 0x18004f7a2
nop word [rax + rax]
lea eax, [rbx*8]
mov rax, qword [rax + rsi]
mov qword [rbp + 0xc0], rax
cmp rdx, qword [0x180086b18]
je 0x18004f782
mov qword [rdx], rax
mov rdx, qword [0x180086b10]
add rdx, 8
mov qword [0x180086b10], rdx
jmp 0x18004f79c
lea r8, [rbp + 0xc0]
lea rcx, [0x180086b08]
call fcn.180054d60
mov rdx, qword [0x180086b10]
inc ebx
cmp ebx, edi
jb 0x18004f750
mov esi, r13d
mov r8, qword [0x180086b08]
sub rdx, r8
sar rdx, 3
test rdx, rdx
je 0x18004fb82
mov rdi, r13
movss xmm9, dword [0x18007ad54]
movss xmm10, dword [0x18007ac00]
mov rcx, qword [rdi + r8]
call fcn.1800551e0
test al, al
je 0x18004fb5b
mov r8, qword [0x180086b08]
mov rbx, qword [rdi + r8]
cmp byte [rbx + 0x310], r13b
je 0x18004fb62
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
add rax, 0x21ad6c8
jne 0x18004f80f
mov rax, r13
jmp 0x18004f812
mov rax, qword [rax]
mov ecx, dword [rax + 0x3c]
cmp ecx, 0x64
jne 0x18004f823
cmp dword [rbx + 0x3c], 0xc8
jmp 0x18004f833
cmp ecx, 0xc8
jne 0x18004fb1b
cmp dword [rbx + 0x3c], 0x64
jne 0x18004fb1b
mov rax, qword [0x180086088]
cmp byte [rax + 8], r13b
je 0x18004f85d
mov rdx, qword [0x180086b08]
mov rdx, qword [rdi + rdx]
lea rcx, [0x180086a40]
call fcn.1800507c0
mov rax, qword [0x180086088]
cmp byte [rax + 0xe], r13b
je 0x18004fa39
mov rax, qword [0x180086b08]
mov rbx, qword [rdi + rax]
movsd xmm0, qword [rbx + 0x220]
movsd qword [rsp + 0x40], xmm0
mov eax, dword [rbx + 0x228]
mov dword [rsp + 0x48], eax
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
add rax, 0x21ad6c8
jne 0x18004f8a6
mov rax, r13
jmp 0x18004f8a9
mov rax, qword [rax]
movsd xmm0, qword [rax + 0x220]
movsd qword [rsp + 0x30], xmm0
mov eax, dword [rax + 0x228]
mov dword [rsp + 0x38], eax
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x40]
call fcn.18004e640
comiss xmm9, xmm0
jbe 0x18004fa39
movsd xmm6, qword [rbx + 0x220]
mov eax, dword [rbx + 0x228]
mov dword [rbp - 0x48], eax
mov rax, qword [rbx]
mov rdx, qword [rax + 0x4f8]
mov rcx, rbx
call rdx
movsd xmm7, qword [rax + 0x14]
mov eax, dword [rax + 0x1c]
mov dword [rbp - 0x28], eax
movaps xmm2, xmm6
shufps xmm2, xmm2, 0x55
movss xmm0, dword [rbp - 0x48]
movss dword [rbp - 8], xmm0
movaps xmm1, xmm6
unpcklps xmm1, xmm2
movsd qword [rbp - 0x40], xmm1
mov eax, dword [rbp - 8]
mov dword [rbp - 0x38], eax
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
lea rbx, [rax + 0xe09040]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rcx, qword [rax + 0x21942a8]
add rcx, 0x270
lea r8, [rbp - 0x70]
lea rdx, [rbp - 0x40]
call rbx
movaps xmm2, xmm7
shufps xmm2, xmm2, 0x55
movss xmm0, dword [rbp - 0x28]
movss dword [rsp + 0x68], xmm0
movaps xmm1, xmm7
unpcklps xmm1, xmm2
movsd qword [rbp - 0x20], xmm1
mov eax, dword [rsp + 0x68]
mov dword [rbp - 0x18], eax
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
lea rbx, [rax + 0xe09040]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rcx, qword [rax + 0x21942a8]
add rcx, 0x270
lea r8, [rbp - 0x80]
lea rdx, [rbp - 0x20]
call rbx
movaps xmm0, xmmword [0x18007afb0]
movaps xmmword [rbp - 0x60], xmm0
cvttss2si r10d, dword [rbp - 0x7c]
cvttss2si r8d, dword [rbp - 0x80]
cvttss2si r11d, dword [rbp - 0x6c]
cvttss2si r9d, dword [rbp - 0x70]
lea rcx, [rbp - 0x60]
call fcn.1800087f0
movd xmm0, r8d
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0xc0], xmm0
movd xmm1, r10d
cvtdq2ps xmm1, xmm1
movss dword [rbp + 0xc4], xmm1
movd xmm0, r9d
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0xc8], xmm0
movd xmm1, r11d
cvtdq2ps xmm1, xmm1
movss dword [rbp + 0xcc], xmm1
movss dword [rsp + 0x20], xmm10
mov r9d, eax
lea r8, [rbp + 0xc0]
lea rdx, [rbp + 0xc8]
mov rcx, qword [0x180086a10]
call fcn.180029d90
mov rax, qword [0x180086088]
cmp byte [rax + 0xc], r13b
je 0x18004fa56
mov rdx, qword [0x180086b08]
mov rdx, qword [rdi + rdx]
call fcn.180053520
mov rcx, qword [0x180086088]
cmp byte [rcx + 0xa], r13b
je 0x18004fafe
mov rax, qword [0x180086b08]
mov rbx, qword [rdi + rax]
movups xmm0, xmmword [rcx + 0x5c]
movaps xmmword [rbp - 0x60], xmm0
movss xmm6, dword [rbx + 0x16b4]
mov eax, dword [r15 + r14]
cmp dword [0x180086b88], eax
jle 0x18004fac4
lea rcx, [0x180086b88]
call fcn.18006a3ec
cmp dword [0x180086b88], 0xffffffff
jne 0x18004fac4
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
add rax, 0x1fbd10
mov qword [0x180086b78], rax
lea rcx, [0x180086b88]
call fcn.18006a38c
mov rcx, rbx
call qword [0x180086b78]
movaps xmm1, xmm0
addss xmm1, xmm6
movsd xmm0, qword [rbx + 0x220]
movsd qword [rsp + 0x50], xmm0
mov eax, dword [rbx + 0x228]
mov dword [rsp + 0x58], eax
lea r9, [rbp - 0x60]
movaps xmm2, xmm8
lea rcx, [rsp + 0x50]
call fcn.18004b9b0
mov rax, qword [0x180086088]
cmp byte [rax + 9], r13b
je 0x18004fb1b
mov rdx, qword [0x180086b08]
mov rdx, qword [rdi + rdx]
call fcn.180053250
mov rax, qword [0x180086088]
cmp byte [rax], r13b
je 0x18004fb3e
mov rdx, qword [0x180086b08]
mov rdx, qword [rdi + rdx]
lea rcx, [0x180086a40]
call fcn.1800507c0
mov rax, qword [0x180086088]
cmp byte [rax + 1], r13b
je 0x18004fb5b
mov rdx, qword [0x180086b08]
mov rdx, qword [rdi + rdx]
call fcn.180053250
mov r8, qword [0x180086b08]
inc esi
add rdi, 8
mov rcx, qword [0x180086b10]
sub rcx, r8
sar rcx, 3
movsxd rax, esi
cmp rax, rcx
jb 0x18004f7d1
mov eax, dword [r15 + r14]
cmp dword [0x180086b5c], eax
jle 0x18004fbbb
lea rcx, [0x180086b5c]
call fcn.18006a3ec
cmp dword [0x180086b5c], 0xffffffff
jne 0x18004fbbb
lea rcx, [0x180070510]
call fcn.18006a1d0
lea rcx, [0x180086b5c]
call fcn.18006a38c
mov rax, qword [0x180086af0]
mov qword [0x180086af8], rax
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rcx, qword [rax + 0x219ab90]
mov rsi, qword [rcx + 8]
mov edi, dword [rcx + 0x10]
mov ebx, r13d
mov rdx, qword [0x180086af8]
test edi, edi
je 0x18004fc42
nop dword [rax]
lea eax, [rbx*8]
mov rax, qword [rax + rsi]
mov qword [rbp + 0xc0], rax
cmp rdx, qword [0x180086b00]
je 0x18004fc22
mov qword [rdx], rax
mov rdx, qword [0x180086af8]
add rdx, 8
mov qword [0x180086af8], rdx
jmp 0x18004fc3c
lea r8, [rbp + 0xc0]
lea rcx, [0x180086af0]
call fcn.180054d60
mov rdx, qword [0x180086af8]
inc ebx
cmp ebx, edi
jb 0x18004fbf0
mov esi, r13d
mov r8, qword [0x180086af0]
sub rdx, r8
sar rdx, 3
test rdx, rdx
je 0x18004feb6
mov rdi, r13
movss xmm9, dword [0x18007abd0]
movsd xmm7, qword [0x18007abf0]
movss xmm10, dword [0x18007ad40]
movss xmm11, dword [0x18007ad0c]
movss xmm12, dword [0x18007ad08]
nop dword [rax + rax]
mov rbx, qword [rdi + r8]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
add rax, 0x21ad6c8
jne 0x18004fca9
mov rax, r13
jmp 0x18004fcac
mov rax, qword [rax]
mov ecx, dword [rax + 0x3c]
cmp ecx, 0x64
jne 0x18004fcbd
cmp dword [rbx + 0x3c], 0xc8
jmp 0x18004fccd
cmp ecx, 0xc8
jne 0x18004fe8f
cmp dword [rbx + 0x3c], 0x64
jne 0x18004fe8f
mov r8, qword [0x180086af0]
mov rbx, qword [rdi + r8]
movss xmm0, dword [rbx + 0x1058]
comiss xmm0, xmm9
jbe 0x18004fe96
mov rax, qword [0x180086088]
cmp byte [rax + 0xb], r13b
je 0x18004fe96
movsd xmm0, qword [rbx + 0x220]
movsd qword [rsp + 0x40], xmm0
mov eax, dword [rbx + 0x228]
mov dword [rsp + 0x48], eax
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
add rax, 0x21ad6c8
jne 0x18004fd2e
mov rax, r13
jmp 0x18004fd31
mov rax, qword [rax]
movsd xmm0, qword [rax + 0x220]
mov eax, dword [rax + 0x228]
mov dword [rsp + 0x58], eax
movsd qword [rsp + 0x50], xmm0
subss xmm0, dword [rsp + 0x40]
cvtss2sd xmm0, xmm0
movaps xmm1, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
movaps xmm6, xmm0
movss xmm1, dword [rsp + 0x58]
subss xmm1, dword [rsp + 0x48]
cvtps2pd xmm0, xmm1
movaps xmm1, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
movaps xmm1, xmm0
addsd xmm1, xmm6
xorps xmm0, xmm0
ucomisd xmm0, xmm1
ja 0x18004fd8e
xorps xmm0, xmm0
sqrtsd xmm0, xmm1
jmp 0x18004fd96
movaps xmm0, xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrt
cvtsd2ss xmm0, xmm0
comiss xmm10, xmm0
jb 0x18004fe8f
movsd xmm0, qword [rbx + 0x220]
movsd qword [rsp + 0x30], xmm0
mov eax, dword [rbx + 0x228]
mov dword [rsp + 0x38], eax
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
add rax, 0x21ad6c8
jne 0x18004fdd1
mov rax, r13
jmp 0x18004fdd4
mov rax, qword [rax]
movsd xmm0, qword [rax + 0x220]
mov eax, dword [rax + 0x228]
mov dword [rbp - 0x68], eax
subss xmm0, dword [rsp + 0x30]
cvtss2sd xmm0, xmm0
movaps xmm1, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
movaps xmm6, xmm0
movss xmm1, dword [rbp - 0x68]
subss xmm1, dword [rsp + 0x38]
cvtps2pd xmm0, xmm1
movaps xmm1, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
movaps xmm1, xmm0
addsd xmm1, xmm6
xorps xmm0, xmm0
ucomisd xmm0, xmm1
ja 0x18004fe29
xorps xmm0, xmm0
sqrtsd xmm0, xmm1
jmp 0x18004fe31
movaps xmm0, xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrt
cvtsd2ss xmm0, xmm0
comiss xmm11, xmm0
jb 0x18004fe4c
movaps xmm0, xmmword [0x18007b0d0]
movups xmmword [rbp - 0x60], xmm0
lea rax, [rbp - 0x60]
jmp 0x18004fe5d
movaps xmm0, xmmword [0x18007b110]
movups xmmword [rsp + 0x60], xmm0
lea rax, [rsp + 0x60]
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x10], xmm0
movsd xmm1, qword [rbx + 0x220]
movsd qword [rbp - 0x80], xmm1
mov eax, dword [rbx + 0x228]
mov dword [rbp - 0x78], eax
lea r9, [rbp - 0x10]
movaps xmm2, xmm8
movaps xmm1, xmm12
lea rcx, [rbp - 0x80]
call fcn.18004b9b0
mov r8, qword [0x180086af0]
inc esi
add rdi, 8
mov rcx, qword [0x180086af8]
sub rcx, r8
sar rcx, 3
movsxd rax, esi
cmp rax, rcx
jb 0x18004fc90
mov eax, dword [r15 + r14]
cmp dword [0x180086b60], eax
jle 0x18004feef
lea rcx, [0x180086b60]
call fcn.18006a3ec
cmp dword [0x180086b60], 0xffffffff
jne 0x18004feef
lea rcx, [0x1800704a0]
call fcn.18006a1d0
lea rcx, [0x180086b60]
call fcn.18006a38c
mov rax, qword [0x180086ad8]
mov qword [0x180086ae0], rax
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rcx, qword [rax + 0x21942e8]
mov rsi, qword [rcx + 8]
mov edi, dword [rcx + 0x10]
mov ebx, r13d
mov rdx, qword [0x180086ae0]
test edi, edi
je 0x18004ff73
lea eax, [rbx*8]
mov rax, qword [rax + rsi]
mov qword [rbp + 0xc0], rax
cmp rdx, qword [0x180086ae8]
je 0x18004ff53
mov qword [rdx], rax
mov rdx, qword [0x180086ae0]
add rdx, 8
mov qword [0x180086ae0], rdx
jmp 0x18004ff6d
lea r8, [rbp + 0xc0]
lea rcx, [0x180086ad8]
call fcn.180054d60
mov rdx, qword [0x180086ae0]
inc ebx
cmp ebx, edi
jb 0x18004ff21
mov r12d, r13d
sub rdx, qword [0x180086ad8]
sar rdx, 3
test rdx, rdx
je 0x180050772
mov r15, r13
movabs rdi, 0xcbf29ce484222325
movabs r14, 0x100000001b3
xorps xmm7, xmm7
movss xmm8, dword [0x18007ac90]
movss xmm9, dword [0x18007ac24]
movss xmm10, dword [0x18007ac74]
nop
mov rax, qword [0x180086ad8]
mov rbx, qword [rax + r15*8]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
add rax, 0x21ad6c8
jne 0x18004ffe0
mov rax, r13
jmp 0x18004ffe3
mov rax, qword [rax]
mov ecx, dword [rax + 0x3c]
cmp ecx, 0x64
jne 0x18004fff4
cmp dword [rbx + 0x3c], 0xc8
jmp 0x180050004
cmp ecx, 0xc8
jne 0x18005029f
cmp dword [rbx + 0x3c], 0x64
jne 0x18005029f
mov rax, qword [0x180086088]
cmp byte [rax + 0x10], 0
je 0x18005017c
mov rax, qword [0x180086ad8]
mov rbx, qword [rax + r15*8]
lea rsi, [rbx + 0x60]
cmp dword [rsi + 0x18], 0x10
jbe 0x180050035
mov rdi, qword [rsi]
jmp 0x180050038
mov rdi, rsi
lea rdx, str.Jack_In_The_Box
mov rcx, rdi
call sub.api_ms_win_crt_string_l1_1_0.dll_strcmp
test eax, eax
je 0x180050088
lea rdx, str.JammerDevice
mov rcx, rdi
call sub.api_ms_win_crt_string_l1_1_0.dll_strcmp
test eax, eax
je 0x180050088
lea rdx, str.Noxious_Trap
mov rcx, rdi
call sub.api_ms_win_crt_string_l1_1_0.dll_strcmp
test eax, eax
je 0x180050088
lea rdx, str.SightWard
mov rcx, rdi
call sub.api_ms_win_crt_string_l1_1_0.dll_strcmp
test eax, eax
jne 0x180050172
mov r9d, r13d
mov r11, qword [0x180086a48]
mov r10, qword [0x180086a40]
mov rcx, r11
sub rcx, r10
movabs rdi, 0x2aaaaaaaaaaaaaab
mov rax, rdi
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
je 0x1800500f5
mov r8, r13
cmp rbx, qword [r10 + r8]
je 0x180050172
inc r9d
add r8, 0x18
mov rcx, r11
sub rcx, r10
mov rax, rdi
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
movsxd rax, r9d
cmp rax, rdx
jb 0x1800500c2
movss xmm0, dword [rbx + 0x1058]
ucomiss xmm0, xmm7
jp 0x180050104
je 0x180050172
cmp byte [rbx + 0x310], 1
je 0x180050172
mov dword [rsp + 0x74], r13d
mov qword [rsp + 0x60], rbx
cmp dword [rsi + 0x18], 0x10
jbe 0x180050120
mov rsi, qword [rsi]
mov qword [rsp + 0x68], rsi
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
movss xmm0, dword [rax + 0x21a06e4]
movss dword [rsp + 0x70], xmm0
mov rdx, qword [0x180086a48]
cmp rdx, qword [0x180086a50]
je 0x180050168
movups xmm0, xmmword [rsp + 0x60]
movups xmmword [rdx], xmm0
movsd xmm1, qword [rsp + 0x70]
movsd qword [rdx + 0x10], xmm1
add qword [0x180086a48], 0x18
jmp 0x180050172
lea r8, [rsp + 0x60]
call fcn.180054580
movabs rdi, 0xcbf29ce484222325
mov rax, qword [0x180086088]
cmp byte [rax + 0xf], 0
je 0x18005029f
mov rax, qword [0x180086ad8]
mov rbx, qword [rax + r15*8]
movss xmm6, dword [rbx + 0x1058]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
add rax, 0x21ad6c8
jne 0x1800501b5
mov rax, r13
jmp 0x1800501b8
mov rax, qword [rax]
movss xmm0, dword [rax + 0x15d8]
addss xmm0, dword [rax + 0x166c]
comiss xmm0, xmm6
jb 0x18005029f
lea rdx, [rsp + 0x50]
mov rcx, rbx
call fcn.180055270
movss xmm0, dword [rbx + 0x1058]
divss xmm0, dword [rbx + 0x1070]
mulss xmm0, xmm8
call sub.api_ms_win_crt_math_l1_1_0.dll_ceilf
cvttss2si r9d, xmm0
movaps xmm1, xmmword [0x18007b210]
movaps xmmword [rbp - 0x60], xmm1
movss xmm0, dword [rsp + 0x54]
subss xmm0, xmm9
cvttss2si r10d, xmm0
movss xmm1, dword [rsp + 0x50]
subss xmm1, xmm10
cvttss2si r8d, xmm1
lea rcx, [rbp - 0x60]
call fcn.1800087f0
lea ecx, [r9 + r8]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0xc8], xmm0
lea ecx, [r10 + 3]
movd xmm1, ecx
cvtdq2ps xmm1, xmm1
movss dword [rbp + 0xcc], xmm1
movd xmm0, r8d
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0xd0], xmm0
movd xmm1, r10d
cvtdq2ps xmm1, xmm1
movss dword [rbp + 0xd4], xmm1
mov dword [rsp + 0x28], r13d
movss dword [rsp + 0x20], xmm7
mov r9d, eax
lea r8, [rbp + 0xc8]
lea rdx, [rbp + 0xd0]
mov rcx, qword [0x180086a10]
call fcn.180029ff0
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
add rax, 0x21ad6c8
jne 0x180050562
mov rsi, r13
mov rdi, r13
xor r9d, r9d
lea r8, [rbp + 0xc0]
xor edx, edx
lea rcx, [0x180086b28]
call qword [sym.imp.KERNEL32.dll_InitOnceBeginInitialize]
test eax, eax
je 0x1800507ad
cmp dword [rbp + 0xc0], 0
je 0x18005037f
test rsi, rsi
je 0x180050365
mov rax, qword [0x180086088]
cmp dword [rax + 0x28], 0
jle 0x180050365
mov r9, qword [rsi + 0x35e0]
movabs r8, 0xcbf29ce484222325
nop
movsx rdx, byte [r9]
lea r9, [r9 + 1]
xor r8, rdx
imul r8, r14
test dl, dl
jne 0x180050310
mov qword [rbp + 0xd8], r8
lea rdx, [rbp + 0xd8]
mov rcx, qword [0x180086090]
call fcn.180005cd0
mov rcx, qword [0x180086088]
movsxd rdx, dword [rcx + 0x28]
lea rcx, [rdx + rdx*2]
add rcx, rcx
mov rdx, qword [rax]
mov r8d, dword [rdx + rcx*8 - 8]
mov rdx, qword [rdx + rcx*8 - 0x30]
mov rcx, rsi
call fcn.180055750
nop
xor r8d, r8d
xor edx, edx
lea rcx, [0x180086b28]
call qword [sym.imp.KERNEL32.dll_InitOnceComplete]
test eax, eax
je 0x1800507ad
mov rcx, qword [rsi + 0x35d0]
sub rcx, qword [rsi + 0x35c8]
movabs rax, 0xe38e38e38e38e39
imul rcx
sar rdx, 3
mov rax, rdx
shr rax, 0x3f
add rdx, rax
je 0x180050428
mov r8, qword [rsi + 0x35e0]
movabs rdx, 0xcbf29ce484222325
nop dword [rax + rax]
movsx rcx, byte [r8]
lea r8, [r8 + 1]
xor rdx, rcx
imul rdx, r14
test cl, cl
jne 0x1800503c0
movabs rax, 0xf984545cfa78101f
cmp rdx, rax
je 0x180050744
movabs rax, 0x2d0a42b1a4f18a79
cmp rdx, rax
je 0x180050744
mov rax, qword [rsi + 0x35c8]
mov ecx, dword [rsi + 0x3600]
cmp dword [rax + 0x20], ecx
je 0x180050428
mov dword [rax + 0x20], ecx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
add rax, 0x184ff0
mov dl, 1
lea rcx, [rsi + 0x35c8]
call rax
nop
mov rax, qword [0x180086ad8]
mov r14, qword [rax + r15*8]
mov r8, qword [r14 + 0x35e0]
movabs rbx, 0xcbf29ce484222325
movabs rcx, 0x100000001b3
nop
movsx rdx, byte [r8]
lea r8, [r8 + 1]
xor rbx, rdx
imul rbx, rcx
test dl, dl
jne 0x180050450
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
add rax, 0x1fe2c0
mov rcx, r14
call rax
test rax, rax
je 0x18005069e
movabs rcx, 0x37d1bfa7d195ebf9
cmp rbx, rcx
je 0x180050598
movabs rcx, 0x92fe97d6caa88c20
cmp rbx, rcx
je 0x180050598
movabs rcx, 0xa854d43ddb55ddcc
cmp rbx, rcx
je 0x180050598
movabs rcx, 0xb8f3ad4931029355
cmp rbx, rcx
je 0x180050598
movabs rcx, 0xaedcd71796ade290
cmp rbx, rcx
movabs rcx, 0xdb76082138fdee7f
je 0x1800505a2
cmp rbx, rcx
je 0x1800505a2
movabs rcx, 0xf17870527758213f
cmp rbx, rcx
je 0x18005073a
movabs rcx, 0x8499db0ed7bb81cf
cmp rbx, rcx
je 0x18005073a
mov edx, dword [rax + 0x3600]
mov rax, qword [0x180086ad8]
mov rbx, qword [rax + r15*8]
cmp edx, 0xffffffff
je 0x18005073a
cmp dword [rbx + 0x3600], edx
je 0x18005073a
mov dword [rbx + 0x3600], edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
add rax, 0x184ff0
mov dl, 1
lea rcx, [rbx + 0x35c8]
call rax
nop
jmp 0x18005073a
mov rsi, qword [rax]
test rsi, rsi
je 0x1800502b6
mov rdx, qword [rsi + 0x35e0]
nop word [rax + rax]
movsx rcx, byte [rdx]
lea rdx, [rdx + 1]
xor rdi, rcx
imul rdi, r14
test cl, cl
jne 0x180050580
jmp 0x1800502b9
movabs rcx, 0xdb76082138fdee7f
test rsi, rsi
je 0x1800505b0
cmp rax, rsi
jne 0x18005073a
cmp rbx, rcx
jne 0x18005064f
movabs rcx, 0x222b948fbf568318
cmp rdi, rcx
jne 0x180050611
mov r8d, dword [rax + 0x3600]
cmp r8d, 0xffffffff
je 0x18005073a
mov rax, qword [0x180086ad8]
mov rcx, qword [rax + r15*8]
add rcx, 0x35c8
cmp dword [rcx + 0x38], r8d
je 0x18005073a
mov dword [rcx + 0x38], r8d
mov rax, qword [rcx]
mov qword [rcx + 8], rax
lea rdx, str.Yone
call fcn.18004bef0
jmp 0x18005073a
mov rax, qword [0x180086ad8]
mov rbx, qword [rax + r15*8]
cmp dword [rbx + 0x3600], 0
je 0x18005073a
mov dword [rbx + 0x3600], r13d
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
add rax, 0x184ff0
mov dl, 1
lea rcx, [rbx + 0x35c8]
call rax
nop
jmp 0x18005073a
mov rax, qword [0x180086088]
mov edx, dword [rax + 0x30]
mov rax, qword [0x180086ad8]
mov rbx, qword [rax + r15*8]
cmp edx, 0xffffffff
je 0x18005073a
cmp dword [rbx + 0x3600], edx
je 0x18005073a
mov dword [rbx + 0x3600], edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
add rax, 0x184ff0
mov dl, 1
lea rcx, [rbx + 0x35c8]
call rax
nop
jmp 0x18005073a
movabs rax, 0x1ecf7680ae6d72bd
cmp rbx, rax
jne 0x1800506be
movabs rax, 0xfca7b000ade2abcb
cmp rdi, rax
je 0x1800506fc
jmp 0x18005073a
movabs rax, 0xfcb981acde90c192
cmp rbx, rax
jne 0x1800506de
movabs rax, 0x6972baf895e90386
cmp rdi, rax
je 0x1800506fc
jmp 0x18005073a
movabs rax, 0xfc61c19e80fc9d68
cmp rbx, rax
jne 0x18005073a
movabs rax, 0xf01bf70c1ff22b66
cmp rdi, rax
jne 0x18005073a
mov edx, dword [rsi + 0x3600]
mov rax, qword [0x180086ad8]
mov rbx, qword [rax + r15*8]
cmp edx, 0xffffffff
je 0x18005073a
cmp dword [rbx + 0x3600], edx
je 0x18005073a
mov dword [rbx + 0x3600], edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
add rax, 0x184ff0
mov dl, 1
lea rcx, [rbx + 0x35c8]
call rax
nop
movabs r14, 0x100000001b3
inc r12d
inc r15
mov rcx, qword [0x180086ae0]
sub rcx, qword [0x180086ad8]
sar rcx, 3
movsxd rax, r12d
cmp rax, rcx
movabs rdi, 0xcbf29ce484222325
jb 0x18004ffc0
lea r11, [rsp + 0x178]
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]
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_abort]
int3