Function at 0x1801202a0
Capabilities:
Encode data using xor
Hash data using fnv
Resolve function by parsing pe exports

Disassembly:
mov rax, rsp
mov dword [rax + 0x18], r8d
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 - 0x2e8]
sub rsp, 0x3a8
vmovaps xmmword [rax - 0x58], xmm6
vmovaps xmmword [rax - 0x68], xmm7
vmovaps xmmword [rax - 0x78], xmm8
vmovaps xmmword [rax - 0x88], xmm9
vmovaps xmmword [rax - 0x98], xmm10
vmovaps xmmword [rax - 0xa8], xmm11
vmovaps xmmword [rax - 0xb8], xmm12
vmovaps xmmword [rax - 0xc8], xmm13
vmovaps xmmword [rax - 0xd8], xmm14
vmovaps xmmword [rax - 0xe8], xmm15
mov r15d, r9d
mov esi, r8d
xor r13d, r13d
mov r10, rdx
cmp qword [rdx + 0x18], 0xf
jbe 0x180120326
mov r10, qword [rdx]
mov ebx, 0x811c9dc5
mov dword [rbp - 0x40], ebx
mov rcx, 0xffffffffffffffff
inc rcx
cmp byte [r10 + rcx], 0
jne 0x180120335
mov rdx, r13
test rcx, rcx
je 0x180120368
nop word [rax + rax]
movsx eax, byte [rdx + r10]
xor eax, ebx
imul ebx, eax, 0x1000193
inc rdx
cmp rdx, rcx
jb 0x180120350
mov dword [rbp - 0x40], ebx
mov rdi, qword [0x1802305d0]
mov r12, qword [0x1802305d8]
mov qword [rbp + 0x38], r12
cmp rdi, r12
je 0x1801218c3
vmovss xmm15, dword [0x18020a418]
vmovss xmm14, dword [0x18020a468]
vmovss xmm11, dword [0x18020a658]
vmovss xmm12, dword [0x18020a624]
vmovss xmm13, dword [0x18020a340]
lea rcx, [0x180230590]
mov r8, rdi
lea rdx, [rbp + 0x1f0]
call fcn.1800e5890
mov r14, qword [rax]
lea r8, [r14 + 0x50]
cmp qword [r8 + 0x18], 0xf
jbe 0x1801203d2
mov r8, qword [r8]
mov rcx, 0xffffffffffffffff
mov r9d, 0x811c9dc5
nop
inc rcx
cmp byte [r8 + rcx], 0
jne 0x1801203e0
mov rdx, r13
test rcx, rcx
je 0x180120417
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 0x180120400
cmp ebx, r9d
jne 0x1801218b6
inc r15d
mov dword [rbp + 0x308], r15d
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rbp - 0x60], xmm0
mov qword [rbp - 0x50], r13
mov qword [rbp - 0x48], 0xf
mov byte [rbp - 0x60], 0
vmovups xmmword [rsp + 0x40], xmm0
mov qword [rsp + 0x50], r13
mov ecx, 0xf
mov qword [rsp + 0x58], rcx
mov byte [rsp + 0x40], 0
mov edx, dword [r14 + 0x30]
test edx, edx
je 0x180120ac8
sub edx, 1
je 0x18012072b
cmp edx, 1
jne case.default.0x180120768
mov qword [rbp - 0x50], 6
mov eax, dword [str.weapon]
mov dword [rbp - 0x60], eax
movzx eax, word [0x180203c14]
mov word [rbp - 0x5c], ax
mov byte [rbp - 0x5a], 0
mov edx, dword [r14 + 0x34]
test edx, edx
je 0x180120627
sub edx, 1
je 0x1801204df
cmp edx, 1
jne case.default.0x180120768
lea rbx, [rsp + 0x40]
mov qword [rsp + 0x50], 5
lea r8d, [rcx - 0xa]
lea rdx, str.melee
mov rcx, rbx
call sub.VCRUNTIME140.dll_memmove
mov byte [rbx + 5], 0
jmp case.default.0x180120768
mov rcx, qword [rsp + 0x58]
cmp rcx, 0xa
jb 0x180120520
lea rbx, [rsp + 0x40]
cmp rcx, 0xf
cmova rbx, qword [rsp + 0x40]
mov qword [rsp + 0x50], 0xa
mov r8d, 0xa
lea rdx, str.projectile
mov rcx, rbx
call sub.VCRUNTIME140.dll_memmove
mov byte [rbx + 0xa], 0
jmp case.default.0x180120768
mov r15, qword [rsp + 0x58]
mov rcx, r15
shr rcx, 1
movabs rdx, 0x7fffffffffffffff
mov rax, rdx
sub rax, rcx
cmp r15, rax
jbe 0x180120553
mov rsi, rdx
movabs rax, 0x8000000000000000
add rax, 0x27
jmp 0x18012057d
lea rax, [r15 + rcx]
mov esi, 0xf
cmp rax, rsi
cmova rsi, rax
lea rcx, [rsi + 1]
cmp rcx, 0x1000
jb 0x18012059c
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x180121959
mov rcx, rax
call fcn.180184d74
test rax, rax
je 0x18012192f
lea rbx, [rax + 0x27]
and rbx, 0xffffffffffffffe0
mov qword [rbx - 8], rax
jmp 0x1801205ae
test rcx, rcx
je 0x1801205ab
call fcn.180184d74
mov rbx, rax
jmp 0x1801205ae
mov rbx, r13
mov qword [rsp + 0x50], 0xa
mov qword [rsp + 0x58], rsi
vmovsd xmm0, qword [str.projectile]
vmovsd qword [rbx], xmm0
movzx eax, word [0x180203c00]
mov word [rbx + 8], ax
mov byte [rbx + 0xa], 0
cmp r15, 0xf
jbe 0x180120610
lea rdx, [r15 + 1]
mov rcx, qword [rsp + 0x40]
cmp rdx, 0x1000
mov rax, rcx
jb 0x18012060b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18012192f
call fcn.180184c4c
mov qword [rsp + 0x40], rbx
mov r15d, dword [rbp + 0x308]
mov esi, dword [rbp + 0x300]
jmp case.default.0x180120768
mov rcx, qword [rsp + 0x58]
cmp rcx, 7
jb 0x180120668
lea rbx, [rsp + 0x40]
cmp rcx, 0xf
cmova rbx, qword [rsp + 0x40]
mov qword [rsp + 0x50], 7
mov r8d, 7
lea rdx, str.hitscan
mov rcx, rbx
call sub.VCRUNTIME140.dll_memmove
mov byte [rbx + 7], 0
jmp case.default.0x180120768
mov r15, qword [rsp + 0x58]
mov rcx, r15
shr rcx, 1
movabs rdx, 0x7fffffffffffffff
mov rax, rdx
sub rax, rcx
cmp r15, rax
jbe 0x18012069b
mov rsi, rdx
movabs rax, 0x8000000000000000
add rax, 0x27
jmp 0x1801206c5
lea rax, [r15 + rcx]
mov esi, 0xf
cmp rax, rsi
cmova rsi, rax
lea rcx, [rsi + 1]
cmp rcx, 0x1000
jb 0x1801206e4
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x180121959
mov rcx, rax
call fcn.180184d74
test rax, rax
je 0x18012192f
lea rbx, [rax + 0x27]
and rbx, 0xffffffffffffffe0
mov qword [rbx - 8], rax
jmp 0x1801206f6
test rcx, rcx
je 0x1801206f3
call fcn.180184d74
mov rbx, rax
jmp 0x1801206f6
mov rbx, r13
mov qword [rsp + 0x50], 7
mov qword [rsp + 0x58], rsi
mov rax, qword [str.hitscan]
mov dword [rbx], eax
movzx eax, word [0x180203c0c]
mov word [rbx + 4], ax
movzx eax, byte [0x180203c0e]
mov byte [rbx + 6], al
mov byte [rbx + 7], 0
jmp 0x1801205d7
mov qword [rbp - 0x50], 5
mov eax, dword [str.class]
mov dword [rbp - 0x60], eax
movzx eax, byte [0x1801f6cdc]
mov byte [rbp - 0x5c], al
mov byte [rbp - 0x5b], 0
movsxd rax, dword [r14 + 0x34]
cmp eax, 8
ja case.default.0x180120768
lea rdx, [0x180000000]
mov ecx, dword [rdx + rax*4 + 0x121960]
add rcx, rdx
jmp rcx
lea rdx, str.scout
lea rcx, [rsp + 0x40]
call fcn.180091680
jmp case.default.0x180120768
lea rdx, str.soldier
lea rcx, [rsp + 0x40]
call fcn.180091680
jmp case.default.0x180120768
mov rcx, qword [rsp + 0x58]
cmp rcx, 4
jb 0x1801207c8
lea rax, [rsp + 0x40]
cmp rcx, 0xf
cmova rax, qword [rsp + 0x40]
mov qword [rsp + 0x50], 4
mov dword [rax], 0x6f727970
mov byte [rax + 4], 0
jmp case.default.0x180120768
mov r15, qword [rsp + 0x58]
mov rcx, r15
shr rcx, 1
movabs rdx, 0x7fffffffffffffff
mov rax, rdx
sub rax, rcx
cmp r15, rax
jbe 0x1801207fb
mov rsi, rdx
movabs rax, 0x8000000000000000
add rax, 0x27
jmp 0x180120825
lea rax, [r15 + rcx]
mov esi, 0xf
cmp rax, rsi
cmova rsi, rax
lea rcx, [rsi + 1]
cmp rcx, 0x1000
jb 0x180120844
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x180121959
mov rcx, rax
call fcn.180184d74
test rax, rax
je 0x18012192f
lea rbx, [rax + 0x27]
and rbx, 0xffffffffffffffe0
mov qword [rbx - 8], rax
jmp 0x180120856
test rcx, rcx
je 0x180120853
call fcn.180184d74
mov rbx, rax
jmp 0x180120856
mov rbx, r13
mov qword [rsp + 0x50], 4
mov qword [rsp + 0x58], rsi
mov dword [rbx], 0x6f727970
mov byte [rbx + 4], 0
jmp 0x1801205d7
mov rcx, qword [rsp + 0x58]
cmp rcx, 7
jb 0x1801208b4
lea rbx, [rsp + 0x40]
cmp rcx, 0xf
cmova rbx, qword [rsp + 0x40]
mov qword [rsp + 0x50], 7
mov r8d, 7
lea rdx, str.demoman
mov rcx, rbx
call sub.VCRUNTIME140.dll_memmove
mov byte [rbx + 7], 0
jmp case.default.0x180120768
mov r15, qword [rsp + 0x58]
mov rcx, r15
shr rcx, 1
movabs rdx, 0x7fffffffffffffff
mov rax, rdx
sub rax, rcx
cmp r15, rax
jbe 0x1801208e7
mov rsi, rdx
movabs rax, 0x8000000000000000
add rax, 0x27
jmp 0x180120911
lea rax, [r15 + rcx]
mov esi, 0xf
cmp rax, rsi
cmova rsi, rax
lea rcx, [rsi + 1]
cmp rcx, 0x1000
jb 0x180120930
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x180121959
mov rcx, rax
call fcn.180184d74
test rax, rax
je 0x18012192f
lea rbx, [rax + 0x27]
and rbx, 0xffffffffffffffe0
mov qword [rbx - 8], rax
jmp 0x180120942
test rcx, rcx
je 0x18012093f
call fcn.180184d74
mov rbx, rax
jmp 0x180120942
mov rbx, r13
mov qword [rsp + 0x50], 7
mov qword [rsp + 0x58], rsi
mov rax, qword [str.demoman]
mov dword [rbx], eax
movzx eax, word [0x180203bb4]
mov word [rbx + 4], ax
movzx eax, byte [0x180203bb6]
mov byte [rbx + 6], al
mov byte [rbx + 7], 0
jmp 0x1801205d7
lea rdx, str.heavy
lea rcx, [rsp + 0x40]
call fcn.180091680
jmp case.default.0x180120768
lea rdx, str.engineer
lea rcx, [rsp + 0x40]
call fcn.180091680
jmp case.default.0x180120768
lea rdx, str.medic
lea rcx, [rsp + 0x40]
call fcn.180091680
jmp case.default.0x180120768
mov rcx, qword [rsp + 0x58]
cmp rcx, 6
jb 0x1801209fa
lea rbx, [rsp + 0x40]
cmp rcx, 0xf
cmova rbx, qword [rsp + 0x40]
mov qword [rsp + 0x50], 6
mov r8d, 6
lea rdx, str.sniper
mov rcx, rbx
call sub.VCRUNTIME140.dll_memmove
mov byte [rbx + 6], 0
jmp case.default.0x180120768
mov r15, qword [rsp + 0x58]
mov rcx, r15
shr rcx, 1
movabs rdx, 0x7fffffffffffffff
mov rax, rdx
sub rax, rcx
cmp r15, rax
jbe 0x180120a2d
mov rsi, rdx
movabs rax, 0x8000000000000000
add rax, 0x27
jmp 0x180120a57
lea rax, [r15 + rcx]
mov esi, 0xf
cmp rax, rsi
cmova rsi, rax
lea rcx, [rsi + 1]
cmp rcx, 0x1000
jb 0x180120a76
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x180121959
mov rcx, rax
call fcn.180184d74
test rax, rax
je 0x18012192f
lea rbx, [rax + 0x27]
and rbx, 0xffffffffffffffe0
mov qword [rbx - 8], rax
jmp 0x180120a88
test rcx, rcx
je 0x180120a85
call fcn.180184d74
mov rbx, rax
jmp 0x180120a88
mov rbx, r13
mov qword [rsp + 0x50], 6
mov qword [rsp + 0x58], rsi
mov eax, dword [str.sniper]
mov dword [rbx], eax
movzx eax, word [0x180203bd0]
mov word [rbx + 4], ax
mov byte [rbx + 6], 0
jmp 0x1801205d7
lea rdx, [0x180203bc8]
lea rcx, [rsp + 0x40]
call fcn.180091680
jmp case.default.0x180120768
mov ecx, dword [r14 + 0x34]
test ecx, ecx
je 0x180120b1e
sub ecx, 1
je 0x180120afc
cmp ecx, 1
jne 0x180120b31
mov qword [rbp - 0x50], 6
mov eax, dword [str.double]
mov dword [rbp - 0x60], eax
movzx eax, word [0x1801f683c]
mov word [rbp - 0x5c], ax
mov byte [rbp - 0x5a], 0
jmp 0x180120b31
mov qword [rbp - 0x50], 6
mov eax, dword [str.toggle]
mov dword [rbp - 0x60], eax
movzx eax, word [0x180203b94]
mov word [rbp - 0x5c], ax
mov byte [rbp - 0x5a], 0
jmp 0x180120b31
mov qword [rbp - 0x50], 4
mov dword [rbp - 0x60], 0x646c6f68
mov byte [rbp - 0x5c], 0
movzx edx, word [r14 + 0x38]
lea rcx, [rbp - 0x80]
call fcn.18010feb0
mov rbx, rax
lea rax, [rsp + 0x40]
cmp rax, rbx
je 0x180120bb5
mov rdx, qword [rsp + 0x58]
cmp rdx, 0xf
jbe 0x180120b89
inc rdx
mov rcx, qword [rsp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180120b84
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180121936
call fcn.180184c4c
mov qword [rsp + 0x50], r13
mov qword [rsp + 0x58], 0xf
mov byte [rsp + 0x40], 0
vmovups ymm0, ymmword [rbx]
vmovups ymmword [rsp + 0x40], ymm0
mov qword [rbx + 0x10], r13
mov qword [rbx + 0x18], 0xf
mov byte [rbx], 0
lea rcx, [rbp - 0x80]
vzeroupper
call fcn.180091b30
cmp byte [r14 + 0x3c], 0
je 0x180120cc8
lea rax, str.not_
mov qword [rbp + 0x180], rax
mov qword [rbp + 0x188], 6
lea rax, [rbp - 0x60]
cmp qword [rbp - 0x48], 0xf
cmova rax, qword [rbp - 0x60]
mov qword [rbp + 0x160], rax
mov rax, qword [rbp - 0x50]
mov qword [rbp + 0x168], rax
vmovups xmm0, xmmword [rbp + 0x160]
vmovups xmmword [rbp - 0x28], xmm0
movabs rbx, 0xc000000000000000
mov qword [rbp - 0x30], rbx
mov qword [rbp + 0x170], 1
lea rax, [rbp - 0x30]
mov qword [rbp + 0x178], rax
vmovups xmm0, xmmword [rbp + 0x170]
vmovdqa xmmword [rsp + 0x60], xmm0
vmovups xmm1, xmmword [rbp + 0x180]
vmovdqa xmmword [rsp + 0x70], xmm1
lea r8, [rsp + 0x60]
lea rdx, [rsp + 0x70]
lea rcx, [rbp - 0x80]
call fcn.1800a99f0
mov rdx, qword [rbp - 0x48]
cmp rdx, 0xf
jbe 0x180120ca0
inc rdx
mov rcx, qword [rbp - 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180120c9b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18012193d
call fcn.180184c4c
vmovups ymm0, ymmword [rbp - 0x80]
vmovups ymmword [rbp - 0x60], ymm0
mov qword [rbp - 0x70], r13
mov qword [rbp - 0x68], 0xf
mov byte [rbp - 0x80], 0
lea rcx, [rbp - 0x80]
vzeroupper
call fcn.180091b30
jmp 0x180120cd2
movabs rbx, 0xc000000000000000
lea rax, [0x180203c20]
mov qword [rbp + 0x50], rax
mov qword [rbp + 0x58], 6
lea rax, [rbp - 0x60]
cmp qword [rbp - 0x48], 0xf
cmova rax, qword [rbp - 0x60]
mov qword [rbp + 0x190], rax
mov rax, qword [rbp - 0x50]
mov qword [rbp + 0x198], rax
vmovups xmm0, xmmword [rbp + 0x190]
vmovups xmmword [rbp + 0x1c0], xmm0
mov qword [rbp + 0x1b0], rbx
lea rax, [rsp + 0x40]
cmp qword [rsp + 0x58], 0xf
cmova rax, qword [rsp + 0x40]
mov qword [rbp + 0x1a0], rax
mov rax, qword [rsp + 0x50]
mov qword [rbp + 0x1a8], rax
vmovups xmm0, xmmword [rbp + 0x1a0]
vmovups xmmword [rbp + 0x1d0], xmm0
movabs rax, 0xc000000000000010
mov qword [rbp + 0x1b8], rax
mov qword [rbp + 0x40], 2
lea rax, [rbp + 0x1b0]
mov qword [rbp + 0x48], rax
vmovups xmm0, xmmword [rbp + 0x40]
vmovdqa xmmword [rsp + 0x60], xmm0
vmovups xmm1, xmmword [rbp + 0x50]
vmovdqa xmmword [rsp + 0x70], xmm1
lea r8, [rsp + 0x60]
lea rdx, [rsp + 0x70]
lea rcx, [rbp + 0x18]
call fcn.1800a99f0
nop
imul eax, esi, 0x1c
vxorps xmm2, xmm2, xmm2
vcvtsi2ss xmm2, xmm2, eax
vaddss xmm8, xmm2, xmm15
vxorps xmm0, xmm0, xmm0
vcvtsi2ss xmm0, xmm0, r15d
vmulss xmm1, xmm0, dword [0x18020a480]
vaddss xmm9, xmm1, dword [0x18020a508]
mov rcx, qword [0x180233850]
mov rax, qword [rcx + 0x3ee0]
vmovss xmm0, dword [rax + 0x28]
vsubss xmm1, xmm0, dword [0x18020a43c]
vsubss xmm10, xmm1, xmm2
vmovss xmm7, dword [rax + 0x20]
vmovss xmm6, dword [rax + 0x24]
mov byte [rax + 0xb8], 1
mov rax, qword [rcx + 0x3ee0]
mov r10, qword [rax + 0x298]
lea rcx, [0x18022d6c4]
call fcn.180041400
vaddss xmm3, xmm9, xmm6
vaddss xmm1, xmm3, xmm14
vaddss xmm2, xmm8, xmm7
vaddss xmm0, xmm2, xmm10
vmovss dword [rbp - 8], xmm0
vmovss dword [rbp - 4], xmm1
vmovss dword [rbp], xmm2
vmovss dword [rbp + 4], xmm3
mov dword [rsp + 0x28], r13d
vmovss xmm0, dword [0x18020a3d0]
vmovss dword [rsp + 0x20], xmm0
mov r9d, eax
lea r8, [rbp - 8]
lea rdx, [rbp]
mov rcx, r10
call fcn.1800634f0
vaddss xmm6, xmm9, dword [0x18020a414]
mov rcx, qword [0x180233850]
mov rax, qword [rcx + 0x3ee0]
mov byte [rax + 0xb8], 1
mov rax, qword [rcx + 0x3ee0]
vmovss xmm0, dword [rax + 0x24]
vsubss xmm1, xmm0, dword [rax + 0x88]
vaddss xmm4, xmm1, xmm6
vmovss xmm2, dword [rax + 0x20]
vsubss xmm3, xmm2, dword [rax + 0x84]
vaddss xmm0, xmm8, dword [0x18020a420]
vaddss xmm1, xmm3, xmm0
vmovss dword [rax + 0x100], xmm1
vmovss dword [rax + 0x104], xmm4
mov byte [rax + 0x141], 1
mov rcx, rdi
cmp qword [rdi + 0x18], 0xf
jbe 0x180120ecf
mov rcx, qword [rdi]
xor edx, edx
lea r8d, [rdx + 1]
call fcn.180073810
lea rax, [rbp + 0x18]
cmp qword [rbp + 0x30], 0xf
cmova rax, qword [rbp + 0x18]
mov rbx, qword [0x180233850]
test rax, rax
jne 0x180120efa
vxorps xmm4, xmm4, xmm4
jmp 0x180120f3d
mov qword [rsp + 0x30], r13
mov qword [rsp + 0x28], rax
vmovss dword [rsp + 0x20], xmm11
vmovaps xmm3, xmm12
vmovss xmm2, dword [rbx + 0x3c18]
lea rdx, [rbp + 8]
mov rcx, qword [rbx + 0x3c10]
call fcn.180067cf0
vaddss xmm1, xmm13, dword [rbp + 8]
vcvttss2si eax, xmm1
vxorps xmm4, xmm4, xmm4
vcvtsi2ss xmm4, xmm4, eax
vmovss dword [rbp + 8], xmm4
mov rax, qword [rbx + 0x3ee0]
mov byte [rax + 0xb8], 1
mov rax, qword [rbx + 0x3ee0]
vmovss xmm0, dword [rax + 0x24]
vsubss xmm1, xmm0, dword [rax + 0x88]
vaddss xmm5, xmm1, xmm6
vmulss xmm2, xmm10, dword [0x18020a2f8]
vaddss xmm3, xmm2, xmm8
vmulss xmm0, xmm4, dword [0x18020a2f8]
vsubss xmm4, xmm3, xmm0
vmovss xmm1, dword [rax + 0x20]
vsubss xmm2, xmm1, dword [rax + 0x84]
vaddss xmm0, xmm4, xmm2
vmovss dword [rax + 0x100], xmm0
vmovss dword [rax + 0x104], xmm5
mov byte [rax + 0x141], 1
lea rax, [0x1802019c0]
mov qword [rbp + 0x80], rax
mov qword [rbp + 0x88], 2
lea rax, [rbp + 0x18]
cmp qword [rbp + 0x30], 0xf
cmova rax, qword [rbp + 0x18]
mov qword [rbp + 0x60], rax
mov rax, qword [rbp + 0x28]
mov qword [rbp + 0x68], rax
vmovups xmm0, xmmword [rbp + 0x60]
vmovups xmmword [rbp - 0x28], xmm0
movabs rbx, 0xc000000000000000
mov qword [rbp - 0x30], rbx
mov qword [rbp + 0x70], 1
lea rax, [rbp - 0x30]
mov qword [rbp + 0x78], rax
vmovups xmm0, xmmword [rbp + 0x70]
vmovdqa xmmword [rsp + 0x60], xmm0
vmovups xmm1, xmmword [rbp + 0x80]
vmovdqa xmmword [rsp + 0x70], xmm1
lea r8, [rsp + 0x60]
lea rdx, [rsp + 0x70]
lea rcx, [rbp - 0x80]
call fcn.1800a99f0
nop
lea rcx, [rbp - 0x80]
cmp qword [rbp - 0x68], 0xf
cmova rcx, qword [rbp - 0x80]
xor edx, edx
lea r8d, [rdx + 1]
call fcn.180073810
nop
lea rcx, [rbp - 0x80]
call fcn.180091b30
vaddss xmm6, xmm9, dword [0x18020a404]
vaddss xmm7, xmm8, xmm10
mov rcx, qword [0x180233850]
mov rax, qword [rcx + 0x3ee0]
mov byte [rax + 0xb8], 1
mov rax, qword [rcx + 0x3ee0]
vmovss xmm0, dword [rax + 0x24]
vsubss xmm1, xmm0, dword [rax + 0x88]
vaddss xmm4, xmm1, xmm6
vmovss xmm2, dword [rax + 0x20]
vsubss xmm3, xmm2, dword [rax + 0x84]
vsubss xmm0, xmm7, dword [0x18020a44c]
vaddss xmm1, xmm3, xmm0
vmovss dword [rax + 0x100], xmm1
vmovss dword [rax + 0x104], xmm4
mov byte [rax + 0x141], 1
vmovups xmm0, xmmword [0x18020ab30]
vmovdqa xmmword [rsp + 0x60], xmm0
lea r8, [rsp + 0x60]
lea rcx, [0x180203c1c]
call fcn.180106df0
movzx esi, al
mov rdx, qword [0x180233850]
mov rcx, qword [rdx + 0x3ee0]
mov byte [rcx + 0xb8], 1
mov rcx, qword [rdx + 0x3ee0]
vmovss xmm0, dword [rcx + 0x24]
vsubss xmm1, xmm0, dword [rcx + 0x88]
vaddss xmm4, xmm1, xmm6
vmovss xmm2, dword [rcx + 0x20]
vsubss xmm3, xmm2, dword [rcx + 0x84]
vsubss xmm0, xmm7, dword [0x18020a49c]
vaddss xmm1, xmm3, xmm0
vmovss dword [rcx + 0x100], xmm1
vmovss dword [rcx + 0x104], xmm4
mov byte [rcx + 0x141], 1
vmovups xmm0, xmmword [0x18020ab30]
vmovdqa xmmword [rsp + 0x60], xmm0
lea r8, [rsp + 0x60]
lea rcx, [0x180203c18]
call fcn.180106df0
movzx r13d, al
mov rdx, qword [0x180233850]
mov rcx, qword [rdx + 0x3ee0]
mov byte [rcx + 0xb8], 1
mov rcx, qword [rdx + 0x3ee0]
vmovss xmm0, dword [rcx + 0x24]
vsubss xmm1, xmm0, dword [rcx + 0x88]
vaddss xmm3, xmm1, xmm9
vmovss xmm2, dword [rcx + 0x20]
vsubss xmm0, xmm2, dword [rcx + 0x84]
vaddss xmm1, xmm0, xmm8
vmovss dword [rcx + 0x100], xmm1
vmovss dword [rcx + 0x104], xmm3
mov byte [rcx + 0x141], 1
vmovss dword [rbp + 0x10], xmm10
vmovss dword [rbp + 0x14], xmm14
lea rax, [0x1802019ac]
mov qword [rbp + 0xb0], rax
mov qword [rbp + 0xb8], 4
mov rcx, rdi
cmp qword [rdi + 0x18], 0xf
jbe 0x1801211e2
mov rcx, qword [rdi]
mov rax, qword [rdi + 0x10]
mov qword [rbp + 0x90], rcx
mov qword [rbp + 0x98], rax
vmovups xmm0, xmmword [rbp + 0x90]
vmovups xmmword [rbp - 0x28], xmm0
mov qword [rbp - 0x30], rbx
mov qword [rbp + 0xa0], 1
lea rax, [rbp - 0x30]
mov qword [rbp + 0xa8], rax
vmovups xmm0, xmmword [rbp + 0xa0]
vmovdqa xmmword [rsp + 0x60], xmm0
vmovups xmm1, xmmword [rbp + 0xb0]
vmovdqa xmmword [rsp + 0x70], xmm1
lea r8, [rsp + 0x60]
lea rdx, [rsp + 0x70]
lea rcx, [rbp - 0x80]
call fcn.1800a99f0
nop
lea rcx, [rbp - 0x80]
cmp qword [rbp - 0x68], 0xf
cmova rcx, qword [rbp - 0x80]
lea rdx, [rbp + 0x10]
call fcn.180074930
movzx ebx, al
lea rcx, [rbp - 0x80]
call fcn.180091b30
test bl, bl
je 0x18012130e
lea rax, [0x18022d778]
cmp rax, rdi
je 0x18012129b
mov rdx, rdi
cmp qword [rdi + 0x18], 0xf
jbe 0x18012128f
mov rdx, qword [rdi]
mov r8, qword [rdi + 0x10]
mov rcx, rax
call fcn.180091b90
mov eax, dword [r14 + 0x30]
mov dword [0x18022d560], eax
mov eax, dword [r14 + 0x34]
mov dword [0x18022d564], eax
mov eax, dword [r14 + 0x38]
mov dword [0x18022d568], eax
movzx eax, byte [r14 + 0x3c]
mov byte [0x18022d56c], al
movzx eax, byte [r14 + 0x3d]
mov byte [0x18022d56d], al
movzx eax, byte [r14 + 0x3e]
mov byte [0x18022d56e], al
vmovups xmm0, xmmword [r14 + 0x40]
vmovups xmmword [0x18022d570], xmm0
lea rdx, [r14 + 0x50]
lea rax, [0x18022d580]
cmp rax, rdx
je 0x18012130e
mov r8, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0xf
jbe 0x180121306
mov rdx, qword [rdx]
mov rcx, rax
call fcn.180091b90
test sil, sil
je 0x1801213cf
lea rax, str.Confirmation_DeleteCond
mov qword [rbp + 0xe0], rax
mov qword [rbp + 0xe8], 0x1b
mov rcx, rdi
cmp qword [rdi + 0x18], 0xf
jbe 0x18012133d
mov rcx, qword [rdi]
mov rax, qword [rdi + 0x10]
mov qword [rbp + 0xc0], rcx
mov qword [rbp + 0xc8], rax
vmovups xmm0, xmmword [rbp + 0xc0]
vmovups xmmword [rbp - 0x28], xmm0
movabs r14, 0xc000000000000000
mov qword [rbp - 0x30], r14
mov qword [rbp + 0xd0], 1
lea rax, [rbp - 0x30]
mov qword [rbp + 0xd8], rax
vmovups xmm0, xmmword [rbp + 0xd0]
vmovdqa xmmword [rsp + 0x60], xmm0
vmovups xmm1, xmmword [rbp + 0xe0]
vmovdqa xmmword [rsp + 0x70], xmm1
lea r8, [rsp + 0x60]
lea rdx, [rsp + 0x70]
lea rcx, [rbp - 0x80]
call fcn.1800a99f0
nop
lea rcx, [rbp - 0x80]
cmp qword [rbp - 0x68], 0xf
cmova rcx, qword [rbp - 0x80]
call fcn.180051140
nop
lea rcx, [rbp - 0x80]
call fcn.180091b30
jmp 0x1801213d9
movabs r14, 0xc000000000000000
lea rax, str.Confirmation_DeleteCond
mov qword [rbp + 0x110], rax
mov qword [rbp + 0x118], 0x1b
mov rcx, rdi
cmp qword [rdi + 0x18], 0xf
jbe 0x1801213ff
mov rcx, qword [rdi]
mov rax, qword [rdi + 0x10]
mov qword [rbp + 0xf0], rcx
mov qword [rbp + 0xf8], rax
vmovups xmm0, xmmword [rbp + 0xf0]
vmovups xmmword [rbp - 0x28], xmm0
mov qword [rbp - 0x30], r14
mov qword [rbp + 0x100], 1
lea rax, [rbp - 0x30]
mov qword [rbp + 0x108], rax
vmovups xmm0, xmmword [rbp + 0x100]
vmovdqa xmmword [rsp + 0x60], xmm0
vmovups xmm1, xmmword [rbp + 0x110]
vmovdqa xmmword [rsp + 0x70], xmm1
lea r8, [rsp + 0x60]
lea rdx, [rsp + 0x70]
lea rcx, [rbp - 0x80]
call fcn.1800a99f0
nop
lea rcx, [rbp - 0x80]
cmp qword [rbp - 0x68], 0xf
cmova rcx, qword [rbp - 0x80]
mov r8d, 0x10041
call fcn.1800519c0
movzx ebx, al
lea rcx, [rbp - 0x80]
call fcn.180091b30
test bl, bl
je 0x180121747
mov rdx, rdi
lea rcx, [rbp - 0x80]
call fcn.1800917a0
mov r12, rax
mov qword [rsp + 0x70], rax
mov r8, rax
cmp qword [rax + 0x18], 0xf
jbe 0x1801214b6
mov r8, qword [rax]
mov rcx, 0xffffffffffffffff
mov r9d, 0x811c9dc5
inc rcx
cmp byte [r8 + rcx], 0
jne 0x1801214c3
xor edx, edx
test rcx, rcx
je 0x1801214f7
nop dword [rax]
nop dword [rax + rax]
movsx eax, byte [r8 + rdx]
xor eax, r9d
imul r9d, eax, 0x1000193
inc rdx
cmp rdx, rcx
jb 0x1801214e0
lea rax, [0x180230590]
mov qword [rbp + 0x120], rax
mov dword [rbp + 0x128], r9d
vmovups xmm0, xmmword [rbp + 0x120]
vmovdqa xmmword [rsp + 0x60], xmm0
mov rsi, qword [0x1802305d8]
mov rbx, qword [0x1802305d0]
cmp rbx, rsi
je 0x1801215be
mov r14d, dword [rsp + 0x68]
mov r15, qword [rsp + 0x60]
nop dword [rax + rax]
mov r8, rbx
lea rdx, [rbp + 0x1e0]
mov rcx, r15
call fcn.1800e5890
mov r8, qword [rax]
add r8, 0x50
cmp qword [r8 + 0x18], 0xf
jbe 0x180121563
mov r8, qword [r8]
mov rcx, 0xffffffffffffffff
mov r9d, 0x811c9dc5
inc rcx
cmp byte [r8 + rcx], 0
jne 0x180121570
xor edx, edx
test rcx, rcx
je 0x180121598
movsx eax, byte [rdx + r8]
xor eax, r9d
imul r9d, eax, 0x1000193
inc rdx
cmp rdx, rcx
jb 0x180121581
cmp r14d, r9d
je 0x1801215a6
add rbx, 0x20
cmp rbx, rsi
jne 0x180121540
mov rsi, qword [0x1802305d8]
mov r15d, dword [rbp + 0x308]
movabs r14, 0xc000000000000000
mov rcx, r12
call fcn.180091b30
lea rcx, [0x1801b44ae]
cmp rbx, rsi
lea rax, str._and_all_of_its_children
cmovne rcx, rax
lea rax, [0x180203c38]
mov qword [rbp + 0x150], rax
mov qword [rbp + 0x158], 0x24
mov rdx, rdi
cmp qword [rdi + 0x18], 0xf
jbe 0x180121601
mov rdx, qword [rdi]
mov rax, qword [rdi + 0x10]
mov qword [rbp + 0x130], rdx
mov qword [rbp + 0x138], rax
vmovups xmm0, xmmword [rbp + 0x130]
vmovups xmmword [rbp - 0x20], xmm0
mov qword [rbp - 0x30], r14
mov qword [rbp - 0x10], rcx
movabs rax, 0xb000000000000010
mov qword [rbp - 0x28], rax
mov qword [rbp + 0x140], 2
lea rax, [rbp - 0x30]
mov qword [rbp + 0x148], rax
vmovups xmm0, xmmword [rbp + 0x140]
vmovdqa xmmword [rsp + 0x60], xmm0
vmovups xmm1, xmmword [rbp + 0x150]
vmovdqa xmmword [rsp + 0x70], xmm1
lea r8, [rsp + 0x60]
lea rdx, [rsp + 0x70]
lea rcx, [rbp - 0x80]
call fcn.1800a99f0
nop
lea rcx, [rbp - 0x80]
cmp qword [rbp - 0x68], 0xf
cmova rcx, qword [rbp - 0x80]
call fcn.180073fb0
nop
lea rcx, [rbp - 0x80]
call fcn.180091b30
xor r8d, r8d
lea edx, [r8 + 1]
lea rcx, [0x180203c30]
call fcn.180108140
test al, al
je 0x1801216d0
mov rdx, rdi
lea rcx, [rbp - 0x80]
call fcn.1800917a0
mov rdx, rax
lea rcx, [0x180230590]
call fcn.1800e3270
call fcn.180051680
xor r8d, r8d
lea edx, [r8 + 0xa]
lea rcx, [0x180203ca8]
call fcn.180108140
test al, al
je 0x1801216ec
call fcn.180051680
mov rbx, qword [0x180233850]
mov rcx, qword [rbx + 0x3ee0]
cmp qword [rbx + 0x48c8], rcx
jne 0x180121727
cmp byte [rbx + 0x4941], 0
je 0x180121727
cmp dword [rbx + 0x4900], 0
jne 0x180121727
mov eax, dword [rbx + 0x4944]
and eax, 0xfffffff2
or eax, 2
mov dword [rbx + 0x4944], eax
test dword [rcx + 0x14], 0x1000000
je 0x180121737
mov byte [rbx + 0x3e46], 1
call fcn.18004c5b0
mov byte [rbx + 0x3e46], 0
mov r12, qword [rbp + 0x38]
test r13b, r13b
je 0x1801217b8
mov rsi, qword [rdi + 0x10]
mov rdx, rdi
mov rbx, qword [rdi + 0x18]
cmp rbx, 0xf
jbe 0x180121760
mov rdx, qword [rdi]
lea r14, str.default
mov rcx, r14
cmp qword [0x18022d2d0], 0xf
cmova rcx, qword [str.default]
mov r8, qword [0x18022d2c8]
cmp r8, rsi
jne 0x18012179c
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x18012179c
lea r8d, [rax + 7]
lea rdx, [0x1801f6cf8]
jmp 0x1801217b0
cmp r14, rdi
je 0x1801217b8
mov rdx, rdi
cmp rbx, 0xf
jbe 0x1801217ad
mov rdx, qword [rdi]
mov r8, rsi
mov rcx, r14
call fcn.180091b90
mov rax, qword [rbp + 0x2f0]
mov rbx, qword [rax]
mov rdx, rdi
lea rcx, [rbp - 0x80]
call fcn.1800917a0
mov rsi, rax
mov qword [rsp + 0x60], rax
mov dword [rbp - 0x38], r15d
mov ecx, dword [rbp + 0x300]
inc ecx
mov dword [rsp + 0x70], ecx
mov rcx, qword [rbx + 0x38]
test rcx, rcx
je 0x180121952
mov rdx, qword [rcx]
mov r10, qword [rdx + 0x10]
lea r9, [rbp - 0x38]
lea r8, [rsp + 0x70]
mov rdx, rax
call r10
mov r15d, eax
mov rcx, rsi
call fcn.180091b30
nop
lea rcx, [rbp + 0x18]
call fcn.180091b30
nop
mov rdx, qword [rsp + 0x58]
cmp rdx, 0xf
jbe 0x18012185c
inc rdx
mov rcx, qword [rsp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180121857
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180121944
call fcn.180184c4c
xor r13d, r13d
mov qword [rsp + 0x50], r13
mov qword [rsp + 0x58], 0xf
mov byte [rsp + 0x40], r13b
mov rdx, qword [rbp - 0x48]
cmp rdx, 0xf
jbe 0x1801218ad
inc rdx
mov rcx, qword [rbp - 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1801218a8
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18012194b
call fcn.180184c4c
mov esi, dword [rbp + 0x300]
mov ebx, dword [rbp - 0x40]
add rdi, 0x20
cmp rdi, r12
jne 0x1801203ab
mov rcx, qword [rbp + 0x2f8]
call fcn.180091b30
mov eax, r15d
lea r11, [rsp + 0x3a8]
vmovaps xmm6, xmmword [r11 - 0x18]
vmovaps xmm7, xmmword [r11 - 0x28]
vmovaps xmm8, xmmword [r11 - 0x38]
vmovaps xmm9, xmmword [r11 - 0x48]
vmovaps xmm10, xmmword [r11 - 0x58]
vmovaps xmm11, xmmword [r11 - 0x68]
vmovaps xmm12, xmmword [r11 - 0x78]
vmovaps xmm13, xmmword [r11 - 0x88]
vmovaps xmm14, xmmword [r11 - 0x98]
vmovaps 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]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
nop
call fcn.18006c340
int3