Function at 0x18019b6b0
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, [rax - 0x268]
sub rsp, 0x328
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
mov rax, qword [0x180257730]
mov rcx, qword [rax]
mov rbx, qword [rcx + 0x18]
mov rcx, qword [0x180257748]
mov rax, qword [rcx]
call qword [rax + 0x60]
mov edx, eax
mov rcx, qword [0x180257730]
call rbx
mov r14, rax
test rax, rax
je 0x18019c919
mov qword [0x1802580c0], rax
mov rcx, rax
call fcn.1800d94f0
mov rcx, qword [0x180257730]
mov rdx, qword [rcx]
mov r8, qword [rdx + 0x20]
mov edx, dword [rax]
mov dword [rbp + 0x270], edx
lea rdx, [rbp + 0x270]
call r8
mov qword [0x1802580c8], rax
mov rcx, qword [0x1802580c0]
call fcn.180177de0
mov edx, dword [rax]
sub edx, 4
je 0x18019b78e
cmp edx, 1
jne 0x18019b7c6
mov rcx, qword [0x1802580c0]
call fcn.180177ee0
mov rcx, qword [0x180257730]
mov rdx, qword [rcx]
mov r8, qword [rdx + 0x20]
mov eax, dword [rax]
mov dword [rbp + 0x270], eax
lea rdx, [rbp + 0x270]
call r8
test rax, rax
je 0x18019b7c6
mov qword [0x1802580d8], rax
mov rcx, qword [0x180257748]
mov rax, qword [rcx]
call qword [rax + 0xa8]
lea esi, [rax + 1]
mov rcx, qword [0x180257730]
mov rdx, qword [rcx]
call qword [rdx + 0x30]
mov r15d, 4
mov r13d, dword [0x180255e0c]
cmp esi, eax
jg 0x18019bcd9
mov r15d, r13d
mov r12, qword gs:[0x58]
lea r13, [0x180000000]
nop
mov rcx, qword [0x180257730]
mov rax, qword [rcx]
mov edx, esi
call qword [rax + 0x18]
mov rdi, rax
mov qword [rsp + 0x30], rax
test rax, rax
je case.0x18019bb25.256
mov rdx, qword [rax + 0x10]
lea rcx, [rax + 0x10]
call qword [rdx + 0x40]
test al, al
jne case.0x18019bb25.256
mov rax, qword [rdi + 0x10]
lea rcx, [rdi + 0x10]
call qword [rax + 0x10]
test rax, rax
je case.0x18019bb25.256
mov ebx, dword [rax + 0x28]
cmp ebx, 0xfc
jg 0x18019bb00
je case.0x18019bb25.253
lea eax, [rbx - 1]
cmp eax, 0xf8
ja case.0x18019bb25.256
cdqe
movzx eax, byte [rax + r13 + 0x19c994]
mov ecx, dword [r13 + rax*4 + 0x19c964]
add rcx, r13
jmp rcx
mov qword [0x1802580d0], rdi
jmp case.0x18019bb25.256
mov dword [rbp + 0x270], 3
lea r8, [rbp + 0x270]
lea rdx, [rbp + 0x30]
lea rcx, [0x1802580e0]
call fcn.18019e410
mov rcx, qword [rax]
add rcx, 0x18
mov rdx, qword [rcx + 8]
cmp rdx, qword [rcx + 0x10]
je 0x18019b8da
mov qword [rdx], rdi
add qword [rcx + 8], 8
jmp 0x18019b8e4
lea r8, [rsp + 0x30]
call fcn.18013b760
mov rcx, qword [0x1802580c0]
call fcn.1800b7dc0
mov ebx, dword [rax]
mov rcx, rdi
call fcn.1800b7dc0
xor ecx, ecx
cmp dword [rax], ebx
sete cl
add ecx, 4
mov dword [rbp + 0x278], ecx
lea r8, [rbp + 0x278]
lea rdx, [rbp + 0x20]
jmp 0x18019bc84
mov rdx, rdi
call fcn.18019cc00
test al, al
je 0x18019b939
mov dword [rbp + 0x270], 6
lea rdx, [rbp + 0x10]
jmp 0x18019bc7d
mov rdx, rdi
call fcn.18019cd40
test al, al
je 0x18019b958
mov dword [rbp + 0x270], 7
lea rdx, [rbp]
jmp 0x18019bc7d
mov rdx, rdi
call fcn.18019ce00
test al, al
je 0x18019b977
mov dword [rbp + 0x270], 9
lea rdx, [rbp - 0x10]
jmp 0x18019bc7d
mov rdx, rdi
call fcn.18019cf00
test al, al
je case.0x18019bb25.256
mov dword [rbp + 0x270], 0xa
lea rdx, [rbp + 0xb0]
jmp 0x18019bc7d
mov dword [rbp + 0x270], 7
lea rdx, [rbp + 0xc0]
jmp 0x18019bc7d
mov dword [rbp + 0x270], 0xc
lea rdx, [rbp + 0xd0]
jmp 0x18019bc7d
mov dword [rbp + 0x270], 8
lea rdx, [rbp + 0xe0]
jmp 0x18019bc7d
mov ecx, 4
mov rax, qword [r12 + r15*8]
mov ecx, dword [rcx + rax]
cmp dword [0x180257f0c], ecx
jle 0x18019ba8d
lea rcx, [0x180257f0c]
call fcn.1801a548c
cmp dword [0x180257f0c], 0xffffffff
jne 0x18019ba8d
mov rcx, qword [0x180257700]
mov rax, qword [rcx]
call qword [rax + 0x40]
mov r10, rax
test rax, rax
je 0x18019ba79
mov r9, qword [r10 + 0x10]
mov rcx, 0xffffffffffffffff
mov r8d, 0x811c9dc5
inc rcx
cmp byte [r9 + rcx], 0
jne 0x18019ba36
xor edx, edx
test rcx, rcx
je 0x18019ba70
nop word [rax + rax]
movsx eax, byte [r9 + rdx]
xor eax, r8d
imul r8d, eax, 0x1000193
inc rdx
cmp rdx, rcx
jb 0x18019ba50
cmp r8d, 0xd5c073db
je 0x18019bad8
mov r10, qword [r10 + 0x20]
test r10, r10
jne 0x18019ba25
xor eax, eax
mov dword [0x180257f08], eax
lea rcx, [0x180257f0c]
call fcn.1801a5420
movsxd rdx, dword [0x180257f08]
mov rcx, qword [0x180257730]
mov rax, qword [rcx]
mov r8, qword [rax + 0x20]
mov eax, dword [rdx + rdi]
mov dword [rbp + 0x280], eax
lea rdx, [rbp + 0x280]
call r8
cmp rax, qword [0x1802580c0]
jne case.0x18019bb25.256
mov dword [rbp + 0x270], 0xf
lea rdx, [rbp + 0xf0]
jmp 0x18019bc7d
lea r8, str.m_hTargetPlayer
mov rdx, qword [r10 + 0x18]
call fcn.1801a5020
jmp 0x18019ba7b
mov dword [rbp + 0x270], 0x12
lea rdx, [rbp + 0xa0]
jmp 0x18019bc7d
lea eax, [rbx - 0xfd]
cmp eax, 0x65
ja case.0x18019bb25.256
cdqe
movzx eax, byte [rax + r13 + 0x19caa0]
mov ecx, dword [r13 + rax*4 + 0x19ca90]
add rcx, r13
jmp rcx
mov dword [rbp + 0x270], 0xb
lea r8, [rbp + 0x270]
lea rdx, [rbp + 0x40]
lea rcx, [0x1802580e0]
call fcn.18019e410
mov rcx, qword [rax]
add rcx, 0x18
mov rdx, qword [rcx + 8]
cmp rdx, qword [rcx + 0x10]
je 0x18019bb63
mov qword [rdx], rdi
add qword [rcx + 8], 8
jmp 0x18019bb6d
lea r8, [rsp + 0x30]
call fcn.18013b760
cmp ebx, 0xd9
jne 0x18019bbd7
mov rcx, rdi
call fcn.1800b8700
mov rcx, qword [0x180257730]
mov rdx, qword [rcx]
mov r8, qword [rdx + 0x20]
mov eax, dword [rax]
mov dword [rbp + 0x288], eax
lea rdx, [rbp + 0x288]
call r8
cmp rax, r14
jne case.0x18019bb25.256
mov rcx, rdi
call fcn.1800b8900
cmp dword [rax], 1
je 0x18019bbc4
mov rcx, rdi
call fcn.1800b8900
cmp dword [rax], 2
jne case.0x18019bb25.256
mov dword [rbp + 0x270], 0x10
lea rdx, [rbp + 0x50]
jmp 0x18019bc7d
cmp ebx, 0x101
jne case.0x18019bb25.256
mov rcx, rdi
call fcn.1800d7650
mov rcx, qword [0x180257730]
mov rdx, qword [rcx]
mov r8, qword [rdx + 0x20]
mov eax, dword [rax]
mov dword [rsp + 0x38], eax
lea rdx, [rsp + 0x38]
call r8
mov rbx, rax
mov rcx, rdi
call fcn.18014a720
mov rcx, qword [0x180257730]
mov rdx, qword [rcx]
mov r8, qword [rdx + 0x20]
mov edx, dword [rax]
mov dword [rsp + 0x40], edx
lea rdx, [rsp + 0x40]
call r8
cmp rax, qword [0x1802580c0]
jne case.0x18019bb25.256
test rbx, rbx
je case.0x18019bb25.256
mov rcx, rbx
call fcn.1800b7170
cmp dword [rax], 0x15f
jne case.0x18019bb25.256
mov dword [rbp + 0x270], 0x11
lea rdx, [rbp + 0x60]
jmp 0x18019bc7d
mov dword [rbp + 0x270], 0xd
lea rdx, [rbp + 0x70]
jmp 0x18019bc7d
mov dword [rbp + 0x270], 0xe
lea rdx, [rbp + 0x80]
lea r8, [rbp + 0x270]
lea rcx, [0x1802580e0]
call fcn.18019e410
mov rcx, qword [rax]
add rcx, 0x18
mov rdx, qword [rcx + 8]
cmp rdx, qword [rcx + 0x10]
je 0x18019bcab
mov qword [rdx], rdi
add qword [rcx + 8], 8
jmp case.0x18019bb25.256
lea r8, [rsp + 0x30]
call fcn.18013b760
inc esi
mov rcx, qword [0x180257730]
mov rax, qword [rcx]
call qword [rax + 0x30]
cmp esi, eax
jle 0x18019b810
mov r13d, dword [0x180255e0c]
mov r15d, 4
mov dword [rbp + 0x270], 1
mov rcx, qword [0x180257748]
mov rax, qword [rcx]
call qword [rax + 0xa8]
movabs rbx, 0xcbf29ce484222325
movabs r14, 0x100000001b3
mov edx, dword [rbp + 0x270]
cmp edx, eax
jg 0x18019c0f1
nop word [rax + rax]
mov rcx, qword [0x180257730]
mov rax, qword [rcx]
call qword [rax + 0x18]
mov qword [rbp + 0x288], rax
test rax, rax
je 0x18019c0cd
lea rcx, [rax + 0x10]
mov rax, qword [rcx]
call qword [rax + 0x10]
test rax, rax
je 0x18019c0cd
cmp dword [rax + 0x28], 0xf7
jne 0x18019c0cd
mov rcx, qword [rbp + 0x288]
add rcx, 0x10
mov rax, qword [rcx]
call qword [rax + 0x40]
test al, al
je 0x18019bee0
mov rdx, qword [rbp + 0x288]
movzx ecx, dl
xor rcx, rbx
imul rcx, r14
movzx eax, byte [rbp + 0x289]
xor rcx, rax
imul rcx, r14
movzx eax, byte [rbp + 0x28a]
xor rcx, rax
imul rcx, r14
movzx eax, byte [rbp + 0x28b]
xor rcx, rax
imul rcx, r14
movzx eax, byte [rbp + 0x28c]
xor rcx, rax
imul rcx, r14
movzx eax, byte [rbp + 0x28d]
xor rcx, rax
imul rcx, r14
movzx eax, byte [rbp + 0x28e]
xor rcx, rax
imul rcx, r14
movzx eax, byte [rbp + 0x28f]
xor rcx, rax
imul rcx, r14
and rcx, qword [0x180258290]
add rcx, rcx
mov r8, qword [0x180258278]
mov rax, qword [r8 + rcx*8 + 8]
cmp rax, qword [0x180258268]
je 0x18019be23
mov r8, qword [r8 + rcx*8]
cmp rdx, qword [rax + 0x10]
je 0x18019be25
cmp rax, r8
je 0x18019be23
mov rax, qword [rax + 8]
cmp rdx, qword [rax + 0x10]
jne 0x18019be12
jmp 0x18019be25
xor eax, eax
test rax, rax
je 0x18019c0cd
lea r8, [rbp + 0x288]
lea rdx, [rbp + 0x80]
lea rcx, [0x180258260]
call fcn.18019de90
mov rbx, qword [rax]
mov rcx, qword [0x180257748]
mov rax, qword [rcx]
call qword [rax + 0x70]
subss xmm0, dword [rbx + 0x24]
comiss xmm0, dword [0x180265f14]
ja 0x18019c0c3
mov rdi, qword [rbp + 0x288]
lea rdx, [rbx + 0x18]
mov rcx, rdi
call qword [0x180251c40]
mov rcx, rdi
call fcn.1800be1c0
mov ecx, dword [rbx + 0x18]
mov dword [rax], ecx
mov ecx, dword [rbx + 0x1c]
mov dword [rax + 4], ecx
mov ecx, dword [rbx + 0x20]
mov dword [rax + 8], ecx
mov rcx, rdi
call fcn.1800b7070
mov byte [rax], 0
mov rbx, qword [0x1802580d0]
test rbx, rbx
je 0x18019bf3c
mov edx, dword [rbp + 0x270]
mov rcx, rbx
call fcn.18014f360
test al, al
je 0x18019bf3c
mov edx, dword [rbp + 0x270]
mov rcx, rbx
call fcn.180100cb0
mov ebx, eax
mov rcx, rdi
call fcn.1800bdac0
mov dword [rax], ebx
jmp 0x18019bf3c
mov rcx, qword [rbp + 0x288]
call fcn.1800b7cc0
movss xmm7, dword [rax]
movss xmm8, dword [rax + 4]
movss xmm9, dword [rax + 8]
mov rcx, qword [0x180257748]
mov rax, qword [rcx]
call qword [rax + 0x70]
movaps xmm6, xmm0
lea r8, [rbp + 0x288]
lea rdx, [rbp + 0x70]
lea rcx, [0x180258260]
call fcn.18019de90
mov rcx, qword [rax]
movss dword [rcx + 0x18], xmm7
movss dword [rcx + 0x1c], xmm8
movss dword [rcx + 0x20], xmm9
movss dword [rcx + 0x24], xmm6
mov dword [rbp + 0x278], 0
lea r8, [rbp + 0x278]
lea rdx, [rbp + 0x60]
lea rcx, [0x1802580e0]
call fcn.18019e410
mov rcx, qword [rax]
add rcx, 0x18
mov rdx, qword [rcx + 8]
cmp rdx, qword [rcx + 0x10]
je 0x18019bf7f
mov rax, qword [rbp + 0x288]
mov qword [rdx], rax
add qword [rcx + 8], 8
jmp 0x18019bf8b
lea r8, [rbp + 0x288]
call fcn.18013b760
mov rcx, qword [0x1802580c0]
call fcn.1800b7dc0
mov ebx, dword [rax]
mov rcx, qword [rbp + 0x288]
call fcn.1800b7dc0
xor ecx, ecx
cmp dword [rax], ebx
sete cl
inc ecx
mov dword [rbp + 0x280], ecx
lea r8, [rbp + 0x280]
lea rdx, [rbp + 0x50]
lea rcx, [0x1802580e0]
call fcn.18019e410
mov rcx, qword [rax]
add rcx, 0x18
mov rdx, qword [rcx + 8]
cmp rdx, qword [rcx + 0x10]
je 0x18019bfed
mov rax, qword [rbp + 0x288]
mov qword [rdx], rax
add qword [rcx + 8], 8
jmp 0x18019bff9
lea r8, [rbp + 0x288]
call fcn.18013b760
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rsp + 0x60], xmm0
movups xmmword [rsp + 0x70], xmm0
movups xmmword [rbp - 0x80], xmm0
movups xmmword [rbp - 0x70], xmm0
movups xmmword [rbp - 0x60], xmm0
movups xmmword [rbp - 0x50], xmm0
movups xmmword [rbp - 0x40], xmm0
movups xmmword [rbp - 0x30], xmm0
mov dword [rbp - 0x20], eax
mov rcx, qword [0x180257748]
mov rax, qword [rcx]
lea r8, [rsp + 0x60]
mov edx, dword [rbp + 0x270]
call qword [rax + 0x40]
test al, al
je 0x18019c0c3
cmp byte [rbp - 0x34], 0
jne 0x18019c0c3
mov rcx, qword [0x180257b30]
mov rax, qword [rcx]
mov r9, qword [rax + 0x88]
mov eax, dword [rbp - 0x58]
mov dword [rsp + 0x30], eax
mov byte [rsp + 0x37], 1
mov eax, dword [rsp + 0x34]
and eax, 0xff100001
or eax, 0x100001
mov dword [rsp + 0x34], eax
mov r8d, 4
mov rdx, qword [rsp + 0x30]
call r9
movzx ebx, al
lea r8, [rbp - 0x58]
lea rdx, [rbp + 0x40]
lea rcx, [0x1802583e0]
call fcn.180137a40
mov rcx, qword [rax]
mov dword [rcx + 0x14], ebx
lea r8, [rbp + 0x270]
lea rdx, [rbp + 0xa0]
lea rcx, [0x1802583a0]
call fcn.1800ac630
mov rcx, qword [rax]
mov byte [rcx + 0x14], bl
movabs rbx, 0xcbf29ce484222325
inc dword [rbp + 0x270]
mov rcx, qword [0x180257748]
mov rax, qword [rcx]
call qword [rax + 0xa8]
mov edx, dword [rbp + 0x270]
cmp edx, eax
jle 0x18019bd20
mov ecx, r13d
mov rax, qword gs:[0x58]
mov ebx, r15d
mov rdi, qword [rax + rcx*8]
mov eax, dword [rdi + rbx]
cmp dword [0x180269f90], eax
jle 0x18019c140
lea rcx, [0x180269f90]
call fcn.1801a548c
cmp dword [0x180269f90], 0xffffffff
jne 0x18019c140
mov rax, qword [0x180257790]
mov edx, dword [rax + 0x18]
mov dword [0x180269fa0], edx
lea rcx, [0x180269f90]
call fcn.1801a5420
mov rax, qword [0x180257790]
mov ecx, dword [rax + 0x18]
mov r13d, ecx
sub r13d, dword [0x180269fa0]
dec r13d
mov dword [0x180269fa0], ecx
mov eax, dword [rdi + rbx]
cmp dword [0x180269f8c], eax
jle 0x18019c19c
lea rcx, [0x180269f8c]
call fcn.1801a548c
cmp dword [0x180269f8c], 0xffffffff
jne 0x18019c19c
lea rdx, str.sv_maxusrcmdprocessticks
call fcn.1801a1e90
mov qword [0x180269f98], rax
lea rcx, [0x180269f8c]
call fcn.1801a5420
mov rax, qword [0x180269f98]
test rax, rax
je 0x18019c1b1
mov rax, qword [rax + 0x38]
mov ebx, dword [rax + 0x58]
jmp 0x18019c1b6
mov ebx, 0x18
mov dword [rbp + 0x270], ebx
mov dword [rsp + 0x50], ebx
mov r15d, 1
mov rcx, qword [0x180257748]
mov rax, qword [rcx]
call qword [rax + 0xa8]
cmp eax, r15d
jl 0x18019c811
movss xmm14, dword [0x18022cae4]
xorps xmm13, xmm13
nop dword [rax]
mov rcx, qword [0x180257730]
mov rax, qword [rcx]
mov edx, r15d
call qword [rax + 0x18]
mov rsi, rax
test rax, rax
je 0x18019c7f5
mov rcx, qword [0x180257748]
mov rdx, qword [rcx]
call qword [rdx + 0x60]
cmp r15d, eax
je 0x18019c7f5
lea rcx, [rsi + 0x10]
mov rdx, qword [rcx]
call qword [rdx + 0x40]
movzx r12d, al
movzx r8d, sil
movabs rax, 0xcbf29ce484222325
xor r8, rax
imul r8, r14
mov rcx, rsi
shr rcx, 8
movzx edx, cl
xor r8, rdx
imul r8, r14
mov rax, rsi
shr rax, 0x10
movzx ecx, al
xor r8, rcx
imul r8, r14
mov rax, rsi
shr rax, 0x18
movzx ecx, al
xor r8, rcx
imul r8, r14
mov rax, rsi
shr rax, 0x20
movzx ecx, al
xor r8, rcx
imul r8, r14
mov rax, rsi
shr rax, 0x28
movzx ecx, al
xor r8, rcx
imul r8, r14
mov rax, rsi
shr rax, 0x30
movzx ecx, al
xor r8, rcx
imul r8, r14
mov rax, rsi
shr rax, 0x38
xor r8, rax
imul r8, r14
and r8, qword [0x180258150]
add r8, r8
mov rcx, qword [0x180258138]
mov rax, qword [rcx + r8*8 + 8]
cmp rax, qword [0x180258128]
je 0x18019c2f3
mov rcx, qword [rcx + r8*8]
cmp rsi, qword [rax + 0x10]
je 0x18019c2f5
cmp rax, rcx
je 0x18019c2f3
mov rax, qword [rax + 8]
cmp rsi, qword [rax + 0x10]
jne 0x18019c2e2
jmp 0x18019c2f5
xor eax, eax
test rax, rax
je 0x18019c324
mov qword [rbp + 0x288], rsi
lea r8, [rbp + 0x288]
lea rdx, [rbp + 0x80]
lea rcx, [0x180258120]
call fcn.18019e190
mov rax, qword [rax]
add rax, 0x18
jmp 0x18019c32c
mov rcx, rsi
call fcn.18019b5b0
movss xmm6, dword [rax]
mov qword [rsp + 0x30], rsi
lea r8, [rsp + 0x30]
lea rdx, [rbp + 0x70]
lea rcx, [0x180258160]
call fcn.18019e190
mov rcx, qword [rax]
movss dword [rcx + 0x18], xmm6
mov rcx, rsi
test r12b, r12b
cmovne rcx, qword [0x1802580c0]
call fcn.1800bd320
movss xmm7, dword [rax]
mov qword [rsp + 0x40], rsi
lea r8, [rsp + 0x40]
lea rdx, [rbp + 0x60]
lea rcx, [0x180258120]
call fcn.18019e190
mov rcx, qword [rax]
movss dword [rcx + 0x18], xmm7
mov dword [rsp + 0x48], 0
movaps xmm12, xmm7
subss xmm12, xmm6
mov rax, qword [0x180257790]
movss xmm1, dword [rax + 0x1c]
movaps xmm0, xmm12
divss xmm0, xmm1
addss xmm0, xmm14
cvttss2si edx, xmm0
sub edx, r13d
mov dword [rsp + 0x4c], edx
lea rcx, [rsp + 0x48]
lea rax, [rsp + 0x4c]
cmovns rcx, rax
lea rax, [rsp + 0x50]
cmp ebx, edx
cmovge rax, rcx
movd xmm6, dword [rax]
cvtdq2ps xmm6, xmm6
mulss xmm6, xmm1
mov qword [rsp + 0x38], rsi
lea r8, [rsp + 0x38]
lea rdx, [rbp + 0x50]
lea rcx, [0x1802581a0]
call fcn.18019e190
mov rcx, qword [rax]
movss dword [rcx + 0x18], xmm6
ucomiss xmm6, xmm13
jp 0x18019c412
je 0x18019c5aa
mov rcx, rsi
call fcn.1800b7070
cmp byte [rax], 0
jne 0x18019c57f
test r12b, r12b
jne 0x18019c57f
mov qword [rbp - 0x10], rsi
lea r8, [rbp - 0x10]
lea rdx, [rbp + 0x40]
lea rcx, [0x1802581e0]
call fcn.18019e190
mov rax, qword [rax]
mov eax, dword [rax + 0x18]
mov dword [rbp + 0x278], eax
mov qword [rbp + 0x280], rsi
lea r8, [rbp + 0x280]
test byte [0x18025b674], 2
je 0x18019c567
lea rdx, [rbp + 0xa0]
call fcn.1800dfb10
mov rcx, qword [rax]
add rcx, 0x48
lea rdx, [rbp + 0x278]
call fcn.1800dfdf0
lea r8, [rbp + 0x280]
lea rdx, [rbp + 0xf0]
call fcn.1800dfb10
mov rcx, qword [rax]
cmp qword [rcx + 0x68], 3
jne 0x18019c57f
lea r8, [rbp + 0x280]
lea rdx, [rbp + 0xe0]
call fcn.1800dfb10
mov rcx, qword [rax]
mov byte [rcx + 0x70], 1
lea r8, [rbp + 0x280]
lea rdx, [rbp + 0xd0]
call fcn.1800dfb10
mov rdi, qword [rax]
mov rbx, qword [rdi + 0x60]
mov r14, qword [rdi + 0x68]
add r14, rbx
cmp rbx, r14
je 0x18019c53c
nop dword [rax + rax]
mov r8, rbx
shr r8, 2
mov rax, qword [rdi + 0x58]
dec rax
and r8, rax
mov rcx, qword [rdi + 0x50]
mov rdx, rbx
and edx, 3
mov rcx, qword [rcx + r8*8]
mov eax, dword [0x18025b6f4]
cmp dword [rcx + rdx*4], eax
jge 0x18019c534
lea r8, [rbp + 0x280]
lea rdx, [rbp + 0xc0]
call fcn.1800dfb10
mov rcx, qword [rax]
mov byte [rcx + 0x70], 0
inc rbx
cmp rbx, r14
jne 0x18019c4f0
lea r8, [rbp + 0x280]
lea rdx, [rbp + 0xb0]
call fcn.1800dfb10
mov rcx, qword [rax]
add rcx, 0x48
call fcn.1800af8f0
movabs r14, 0x100000001b3
jmp 0x18019c57f
lea rdx, [rbp + 0x110]
call fcn.1800dfb10
mov rcx, qword [rax]
add rcx, 0x48
call fcn.1800af8f0
mov rax, qword [0x180257790]
mov ebx, dword [rax + 0x18]
mov qword [rbp], rsi
lea r8, [rbp]
lea rdx, [rbp + 0x120]
lea rcx, [0x180258220]
call fcn.18019e190
mov rcx, qword [rax]
mov dword [rcx + 0x18], ebx
mov qword [rbp + 0x278], rsi
lea r8, [rbp + 0x278]
lea rdx, [rbp + 0x130]
lea rcx, [0x180258220]
call fcn.18019e190
mov rcx, qword [rax]
mov rax, qword [0x180257790]
mov ebx, dword [rax + 0x18]
sub ebx, dword [rcx + 0x18]
mov qword [rbp + 0x10], rsi
lea r8, [rbp + 0x10]
lea rdx, [rbp + 0x140]
lea rcx, [0x1802581e0]
call fcn.18019e190
mov rcx, qword [rax]
mov dword [rcx + 0x18], ebx
ucomiss xmm6, xmm13
jp 0x18019c608
je 0x18019c7ef
mov qword [rbp + 0x278], rsi
lea r8, [rbp + 0x278]
lea rcx, [0x1802582a0]
test r12b, r12b
je 0x18019c63d
lea rdx, [rbp + 0x150]
call fcn.18019dbf0
mov rcx, qword [rax]
mov dword [rcx + 0x18], 0
jmp 0x18019c7ef
mov byte [0x1802584a0], 1
mov rax, qword [rsi + 8]
mov rbx, qword [rax + 0x80]
lea rdx, [rbp + 0x160]
call fcn.18019dbf0
mov rdx, qword [rax]
add rdx, 0x1c
movss dword [rsp + 0x20], xmm7
mov r9d, 0x7ff00
mov r8d, 0x80
lea rcx, [rsi + 8]
call rbx
movzx ebx, al
mov qword [rbp + 0x20], rsi
lea r8, [rbp + 0x20]
lea rdx, [rbp + 0x170]
lea rcx, [0x1802582a0]
call fcn.18019dbf0
mov rcx, qword [rax]
mov dword [rcx + 0x18], ebx
mov byte [0x1802584a0], 0
mov qword [rbp + 0x278], rsi
lea r8, [rbp + 0x278]
lea rdx, [rbp + 0x180]
lea rcx, [0x1802582e0]
call fcn.18019d970
mov rcx, qword [rax]
movss xmm6, dword [rcx + 0x18]
movss xmm7, dword [rcx + 0x1c]
movss xmm8, dword [rcx + 0x20]
mov rcx, rsi
call fcn.1800de9a0
movss xmm9, dword [rax]
mov rcx, rsi
call fcn.1800deaa0
movss xmm10, dword [rax]
mov qword [rbp + 0x278], rsi
lea r8, [rbp + 0x278]
lea rdx, [rbp + 0x100]
lea rcx, [0x1802582e0]
call fcn.18019d970
mov rcx, qword [rax]
movss dword [rcx + 0x18], xmm9
movss dword [rcx + 0x1c], xmm10
mov dword [rcx + 0x20], 0
subss xmm9, xmm6
divss xmm9, xmm12
subss xmm10, xmm7
divss xmm10, xmm12
movaps xmm11, xmm13
subss xmm11, xmm8
divss xmm11, xmm12
mov rcx, qword [0x180257748]
mov rax, qword [rcx]
call qword [rax + 0x240]
mov rdi, rax
test rax, rax
jne 0x18019c76a
movaps xmm0, xmm13
jmp 0x18019c795
movss xmm7, dword [0x180252954]
mov rax, qword [rax]
mov rbx, qword [rax + 0x48]
xor edx, edx
mov rcx, rdi
call rbx
movaps xmm6, xmm0
mov edx, 1
mov rcx, rdi
call rbx
addss xmm0, xmm6
subss xmm0, xmm7
movd xmm1, dword [0x180257a14]
cvtdq2ps xmm1, xmm1
mov rax, qword [0x180257790]
mulss xmm1, dword [rax + 0x1c]
addss xmm1, xmm0
mulss xmm9, xmm1
mulss xmm10, xmm1
mulss xmm11, xmm1
mov qword [rbp + 0x30], rsi
lea r8, [rbp + 0x30]
lea rdx, [rbp + 0x90]
lea rcx, [0x180258320]
call fcn.18019d970
mov rcx, qword [rax]
movss dword [rcx + 0x18], xmm9
movss dword [rcx + 0x1c], xmm10
movss dword [rcx + 0x20], xmm11
mov ebx, dword [rbp + 0x270]
inc r15d
mov rcx, qword [0x180257748]
mov rax, qword [rcx]
call qword [rax + 0xa8]
cmp r15d, eax
jle 0x18019c1f0
mov dword [rbp + 0x270], 0
lea r8, [rbp + 0x270]
lea rdx, [rbp + 0x90]
lea rcx, [0x1802580e0]
call fcn.18019e410
mov rcx, qword [rax]
mov r14, qword [rcx + 0x20]
mov rdi, qword [rcx + 0x18]
cmp rdi, r14
je 0x18019c919
nop dword [rax]
mov rsi, qword [rdi]
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rsp + 0x60], xmm0
movups xmmword [rsp + 0x70], xmm0
movups xmmword [rbp - 0x80], xmm0
movups xmmword [rbp - 0x70], xmm0
movups xmmword [rbp - 0x60], xmm0
movups xmmword [rbp - 0x50], xmm0
movups xmmword [rbp - 0x40], xmm0
movups xmmword [rbp - 0x30], xmm0
mov dword [rbp - 0x20], eax
mov rax, qword [0x180257748]
mov rcx, qword [rax]
mov rbx, qword [rcx + 0x40]
mov rax, qword [rsi + 0x10]
lea rcx, [rsi + 0x10]
call qword [rax + 0x48]
lea r8, [rsp + 0x60]
mov edx, eax
mov rcx, qword [0x180257748]
call rbx
test al, al
je 0x18019c90c
xor r8d, r8d
mov edx, dword [rbp - 0x58]
lea rcx, [0x180266a50]
call fcn.18014fb40
mov ebx, eax
lea r8, [rbp - 0x58]
lea rdx, [rbp + 0x90]
lea rcx, [0x180258460]
call fcn.180137a40
mov rdx, qword [rax]
mov dword [rdx + 0x14], ebx
mov rdx, qword [rsi + 0x10]
lea rcx, [rsi + 0x10]
call qword [rdx + 0x48]
mov dword [rbp + 0x270], eax
lea r8, [rbp + 0x270]
lea rdx, [rbp + 0x100]
lea rcx, [0x180258420]
call fcn.1800ac180
mov rcx, qword [rax]
mov dword [rcx + 0x14], ebx
add rdi, 8
cmp rdi, r14
jne 0x18019c850
lea r11, [rsp + 0x328]
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]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret