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

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 8], rcx
push rsi
push rdi
push r14
sub rsp, 0x20
mov r14, r9
mov rbp, r8
mov rdi, rdx
mov rax, qword [rdx + 0x10]
lea rcx, [rdx + 0x10]
call qword [rax + 0x40]
test al, al
jne 0x1800c73a8
mov rcx, qword [0x180261b80]
movsxd rax, dword [rcx + 3]
mov rbx, qword [rax + rcx + 7]
test rbx, rbx
je 0x1800c7298
mov ecx, dword [0x180265dfc]
mov rax, qword gs:[0x58]
mov edx, 4
mov rax, qword [rax + rcx*8]
mov ecx, dword [rdx + rax]
cmp dword [0x180267840], ecx
jle 0x1800c7271
lea rcx, [0x180267840]
call fcn.1801b3c6c
cmp dword [0x180267840], 0xffffffff
jne 0x1800c7271
mov rcx, qword [0x1802676e0]
mov rax, qword [rcx]
call qword [rax + 0x40]
mov r10, rax
xor r11d, r11d
test rax, rax
je 0x1800c725e
mov r8, qword [r10 + 0x10]
mov rcx, 0xffffffffffffffff
mov r9d, 0x811c9dc5
inc rcx
cmp byte [r8 + rcx], r11b
jne 0x1800c7205
mov rdx, r11
test rcx, rcx
je 0x1800c7240
nop word [rax + rax]
movsx eax, byte [rdx + r8]
xor eax, r9d
imul r9d, eax, 0x1000193
inc rdx
cmp rdx, rcx
jb 0x1800c7220
cmp r9d, 0xf1c5030f
je 0x1800c724b
mov r10, qword [r10 + 0x20]
test r10, r10
jne 0x1800c71f4
jmp 0x1800c725e
lea r8, str.m_bTruceActive
mov rdx, qword [r10 + 0x18]
call fcn.1801b3800
mov r11d, eax
mov dword [0x180267820], r11d
lea rcx, [0x180267840]
call fcn.1801b3c00
movsxd rax, dword [0x180267820]
cmp byte [rax + rbx], 0
je 0x1800c7298
mov rcx, rdi
call fcn.1800c4a90
mov ebx, dword [rax]
mov rcx, rbp
call fcn.1800c4a90
cmp dword [rax], ebx
jne 0x1800c73a8
mov rax, qword [rdi + 0x10]
lea rcx, [rdi + 0x10]
call qword [rax + 0x10]
test rax, rax
je 0x1800c73a8
mov ecx, dword [rax + 0x28]
cmp ecx, 0x59
jg 0x1800c73bd
je 0x1800c72e4
lea eax, [rcx - 0x30]
cmp eax, 0x22
ja 0x1800c72d6
movabs rdx, 0x402000001
bt rdx, rax
jb 0x1800c73f2
lea eax, [rcx - 0x56]
test eax, 0xfffffffd
jne 0x1800c73a8
mov rcx, rdi
call fcn.1800c4a90
mov ebx, dword [rax]
mov rcx, rbp
call fcn.1800c4a90
cmp dword [rax], ebx
je 0x1800c763e
mov rcx, rdi
call fcn.1800c53c0
mov rcx, qword [0x180267710]
mov rdx, qword [rcx]
mov r8, qword [rdx + 0x20]
mov eax, dword [rax]
mov dword [rsp + 0x40], eax
lea rdx, [rsp + 0x40]
call r8
test rax, rax
je 0x1800c733c
lea rcx, [rax + 0x10]
mov rax, qword [rcx]
call qword [rax + 0x48]
mov edx, eax
call fcn.18015e8b0
test al, al
jne 0x1800c73a8
mov eax, dword [0x18026a5a4]
test al, 2
jne 0x1800c7362
mov rax, qword [rdi + 0x10]
lea rcx, [rdi + 0x10]
call qword [rax + 0x10]
test rax, rax
je 0x1800c735c
cmp dword [rax + 0x28], 0x58
je 0x1800c73a8
mov eax, dword [0x18026a5a4]
test al, 4
jne 0x1800c7382
mov rax, qword [rdi + 0x10]
lea rcx, [rdi + 0x10]
call qword [rax + 0x10]
test rax, rax
je 0x1800c737c
cmp dword [rax + 0x28], 0x56
je 0x1800c73a8
mov eax, dword [0x18026a5a4]
test al, 8
jne 0x1800c763e
mov rax, qword [rdi + 0x10]
lea rcx, [rdi + 0x10]
call qword [rax + 0x10]
test rax, rax
je 0x1800c763e
cmp dword [rax + 0x28], 0x59
jne 0x1800c763e
mov al, 1
mov rbx, qword [rsp + 0x48]
mov rbp, qword [rsp + 0x50]
add rsp, 0x20
pop r14
pop rdi
pop rsi
ret
sub ecx, 0xd9
je 0x1800c7645
sub ecx, 0x1e
je 0x1800c7402
sub ecx, 0x45
je 0x1800c73f2
cmp ecx, 0x26
jne 0x1800c73a8
mov rcx, rdi
call fcn.1800c4a90
mov ebx, dword [rax]
mov rcx, rbp
call fcn.1800c4a90
cmp dword [rax], ebx
je 0x1800c73a8
xor al, al
jmp 0x1800c73aa
mov rcx, rdi
call fcn.1800c4a90
cmp dword [rax], 5
jmp 0x1800c7638
cmp rdi, rbp
je 0x1800c73a8
mov rcx, rdi
call fcn.1800c3e00
cmp byte [rax], 0
jne 0x1800c73a8
mov rcx, rdi
call fcn.1800c4100
mov ecx, dword [rax]
shr ecx, 0xd
test cl, 1
jne 0x1800c73a8
mov rcx, rdi
call fcn.1800c4a90
mov ebx, dword [rax]
mov rcx, rbp
call fcn.1800c4a90
cmp dword [rax], ebx
je 0x1800c763e
mov rax, qword [rdi + 0x10]
lea rcx, [rdi + 0x10]
call qword [rax + 0x48]
mov edx, eax
call fcn.18015e8b0
test al, al
jne 0x1800c73a8
test byte [0x18026a824], 1
je 0x1800c74cc
mov edx, 5
mov rcx, rdi
call fcn.1800c61c0
test al, al
jne 0x1800c74b8
mov edx, 0x39
mov rcx, rdi
call fcn.1800c61c0
test al, al
jne 0x1800c74b8
mov edx, 0x33
mov rcx, rdi
call fcn.1800c61c0
test al, al
jne 0x1800c74b8
mov edx, 0x34
mov rcx, rdi
call fcn.1800c61c0
test al, al
jne 0x1800c74b8
mov edx, 0xe
mov rcx, rdi
call fcn.1800c61c0
test al, al
je 0x1800c74cc
mov rcx, r14
call fcn.1800c3d00
cmp dword [rax], 0x290
jne 0x1800c73a8
test byte [0x18026a824], 2
je 0x1800c7552
mov edx, 0x16
mov rcx, rdi
call fcn.1800c61c0
test al, al
jne 0x1800c7552
mov edx, 0x7c
mov rcx, rdi
call fcn.1800c61c0
test al, al
jne 0x1800c7552
mov edx, 0x1b
mov rcx, rdi
call fcn.1800c61c0
test al, al
jne 0x1800c7552
mov edx, 0x18
mov rcx, rdi
call fcn.1800c61c0
test al, al
jne 0x1800c7552
mov rcx, rdi
call fcn.1800c5ed0
vmovss xmm0, dword [rax]
vcomiss xmm0, dword [0x18023bc20]
setae al
test al, al
je 0x1800c7552
mov rcx, rdi
call fcn.1800c62c0
vxorps xmm1, xmm1, xmm1
vcvtsi2ss xmm1, xmm1, dword [0x18026a4a4]
vcomiss xmm0, xmm1
jae 0x1800c73a8
test byte [0x18026a824], 4
je 0x1800c756c
mov rcx, rdi
call fcn.1800c4000
cmp byte [rax], 0
jne 0x1800c73a8
test byte [0x18026a824], 0x40
je 0x1800c758b
mov rcx, rdi
call fcn.1800c3f00
mov ecx, dword [rax]
shr ecx, 7
test cl, 1
jne 0x1800c73a8
test byte [0x18026a824], 8
je 0x1800c761f
mov ecx, dword [0x180267804]
sub ecx, 1
je 0x1800c75f9
cmp ecx, 1
jne 0x1800c761f
mov rax, qword [r14]
mov rdx, qword [rax + 0xbe8]
mov rcx, r14
call rdx
cmp eax, 0x19
je 0x1800c75e7
cmp eax, 0x3a
je 0x1800c75e7
mov rcx, rdi
cmp eax, 0x3d
je 0x1800c75d8
call fcn.1800c5bd0
mov ecx, dword [rax]
shr ecx, 0x1b
test cl, 1
jmp 0x1800c7619
call fcn.1800c5bd0
mov ecx, dword [rax]
shr ecx, 0x1a
test cl, 1
jmp 0x1800c7619
mov rcx, rdi
call fcn.1800c5bd0
mov ecx, dword [rax]
shr ecx, 0x1c
test cl, 1
jmp 0x1800c7619
mov rcx, rdi
call fcn.1800c5bd0
mov ecx, dword [rax]
shr ecx, 0x1a
test cl, 1
je 0x1800c761f
mov rcx, r14
call fcn.1800c3d00
cmp dword [rax], 0x1cc
jne 0x1800c73a8
test byte [0x18026a824], 0x20
je 0x1800c763e
mov rcx, rdi
call fcn.1800c3f00
mov ecx, dword [rax]
shr ecx, 3
test cl, 1
jne 0x1800c73a8
xor al, al
jmp 0x1800c73aa
mov rcx, rdi
call fcn.1800c4a90
mov ebx, dword [rax]
mov rcx, rbp
call fcn.1800c4a90
cmp dword [rax], ebx
je 0x1800c73a8
mov rcx, rdi
call fcn.1800c56c0
mov rcx, qword [0x180267710]
mov rdx, qword [rcx]
mov r8, qword [rdx + 0x20]
mov eax, dword [rax]
mov dword [rsp + 0x40], eax
lea rdx, [rsp + 0x40]
call r8
test rax, rax
je 0x1800c76a1
lea rcx, [rax + 0x10]
mov rax, qword [rcx]
call qword [rax + 0x48]
mov edx, eax
call fcn.18015e8b0
test al, al
jne 0x1800c73a8
mov rcx, rdi
call fcn.1800c58c0
cmp dword [rax], 1
jne 0x1800c73a8
mov rcx, rdi
call fcn.1800c57c0
cmp byte [rax], 0
sete al
jmp 0x1800c73aa