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

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 8], rcx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x70]
sub rsp, 0x170
movaps xmmword [rsp + 0x160], xmm6
mov r12, rdx
mov dword [rbp - 0x60], 0
mov ecx, dword [0x18023327c]
mov rax, qword gs:[0x58]
mov edx, 4
mov r13, qword [rax + rcx*8]
mov eax, dword [rdx + r13]
cmp dword [0x1802443a8], eax
jle 0x180102e5b
lea rcx, [0x1802443a8]
call fcn.180184dbc
cmp dword [0x1802443a8], 0xffffffff
jne 0x180102e5b
lea rdx, str.tf_weapon_criticals
call fcn.1801828c0
mov qword [0x1802442e8], rax
lea rcx, [0x1802443a8]
call fcn.180184d50
mov rax, qword [0x1802442e8]
test rax, rax
je 0x180102e74
mov rax, qword [rax + 0x38]
cmp dword [rax + 0x58], 0
setne bl
jmp 0x180102e76
mov bl, 1
test byte [0x180239044], 2
je 0x180103e5c
mov rcx, qword [0x180234bb8]
mov rax, qword [rcx]
call qword [rax + 0xd0]
test al, al
je 0x180103e5c
test bl, bl
je 0x180103e5c
cmp qword [0x180234db8], 0
je 0x180103e5c
mov r14, qword [0x18022e8a8]
test r14, r14
je 0x180103e5c
mov rcx, r12
call fcn.1800b54c0
cmp byte [rax], 0
jne 0x180103e5c
mov rcx, r12
call fcn.1800b57d0
mov ecx, dword [rax]
shr ecx, 0xd
test cl, 1
jne 0x180103e5c
mov edi, dword [0x180238a18]
mov r15d, dword [0x180238a1c]
add r15d, 8
mov dword [rbp - 0x58], 3
lea r8, [rbp - 0x58]
lea rdx, [rbp - 0x10]
call fcn.18017f970
mov rsi, qword [rax]
add rsi, 0x18
mov dword [rbp + 0xb0], 1
movd xmm2, edi
cvtdq2ps xmm2, xmm2
movss xmm1, dword [0x180238694]
movaps xmm3, xmm1
mulss xmm3, dword [0x18020a544]
addss xmm3, dword [0x18020a5a0]
comiss xmm3, xmm2
jb 0x180102f61
mulss xmm1, dword [0x18020a534]
subss xmm2, xmm1
cvttss2si edi, xmm2
mov dword [rbp + 0xb0], 0
jmp 0x180102f8f
movd xmm0, dword [0x18022e260]
cvtdq2ps xmm0, xmm0
subss xmm0, xmm3
comiss xmm2, xmm0
jb 0x180102f8f
mulss xmm1, dword [0x18020a534]
addss xmm1, xmm2
cvttss2si edi, xmm1
mov dword [rbp + 0xb0], 2
mov rdx, r14
call fcn.180101840
test al, al
je 0x180103e5c
mov rax, qword [r14]
mov rdx, qword [rax + 0xa50]
mov rcx, r14
call rdx
mov dword [rbp + 0xc0], eax
mov rcx, r14
call fcn.1800bb620
mov rcx, qword [rax]
test rcx, rcx
je 0x180102fd1
cmp byte [rcx + 0x764], 0
je 0x180102fd1
mov bl, 1
jmp 0x180102fd3
xor bl, bl
lea r8, [rbp + 0xc0]
lea rdx, [rsp + 0x50]
lea rcx, [0x180244348]
call fcn.180104380
mov rcx, qword [rax]
movss xmm1, dword [rcx + 0x18]
xorps xmm0, xmm0
comiss xmm1, xmm0
jbe 0x1801037b0
mov rcx, r12
call fcn.1800bbc10
test al, al
je 0x180103177
mov dword [rbp + 0xc8], 0xffffff64
lea rax, str.Crit_Boosted
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0xb0]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0xc8]
mov qword [rsp + 0x20], rax
mov r9d, r15d
mov r8d, edi
mov rdx, rsi
lea rcx, [0x18022e220]
call fcn.18017cee0
lea r12, [0x180238f44]
movabs r13, 0x1000000000000000
lea r8, [rbp + 0xc0]
lea rdx, [rsp + 0x50]
lea rcx, [0x180244348]
call fcn.180104380
mov rbx, qword [rax]
mov dword [rbp + 0xc8], 0
lea r8, [rbp + 0xc0]
lea rdx, [rsp + 0x60]
lea rcx, [0x180244348]
call fcn.180104380
mov rcx, qword [rax]
add rcx, 0x20
lea rax, [rbp + 0xc8]
cmp dword [rcx], 0
cmovge rax, rcx
lea rcx, str.____potential_crits
mov qword [rsp + 0x40], rcx
mov qword [rsp + 0x48], 0x17
mov eax, dword [rax]
mov dword [rsp + 0x70], eax
mov qword [rsp + 0x60], r13
mov eax, dword [rbx + 0x24]
mov dword [rsp + 0x74], eax
movabs rbx, 0x1000000000000004
mov qword [rsp + 0x68], rbx
mov qword [rsp + 0x50], 2
lea rax, [rsp + 0x60]
mov qword [rsp + 0x58], rax
movaps xmm0, xmmword [rsp + 0x50]
movdqa xmmword [rsp + 0x50], xmm0
movaps xmm1, xmmword [rsp + 0x40]
movdqa xmmword [rsp + 0x40], xmm1
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x40]
lea rcx, [rbp - 0x80]
call fcn.1800a98a0
nop
lea rcx, [rbp - 0x80]
cmp qword [rbp - 0x68], 0xf
cmova rcx, qword [rbp - 0x80]
mov r9d, dword [rsi + 8]
inc r9d
add r9d, r15d
mov qword [rsp + 0x30], rcx
lea rax, [rbp + 0xb0]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r12
mov r8d, edi
mov rdx, rsi
lea rcx, [0x18022e220]
call fcn.18017cee0
nop
lea rcx, [rbp - 0x80]
call fcn.180091c20
jmp 0x1801037fd
mov rcx, r14
call fcn.180100970
movss xmm6, dword [rax]
mov rcx, r12
call fcn.1800bb220
movd xmm0, dword [rax]
cvtdq2ps xmm0, xmm0
mov rax, qword [0x180234bf8]
mulss xmm0, dword [rax + 0x1c]
comiss xmm6, xmm0
jbe 0x180103292
mov rcx, r14
call fcn.180100970
movss xmm6, dword [rax]
mov rcx, r12
call fcn.1800bb220
movd xmm0, dword [rax]
cvtdq2ps xmm0, xmm0
mov rax, qword [0x180234bf8]
mulss xmm0, dword [rax + 0x1c]
subss xmm6, xmm0
mov dword [rbp + 0xc8], 0xffffff64
lea rax, str.Streaming_crits_:.1fs
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], 0x17
movss dword [rsp + 0x68], xmm6
movabs rax, 0x7000000000000000
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x40], 1
lea rax, [rsp + 0x60]
mov qword [rsp + 0x48], rax
movaps xmm0, xmmword [rsp + 0x40]
movdqa xmmword [rsp + 0x40], xmm0
movaps xmm1, xmmword [rsp + 0x50]
movdqa xmmword [rsp + 0x50], xmm1
lea r8, [rsp + 0x40]
lea rdx, [rsp + 0x50]
lea rcx, [rbp - 0x50]
call fcn.1800a98a0
nop
lea rax, [rbp - 0x50]
cmp qword [rbp - 0x38], 0xf
cmova rax, qword [rbp - 0x50]
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0xb0]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0xc8]
mov qword [rsp + 0x20], rax
mov r9d, r15d
mov r8d, edi
mov rdx, rsi
lea rcx, [0x18022e220]
call fcn.18017cee0
nop
lea rcx, [rbp - 0x50]
call fcn.180091c20
jmp 0x180103052
cmp byte [0x180244338], 0
jne 0x1801036f5
lea r8, [rbp + 0xc0]
lea rdx, [rsp + 0x50]
lea rcx, [0x180244348]
call fcn.180104380
mov rcx, qword [rax]
cmp dword [rcx + 0x20], 0
jle 0x18010354b
test bl, bl
je 0x180103052
lea r8, [rbp + 0xc0]
lea rdx, [rsp + 0x50]
lea rcx, [0x180244348]
call fcn.180104380
mov rcx, qword [rax]
cmp dword [rcx + 0x28], 0
jle 0x180103052
mov eax, 4
mov eax, dword [rax + r13]
cmp dword [0x180234ed8], eax
jle 0x1801033a4
lea rcx, [0x180234ed8]
call fcn.180184dbc
cmp dword [0x180234ed8], 0xffffffff
jne 0x1801033a4
mov rcx, qword [0x180234b78]
mov rax, qword [rcx]
call qword [rax + 0x40]
mov r10, rax
test rax, rax
je 0x18010338d
mov r9, qword [r10 + 0x10]
mov rcx, 0xffffffffffffffff
mov r8d, 0x811c9dc5
inc rcx
cmp byte [r9 + rcx], 0
jne 0x180103345
xor edx, edx
test rcx, rcx
je 0x180103384
nop word [rax + rax]
movsx eax, byte [rdx + r9]
xor eax, r8d
imul r8d, eax, 0x1000193
inc rdx
cmp rdx, rcx
jb 0x180103360
cmp r8d, 0x24615a25
je 0x18010348e
mov r10, qword [r10 + 0x20]
test r10, r10
jne 0x180103334
xor eax, eax
add eax, 0xc
mov dword [0x180234ed4], eax
lea rcx, [0x180234ed8]
call fcn.180184d50
movsxd rax, dword [0x180234ed4]
movss xmm6, dword [rax + r14]
mov rcx, r12
call fcn.1800bb220
addss xmm6, dword [0x18020a400]
movd xmm0, dword [rax]
cvtdq2ps xmm0, xmm0
mov rax, qword [0x180234bf8]
mulss xmm0, dword [rax + 0x1c]
subss xmm6, xmm0
lea rax, str.Wait_:.1fs
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x68], 0xc
movss dword [rsp + 0x58], xmm6
movabs rax, 0x7000000000000000
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x40], 1
lea rax, [rsp + 0x50]
mov qword [rsp + 0x48], rax
movaps xmm0, xmmword [rsp + 0x40]
movdqa xmmword [rsp + 0x40], xmm0
movaps xmm1, xmmword [rsp + 0x60]
movdqa xmmword [rsp + 0x60], xmm1
lea r8, [rsp + 0x40]
lea rdx, [rsp + 0x60]
lea rcx, [rbp - 0x50]
call fcn.1800a98a0
nop
lea rax, [rbp - 0x50]
cmp qword [rbp - 0x38], 0xf
cmova rax, qword [rbp - 0x50]
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0xb0]
mov qword [rsp + 0x28], rax
lea r12, [0x180238f44]
mov qword [rsp + 0x20], r12
mov r9d, r15d
mov r8d, edi
mov rdx, rsi
lea rcx, [0x18022e220]
call fcn.18017cee0
nop
lea rcx, [rbp - 0x50]
call fcn.180091c20
jmp 0x180103059
mov r10, qword [r10 + 0x18]
xor r11d, r11d
mov ebx, dword [r10 + 8]
test ebx, ebx
jle 0x18010338d
mov r10, qword [r10]
nop dword [rax]
nop dword [rax + rax]
movups xmm3, xmmword [r10 + 0x40]
mov r8d, 0x811c9dc5
mov r9, qword [r10]
mov rcx, 0xffffffffffffffff
inc rcx
cmp byte [r9 + rcx], 0
jne 0x1801034c5
xor edx, edx
test rcx, rcx
je 0x180103500
nop word [rax + rax]
movsx eax, byte [rdx + r9]
xor eax, r8d
imul r8d, eax, 0x1000193
inc rdx
cmp rdx, rcx
jb 0x1801034e0
cmp r8d, 0x2afb9c68
je 0x18010352d
movq rdx, xmm3
test rdx, rdx
je 0x18010351c
lea r8, str.m_flLastCritCheckTime
call fcn.180184950
mov ecx, eax
test eax, eax
jne 0x18010353b
inc r11d
add r10, 0x60
cmp r11d, ebx
jl 0x1801034b0
jmp 0x18010338d
psrldq xmm3, 8
movd eax, xmm3
jmp 0x18010338f
psrldq xmm3, 8
movd eax, xmm3
add eax, ecx
jmp 0x18010338f
lea r8, [rbp + 0xc0]
lea rdx, [rsp + 0x50]
lea rcx, [0x180244348]
call fcn.180104380
mov rcx, qword [rax]
mov edx, dword [rcx + 0x20]
neg edx
cmp edx, 1
jne 0x1801035ed
lea rax, str.Crit_in__shot
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x68], 0xf
mov dword [rsp + 0x58], edx
movabs r13, 0x1000000000000000
mov qword [rsp + 0x50], r13
mov qword [rsp + 0x40], 1
lea rax, [rsp + 0x50]
mov qword [rsp + 0x48], rax
movaps xmm0, xmmword [rsp + 0x40]
movdqa xmmword [rsp + 0x40], xmm0
movaps xmm1, xmmword [rsp + 0x60]
movdqa xmmword [rsp + 0x60], xmm1
lea r8, [rsp + 0x40]
lea rdx, [rsp + 0x60]
lea rcx, [rbp - 0x80]
call fcn.1800a98a0
nop
mov ebx, 0x1001
lea rax, [rbp - 0x80]
cmp qword [rbp - 0x68], 0xf
cmova rax, qword [rbp - 0x80]
jmp 0x180103689
lea rcx, [0x1801f6864]
lea rax, [0x1801b44ce]
cmp edx, 0x64
cmove rax, rcx
lea rcx, str.Crit_in__shots
mov qword [rsp + 0x40], rcx
mov qword [rsp + 0x48], 0x12
mov dword [rbp - 0x40], edx
movabs r13, 0x1000000000000000
mov qword [rbp - 0x50], r13
mov qword [rbp - 0x3c], rax
movabs rax, 0xb000000000000004
mov qword [rbp - 0x48], rax
mov qword [rsp + 0x50], 2
lea rax, [rbp - 0x50]
mov qword [rsp + 0x58], rax
movaps xmm0, xmmword [rsp + 0x50]
movdqa xmmword [rsp + 0x50], xmm0
movaps xmm1, xmmword [rsp + 0x40]
movdqa xmmword [rsp + 0x40], xmm1
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x40]
lea rcx, [rbp - 0x30]
call fcn.1800a98a0
nop
mov ebx, 0x2002
lea rax, [rbp - 0x30]
cmp qword [rbp - 0x18], 0xf
cmova rax, qword [rbp - 0x30]
mov dword [rbp - 0x60], ebx
mov dword [rbp + 0xc8], 0xff9696ff
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0xb0]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0xc8]
mov qword [rsp + 0x20], rax
mov r9d, r15d
mov r8d, edi
mov rdx, rsi
lea rcx, [0x18022e220]
call fcn.18017cee0
nop
test bl, 2
je 0x1801036db
and ebx, 0xfffffffd
lea rcx, [rbp - 0x30]
call fcn.180091c20
nop
test bl, 1
je 0x1801036e9
lea rcx, [rbp - 0x80]
call fcn.180091c20
lea r12, [0x180238f44]
jmp 0x180103063
mov dword [rbp + 0xc8], 0xff9696ff
lea rax, str.Deal__damage
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x68], 0xe
mov eax, dword [0x18024433c]
mov dword [rsp + 0x58], eax
movabs r13, 0x1000000000000000
mov qword [rsp + 0x50], r13
mov qword [rsp + 0x40], 1
lea rax, [rsp + 0x50]
mov qword [rsp + 0x48], rax
movaps xmm0, xmmword [rsp + 0x40]
movdqa xmmword [rsp + 0x40], xmm0
movaps xmm1, xmmword [rsp + 0x60]
movdqa xmmword [rsp + 0x60], xmm1
lea r8, [rsp + 0x40]
lea rdx, [rsp + 0x60]
lea rcx, [rbp - 0x80]
call fcn.1800a98a0
nop
lea rax, [rbp - 0x80]
cmp qword [rbp - 0x68], 0xf
cmova rax, qword [rbp - 0x80]
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0xb0]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0xc8]
mov qword [rsp + 0x20], rax
mov r9d, r15d
mov r8d, edi
mov rdx, rsi
lea rcx, [0x18022e220]
call fcn.18017cee0
nop
jmp 0x1801036e0
lea rax, str.Calculating
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0xb0]
mov qword [rsp + 0x28], rax
lea rax, [0x180238f44]
mov qword [rsp + 0x20], rax
mov r9d, r15d
mov r8d, edi
mov rdx, rsi
lea rcx, [0x18022e220]
call fcn.18017cee0
movabs rbx, 0x1000000000000004
movabs r13, 0x1000000000000000
cmp byte [0x18023f401], 0
je 0x180103e5c
lea rax, str.AllDamage:___CritDamage:_
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], 0x1d
mov eax, dword [0x1802442f4]
mov dword [rsp + 0x70], eax
mov qword [rsp + 0x60], r13
mov eax, dword [0x1802442f0]
mov dword [rsp + 0x74], eax
mov qword [rsp + 0x68], rbx
mov qword [rsp + 0x50], 2
lea rax, [rsp + 0x60]
mov qword [rsp + 0x58], rax
movaps xmm0, xmmword [rsp + 0x50]
movdqa xmmword [rsp + 0x50], xmm0
movaps xmm1, xmmword [rsp + 0x40]
movdqa xmmword [rsp + 0x40], xmm1
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x40]
lea rcx, [rbp - 0x80]
call fcn.1800a98a0
nop
lea rcx, [rbp - 0x80]
cmp qword [rbp - 0x68], 0xf
cmova rcx, qword [rbp - 0x80]
mov dword [rbp + 0xc8], 0xffffffff
mov r9d, dword [rsi + 8]
lea eax, [r15 + r9*2]
add r9d, eax
mov qword [rsp + 0x30], rcx
lea rax, [rbp + 0xb0]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0xc8]
mov qword [rsp + 0x20], rax
mov r8d, edi
mov rdx, rsi
lea rcx, [0x18022e220]
call fcn.18017cee0
nop
lea rcx, [rbp - 0x80]
call fcn.180091c20
mov rcx, r14
call fcn.180100670
lea rcx, str.Bucket:_
mov qword [rsp + 0x60], rcx
mov qword [rsp + 0x68], 0xa
movss xmm0, dword [rax]
movss dword [rsp + 0x58], xmm0
movabs r12, 0x7000000000000000
mov qword [rsp + 0x50], r12
mov qword [rsp + 0x40], 1
lea rax, [rsp + 0x50]
mov qword [rsp + 0x48], rax
movaps xmm0, xmmword [rsp + 0x40]
movdqa xmmword [rsp + 0x40], xmm0
movaps xmm1, xmmword [rsp + 0x60]
movdqa xmmword [rsp + 0x60], xmm1
lea r8, [rsp + 0x40]
lea rdx, [rsp + 0x60]
lea rcx, [rbp - 0x80]
call fcn.1800a98a0
nop
lea rcx, [rbp - 0x80]
cmp qword [rbp - 0x68], 0xf
cmova rcx, qword [rbp - 0x80]
mov dword [rbp + 0xc8], 0xffffffff
mov eax, dword [rsi + 8]
lea r9d, [r15 + rax*4]
mov qword [rsp + 0x30], rcx
lea rax, [rbp + 0xb0]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0xc8]
mov qword [rsp + 0x20], rax
mov r8d, edi
mov rdx, rsi
lea rcx, [0x18022e220]
call fcn.18017cee0
nop
lea rcx, [rbp - 0x80]
call fcn.180091c20
lea r8, [rbp + 0xc0]
lea rdx, [rsp + 0x50]
lea rcx, [0x180244348]
call fcn.180104380
mov rbx, qword [rax]
lea r8, [rbp + 0xc0]
lea rdx, [rsp + 0x60]
lea rcx, [0x180244348]
call fcn.180104380
mov rcx, qword [rax]
lea rax, str.Damage:___Cost:_
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], 0x14
movss xmm0, dword [rcx + 0x18]
movss dword [rsp + 0x70], xmm0
mov qword [rsp + 0x60], r12
movss xmm1, dword [rbx + 0x1c]
movss dword [rsp + 0x74], xmm1
movabs r12, 0x7000000000000004
mov qword [rsp + 0x68], r12
mov qword [rsp + 0x50], 2
lea rax, [rsp + 0x60]
mov qword [rsp + 0x58], rax
movaps xmm0, xmmword [rsp + 0x50]
movdqa xmmword [rsp + 0x50], xmm0
movaps xmm1, xmmword [rsp + 0x40]
movdqa xmmword [rsp + 0x40], xmm1
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x40]
lea rcx, [rbp - 0x80]
call fcn.1800a98a0
nop
lea rcx, [rbp - 0x80]
cmp qword [rbp - 0x68], 0xf
cmova rcx, qword [rbp - 0x80]
mov dword [rbp + 0xc8], 0xffffffff
mov r9d, dword [rsi + 8]
lea eax, [r15 + r9*4]
add r9d, eax
mov qword [rsp + 0x30], rcx
lea rax, [rbp + 0xb0]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0xc8]
mov qword [rsp + 0x20], rax
mov r8d, edi
mov rdx, rsi
lea rcx, [0x18022e220]
call fcn.18017cee0
nop
lea rcx, [rbp - 0x80]
call fcn.180091c20
mov rcx, r14
call fcn.180100870
mov rbx, rax
mov rcx, r14
call fcn.180100770
lea rcx, str.Shots:___Crits:_
mov qword [rsp + 0x40], rcx
mov qword [rsp + 0x48], 0x14
mov ecx, dword [rax]
mov dword [rsp + 0x70], ecx
mov qword [rsp + 0x60], r13
mov eax, dword [rbx]
mov dword [rsp + 0x74], eax
movabs rax, 0x1000000000000004
mov qword [rsp + 0x68], rax
mov qword [rsp + 0x50], 2
lea rax, [rsp + 0x60]
mov qword [rsp + 0x58], rax
movaps xmm0, xmmword [rsp + 0x50]
movdqa xmmword [rsp + 0x50], xmm0
movaps xmm1, xmmword [rsp + 0x40]
movdqa xmmword [rsp + 0x40], xmm1
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x40]
lea rcx, [rbp - 0x80]
call fcn.1800a98a0
nop
lea rdx, [rbp - 0x80]
cmp qword [rbp - 0x68], 0xf
cmova rdx, qword [rbp - 0x80]
mov dword [rbp + 0xc8], 0xffffffff
mov eax, dword [rsi + 8]
lea ecx, [rax + rax*2]
lea r9d, [r15 + rcx*2]
mov qword [rsp + 0x30], rdx
lea rax, [rbp + 0xb0]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0xc8]
mov qword [rsp + 0x20], rax
mov r8d, edi
mov rdx, rsi
lea rcx, [0x18022e220]
call fcn.18017cee0
nop
lea rcx, [rbp - 0x80]
call fcn.180091c20
lea rax, str.CritBanned:___DamageTilUnban:_
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], 0x22
movzx eax, byte [0x180244338]
mov byte [rsp + 0x70], al
movabs rax, 0x5000000000000000
mov qword [rsp + 0x60], rax
mov eax, dword [0x18024433c]
mov dword [rsp + 0x71], eax
movabs rax, 0x1000000000000001
mov qword [rsp + 0x68], rax
mov qword [rsp + 0x50], 2
lea rax, [rsp + 0x60]
mov qword [rsp + 0x58], rax
movaps xmm0, xmmword [rsp + 0x50]
movdqa xmmword [rsp + 0x50], xmm0
movaps xmm1, xmmword [rsp + 0x40]
movdqa xmmword [rsp + 0x40], xmm1
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x40]
lea rcx, [rbp - 0x80]
call fcn.1800a98a0
nop
lea rax, [rbp - 0x80]
cmp qword [rbp - 0x68], 0xf
cmova rax, qword [rbp - 0x80]
mov dword [rbp + 0xc8], 0xffffffff
imul r9d, dword [rsi + 8], 7
add r9d, r15d
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0xb0]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0xc8]
mov qword [rsp + 0x20], rax
mov r8d, edi
mov rdx, rsi
lea rcx, [0x18022e220]
call fcn.18017cee0
nop
lea rcx, [rbp - 0x80]
call fcn.180091c20
movss xmm0, dword [0x180244340]
movaps xmm1, xmm0
subss xmm1, dword [0x18020a35c]
lea rax, str.CritChance:_:.2f__:.2f_
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], 0x1b
movss dword [rsp + 0x70], xmm0
movabs rax, 0x7000000000000000
mov qword [rsp + 0x60], rax
movss dword [rsp + 0x74], xmm1
mov qword [rsp + 0x68], r12
mov qword [rsp + 0x50], 2
lea rax, [rsp + 0x60]
mov qword [rsp + 0x58], rax
movaps xmm0, xmmword [rsp + 0x50]
movdqa xmmword [rsp + 0x50], xmm0
movaps xmm1, xmmword [rsp + 0x40]
movdqa xmmword [rsp + 0x40], xmm1
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x40]
lea rcx, [rbp - 0x80]
call fcn.1800a98a0
nop
lea rcx, [rbp - 0x80]
cmp qword [rbp - 0x68], 0xf
cmova rcx, qword [rbp - 0x80]
mov dword [rbp + 0xc8], 0xffffffff
mov eax, dword [rsi + 8]
lea r9d, [r15 + rax*8]
mov qword [rsp + 0x30], rcx
lea rax, [rbp + 0xb0]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0xc8]
mov qword [rsp + 0x20], rax
mov r8d, edi
mov rdx, rsi
lea rcx, [0x18022e220]
call fcn.18017cee0
nop
lea rcx, [rbp - 0x80]
call fcn.180091c20
lea r8, [rbp + 0xc0]
lea rdx, [rsp + 0x50]
lea rcx, [0x180244348]
call fcn.180104380
mov rdx, qword [rax]
mov rbx, qword [rdx + 0x80]
lea r8, [rbp + 0xc0]
lea rdx, [rsp + 0x50]
lea rcx, [0x180244348]
call fcn.180104380
mov rcx, qword [rax]
mov rax, qword [rcx + 0x58]
lea rcx, str.Force:___Skip:_
mov qword [rsp + 0x40], rcx
mov qword [rsp + 0x48], 0x13
mov qword [rbp - 0x70], rax
movabs rax, 0x4000000000000000
mov qword [rbp - 0x80], rax
mov qword [rbp - 0x68], rbx
movabs rax, 0x4000000000000008
mov qword [rbp - 0x78], rax
mov qword [rsp + 0x50], 2
lea rax, [rbp - 0x80]
mov qword [rsp + 0x58], rax
movaps xmm0, xmmword [rsp + 0x50]
movdqa xmmword [rsp + 0x50], xmm0
movaps xmm1, xmmword [rsp + 0x40]
movdqa xmmword [rsp + 0x40], xmm1
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x40]
lea rcx, [rbp - 0x30]
call fcn.1800a98a0
nop
lea r10, [rbp - 0x30]
cmp qword [rbp - 0x18], 0xf
cmova r10, qword [rbp - 0x30]
mov dword [rbp + 0xc8], 0xffffffff
mov r9d, dword [rsi + 8]
lea eax, [r15 + r9*8]
add r9d, eax
mov qword [rsp + 0x30], r10
lea rax, [rbp + 0xb0]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0xc8]
mov qword [rsp + 0x20], rax
mov r8d, edi
mov rdx, rsi
lea rcx, [0x18022e220]
call fcn.18017cee0
nop
lea rcx, [rbp - 0x30]
call fcn.180091c20
mov rbx, qword [rsp + 0x1b8]
movaps xmm6, xmmword [rsp + 0x160]
add rsp, 0x170
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret