Function at 0x20226dd0
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x288
lea rbp, [rsp + 0x80]
movaps xmmword [rbp + 0x1f0], xmm6
mov qword [rbp + 0x1e8], 0xfffffffffffffffe
mov qword [rbp + 0x1d8], r9
mov qword [rbp + 0x1c8], r8
mov qword [rbp + 0x1e0], rdx
mov rax, qword [rbp + 0x288]
mov qword [rbp + 0x180], rax
mov rax, qword [rbp + 0x280]
mov qword [rbp + 0x1b8], rax
mov dword [rbp + 0x1a8], ecx
mov r14d, ecx
and r14d, 0x1f
cmp r14d, 7
jbe 0x20226ee7
cmp r14d, 0xc
jae 0x2022704a
cmp r14d, 8
jne 0x202271c7
mov rax, qword [rbp + 0x270]
test rax, rax
je 0x202278d9
nop
cmp qword [rax], 0
mov r13d, 4
jne 0x20229826
mov ecx, 0x30
call fcn.20077cb0
mov qword [rbp + 0x1d8], rax
mov rax, qword [rbp + 0x1e0]
mov r8, qword [rax + 8]
test r8, r8
je 0x202282b9
nop
mov rax, qword [r8 + 0x28]
add r8, 0x30
test rax, rax
cmovne r8, rax
test byte [rbp + 0x1a8], 0x20
je 0x202282c0
lea rax, [rbp + 0xf8]
mov qword [rbp + 0x180], rax
lea rdi, [rbp + 0x168]
lea r14, [rbp + 0xc8]
xor r15d, r15d
mov rsi, qword [rbp + 0x1e0]
jmp 0x2022878f
cmp r14d, 3
jbe 0x2022712e
cmp r14d, 6
jae 0x20227265
cmp r14d, 4
jne 0x202273c3
nop
mov rcx, qword [rbp + 0x1d8]
mov r15, qword [rcx + 0x10]
movabs rbx, 0x7fffffffffffffff
mov rax, r15
xor rax, rbx
mov rsi, qword [rbp + 0x270]
cmp rax, rsi
jb 0x20228ff5
nop
mov edx, dword [0x20530588]
mov qword [rbp + 0x1d0], rdx
add rsi, r15
mov r13, qword [rcx + 0x18]
movabs rcx, 0x8000000000000000
js 0x20226f67
mov rdx, r13
shr rdx, 1
mov r8, rdx
xor r8, rbx
cmp r8, r13
jae 0x20227de3
add rcx, 0x27
call fcn.20077cb0
lea rdi, [rax + 0x27]
and rdi, 0xffffffffffffffe0
mov qword [rdi - 8], rax
nop
mov r12, qword [rbp + 0x1d8]
mov qword [r12 + 0x10], rsi
mov qword [r12 + 0x18], rbx
cmp r13, 0x10
jb 0x20227be0
nop
mov rbx, qword [r12]
mov rcx, rdi
mov rdx, rbx
mov r14, qword [rbp + 0x280]
mov r8, r14
mov r9d, 0x205808c6
call fcn.2022a4b0
lea r12, [rdi + r14]
mov rcx, r12
mov rdx, qword [rbp + 0x1e0]
mov rsi, qword [rbp + 0x1c8]
mov r8, rsi
call fcn.203f1830
sub r15, r14
inc r15
add r14, rbx
add r12, rsi
mov rcx, r12
mov rdx, r14
mov r8, r15
mov r9d, 0x205808c6
call fcn.2022a4b0
lea rcx, [r13 + 1]
cmp rcx, 0x1000
jb 0x20227022
nop
mov rax, qword [rbx - 8]
add rbx, 0xfffffffffffffff8
sub rbx, rax
cmp rbx, 0x20
jae 0x20229067
add r13, 0x28
mov rcx, r13
mov rbx, rax
mov r8d, 0xf60e82d4
xor r8, qword [rbp + 0x1d0]
mov rdx, rbx
mov r9d, 0x1dbddbd9
call fcn.2022a4b0
nop
mov r12, qword [rbp + 0x1d8]
jmp 0x20227c38
lea eax, [r14 - 0xc]
lea rcx, [0x2041f21c]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
nop
mov rcx, qword [rbp + 0x270]
mov rsi, qword [rcx]
mov r9, qword [rcx + 8]
sub r9, rsi
sar r9, 3
movabs rax, 0xcccccccccccccccd
imul r9, rax
inc r9
mov rcx, qword [rcx + 0x10]
sub rcx, rsi
sar rcx, 3
imul rcx, rax
mov r10, rcx
shr r10, 1
movabs rax, 0x666666666666666
mov rdx, rax
sub rdx, r10
add r10, rcx
cmp r10, r9
mov r8, r9
mov qword [rbp + 0x1c8], r9
cmovbe r10, r9
cmp rcx, rdx
mov rcx, r10
mov qword [rbp + 0x1d0], r10
cmova r10, rax
cmp r10, rax
nop
mov qword [rbp + 0x1a0], r10
ja 0x20228fff
mov r14d, dword [0x20530588]
lea rcx, [r10*8]
lea rcx, [rcx + rcx*4]
cmp r10, 0x67
jb 0x20227ae9
cmp r10, rax
je 0x20229053
nop
test byte [0x20572a5c], 1
jne 0x20229053
add rcx, 0x27
call fcn.20077cb0
lea rcx, [rax + 0x27]
and rcx, 0xffffffffffffffe0
mov qword [rcx - 8], rax
jmp 0x20228357
cmp r14d, 2
jae 0x202272ae
test r14d, r14d
je 0x202278e4
nop
mov rbx, qword [rax + 0x10]
movabs r15, 0x7fffffffffffffff
mov rdi, rbx
xor rdi, r15
mov rcx, qword [rbp + 0x270]
cmp rdi, rcx
jae 0x2022797d
lea rax, [rbp - 0x40]
mov qword [rbp + 0x1d8], rax
lea rsi, [rbp - 0x40]
lea r14, [rbp + 0xf8]
lea r15, [rbp + 0x168]
lea r12, [rbp + 0xf8]
test byte [rbp + 0x1a8], 0x40
je 0x20229018
lea rcx, [rbx + 0x28]
call fcn.20077cb0
lea rcx, [rax + 0x27]
and rcx, 0xffffffffffffffe0
mov qword [rcx - 8], rax
nop
mov qword [r14], rcx
lea r8, [rdi + 1]
mov rdx, r12
mov r9d, 0x205808c6
call fcn.2022a4b0
jmp 0x20227d0f
cmp r14d, 9
jbe 0x202274f3
cmp r14d, 0xb
jne 0x202279f5
mov edx, 0xebdbc292
xor edx, dword [0x2053057c]
mov rsi, qword [rbp + 0x278]
mov rcx, rsi
call fcn.20224b40
mov qword [rsi + 8], 0
mov byte [rsi + 0x10], 0
mov qword [rsi + 0x18], 0
mov byte [rsi + 0x20], 0
mov qword [rsi + 0x28], 0
mov word [rsi + 0x30], 0
mov qword [rsi + 0x38], 0
mov word [rsi + 0x40], 0
mov qword [rsi + 0x48], 0
mov byte [rsi + 0x50], 0
mov qword [rsi + 0x58], 0
mov byte [rsi + 0x60], 0
mov rdx, qword [rbp + 0x1c8]
test rdx, rdx
je 0x20229022
mov rcx, rsi
call fcn.20077dd0
mov r13, qword [rbp + 0x278]
jmp 0x20229826
cmp r14d, 7
jne 0x20227675
nop
mov rax, qword [rbp + 0x1d8]
mov rsi, qword [rax + 8]
cmp rsi, qword [rax + 0x10]
je 0x20228dd5
xorps xmm0, xmm0
movups xmmword [rsi + 0x18], xmm0
mov r12, qword [rbp + 0x270]
mov rdi, qword [r12 + 0x18]
cmp qword [r12 + 0x20], 0x10
jb 0x20227cd9
mov r12, qword [r12 + 8]
jmp 0x20227cdd
cmp r14d, 3
mov ebx, dword [0x20530578]
jne 0x202276b4
mov eax, 0xffffffff
mov rcx, qword [rbp + 0x1e0]
test byte [rcx + 0x70], 2
jne 0x20228fed
xor eax, eax
cmp dword [rbp + 0x1c8], 0xffffffff
je 0x20228fed
nop
test byte [0x20572684], 1
jne 0x20228fed
nop
mov rcx, qword [rbp + 0x1e0]
mov rax, qword [rcx + 0x40]
mov rdx, qword [rcx + 0x58]
mov rax, qword [rax]
movsxd rcx, dword [rdx]
test rax, rax
setne r8b
or r8b, byte [0x20572a5c]
test rcx, rcx
jle 0x202287e0
test r8b, 1
je 0x202287e0
dec ecx
mov dword [rdx], ecx
mov r9, qword [rbp + 0x1e0]
mov rcx, qword [r9 + 0x40]
mov rdx, qword [rcx]
lea r8, [rdx + 1]
mov qword [rcx], r8
mov rcx, qword [rbp + 0x1c8]
mov byte [rdx], cl
inc rax
mov qword [r9 + 0x68], rax
mov rax, rcx
jmp 0x20228fed
nop
mov eax, dword [0x20530578]
mov edx, 0xd3ccd60a
xor rdx, rax
mov dword [rsp + 0x28], 0xc3b94c4
call fcn.20226190
mov rsi, rax
lea rcx, [rbp - 0x40]
call fcn.20077e40
mov rax, qword [rbp + 0x280]
mov qword [rax + 0x10], 0
xorps xmm0, xmm0
movups xmmword [rax + 0x20], xmm0
mov qword [rbp + 0xf8], rax
lea rcx, [rbp + 0xc8]
call fcn.20077e40
mov rax, qword [rbp + 0x278]
test al, 1
jne 0x20227a4e
nop
mov rdi, qword [rsi + 0x10]
jmp 0x20227a55
nop
mov r15d, dword [0x2053057c]
mov rcx, qword [rbp + 0x1c8]
mov qword [rbp + 0x168], rcx
mov rax, qword [rcx]
mov eax, dword [rax + 4]
mov qword [rbp + 0x1a0], rax
movsxd rdi, eax
mov rsi, qword [rcx + rdi + 0x48]
test rsi, rsi
je 0x20227404
nop
mov rax, qword [rsi]
mov rax, qword [rax + 8]
mov rcx, rsi
call qword [case.0x200c7fcc.0]
nop
mov qword [rbp + 0x190], rsi
mov rdx, qword [rbp + 0x1c8]
mov rax, qword [rdx]
movsxd rax, dword [rax + 4]
cmp dword [rdx + rax + 0x10], 0
je 0x20227c45
nop
mov byte [rbp + 0x170], 0
jmp 0x2022911f
nop
mov eax, dword [0x2053057c]
mov qword [rbp + 0x1a0], rax
lea rdi, [rbp - 0x40]
mov rcx, rdi
mov edx, 1
call fcn.201103f0
mov rax, qword [rbp + 0x278]
mov edx, eax
mov ecx, 0x41cd0345
mov r8, rdi
call fcn.20226dd0
lea rcx, [rbp - 0x38]
lea r14, [rbp + 0xf8]
mov rdx, r14
call fcn.200a96e0
xorps xmm0, xmm0
movups xmmword [rbp + 0xe0], xmm0
mov rbx, qword [rbp + 0x108]
cmp qword [rbp + 0x110], 0x10
jb 0x2022749c
mov r14, qword [rbp + 0xf8]
lea rdi, [rbp + 0xd0]
cmp rbx, 0x10
jae 0x20227b9d
mov r8d, 0x10
mov rcx, rdi
mov rdx, r14
mov r9d, 0x205808c6
call fcn.2022a4b0
mov qword [rbp + 0xe0], rbx
lea rsi, [rbp + 0xe8]
mov qword [rbp + 0xe8], 0xf
lea rax, [0x20411008]
mov qword [rbp + 0xc8], rax
mov r8, rdi
jmp 0x202280dc
nop
mov rcx, qword [rbp + 0x1c8]
mov rdi, qword [rcx + 0x10]
movabs rsi, 0x7fffffffffffffff
mov rax, rdi
xor rax, rsi
mov r14, qword [rbp + 0x1e0]
add byte [rax], al
cmp rax, r14
jb 0x20228ffa
nop
mov eax, dword [0x20530578]
mov qword [rbp + 0x1a8], rax
add r14, rdi
mov r12, qword [rcx + 0x18]
movabs rcx, 0x8000000000000000
js 0x20227580
mov rax, r12
shr rax, 1
mov rdx, rax
xor rdx, rsi
cmp rdx, r12
jb 0x20227580
mov rcx, r14
or rcx, 0xf
add rax, r12
cmp rcx, rax
mov rsi, rax
cmova rsi, rcx
lea rcx, [rsi + 1]
cmp rcx, 0x1000
jb 0x202287b4
cmp rcx, 0xffffffffffffffd9
jae 0x20229076
add rcx, 0x27
call fcn.20077cb0
lea rbx, [rax + 0x27]
and rbx, 0xffffffffffffffe0
mov qword [rbx - 8], rax
nop
mov r13, qword [rbp + 0x1c8]
mov qword [r13 + 0x10], r14
mov qword [r13 + 0x18], rsi
cmp r12, 0x10
jb 0x20227b28
nop
mov rsi, qword [r13]
mov rcx, rbx
mov rdx, rsi
mov r15, qword [rbp + 0x280]
mov r8, r15
mov r9d, 0x205808c6
call fcn.2022a4b0
lea r14, [rbx + r15]
mov rcx, r14
mov rdx, qword [rbp + 0x1d8]
mov r13, qword [rbp + 0x270]
mov r8, r13
mov r9d, 0x205808c6
call fcn.2022a4b0
mov rcx, qword [rbp + 0x278]
sub rdi, rcx
sub rdi, r15
inc rdi
add r15, rsi
add r15, rcx
add r14, r13
mov rcx, r14
mov rdx, r15
mov r8, rdi
mov r9d, 0x205808c6
call fcn.2022a4b0
lea rcx, [r12 + 1]
cmp rcx, 0x1000
jb 0x2022764d
nop
mov rax, qword [rsi - 8]
add rsi, 0xfffffffffffffff8
sub rsi, rax
cmp rsi, 0x20
jae 0x2022905d
add r12, 0x28
mov rcx, r12
mov rsi, rax
mov r8d, 0x91b7416c
xor r8, qword [rbp + 0x1a8]
mov rdx, rsi
mov r9d, 0xaae32759
call fcn.2022a4b0
nop
mov r13, qword [rbp + 0x1c8]
jmp 0x20227b93
nop
mov rcx, qword [rbp + 0x288]
mov rdi, qword [rcx + 8]
cmp rdi, qword [rcx + 0x10]
je 0x20227cb2
xorps xmm0, xmm0
movups xmmword [rdi + 0x18], xmm0
mov r12, qword [rbp + 0x1e0]
mov rsi, qword [r12 + 0x18]
cmp qword [r12 + 0x20], 0x10
jb 0x20227d34
mov r12, qword [r12 + 8]
jmp 0x20227d38
xor ebx, 0x3720d91c
lea rcx, [rbp + 0xf8]
mov edx, ebx
call fcn.20224b40
mov rax, qword [0x205725e8]
mov qword [rbp - 0x40], rax
cmp qword [0x205725c8], 0
jne 0x20227719
lea rcx, [rbp + 0xc8]
mov edx, ebx
call fcn.20224b40
cmp qword [0x205725c8], 0
jne 0x2022770d
nop
movsxd rax, dword [0x20575e18]
inc rax
mov dword [0x20575e18], eax
mov qword [0x205725c8], rax
lea rcx, [rbp + 0xc8]
call fcn.20077db0
nop
mov rdx, qword [0x205725c8]
mov rax, qword [rbp + 0x288]
mov rax, qword [rax + 8]
mov rcx, rdx
mov qword [rbp + 0x1e0], rdx
cmp qword [rax + 0x18], rdx
jbe 0x20227765
nop
mov rcx, qword [rax + 0x10]
mov rdx, qword [rbp + 0x1e0]
mov r12, qword [rcx + rdx*8]
test r12, r12
jne 0x202277f4
test dword [rbp + 0x1a8], 0x200
jne 0x20228dce
nop
cmp byte [rax + 0x24], 0
je 0x20227794
call fcn.20077dc0
nop
mov rcx, qword [rbp + 0x1e0]
cmp qword [rax + 0x18], rcx
jbe 0x20227794
nop
mov rax, qword [rax + 0x10]
mov rcx, qword [rbp + 0x1e0]
mov r12, qword [rax + rcx*8]
test r12, r12
jne 0x202277f4
nop
mov r12, qword [rbp - 0x40]
test r12, r12
jne 0x202277f4
lea rax, [rbp - 0x40]
mov qword [rsp + 0x20], rax
mov ecx, 0x4c727e88
mov rdx, qword [rbp + 0x288]
call fcn.20226dd0
cmp rax, 0xffffffffffffffff
je 0x2022906c
nop
mov rcx, qword [rbp - 0x40]
nop
mov qword [rbp + 0x1d8], rcx
call fcn.20077da0
nop
mov rcx, qword [rbp + 0x1d8]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x200c7fcc.0]
mov r12, qword [rbp - 0x40]
mov qword [0x205725e8], r12
lea rcx, [rbp + 0xf8]
call fcn.20077db0
mov r13, r12
jmp 0x20229826
nop
mov rcx, qword [rbp + 0x1d8]
mov rsi, qword [rcx]
mov r9, qword [rcx + 8]
sub r9, rsi
sar r9, 3
movabs rax, 0xcccccccccccccccd
imul r9, rax
inc r9
mov rcx, qword [rcx + 0x10]
sub rcx, rsi
sar rcx, 3
imul rcx, rax
mov r10, rcx
shr r10, 1
movabs rax, 0x666666666666666
mov rdx, rax
sub rdx, r10
add r10, rcx
cmp r10, r9
mov r8, r9
mov qword [rbp + 0x120], r9
cmovbe r10, r9
cmp rcx, rdx
mov rcx, r10
mov qword [rbp + 0x198], r10
cmova r10, rax
movabs rcx, 0x666666666666667
cmp r10, rcx
jae 0x20229004
mov ecx, dword [0x2053057c]
mov qword [rbp + 0x1a0], rcx
lea rcx, [r10*8]
lea rcx, [rcx + rcx*4]
cmp r10, 0x67
mov qword [rbp + 0x1c0], r10
jb 0x20227aff
cmp r10, rax
je 0x2022904e
add rcx, 0x27
call fcn.20077cb0
lea rdx, [rax + 0x27]
and rdx, 0xffffffffffffffe0
mov qword [rdx - 8], rax
jmp 0x202288a1
mov r13d, 4
jmp 0x20229826
nop
mov rdx, qword [rbp + 0x270]
mov rbx, qword [rdx + 0x10]
movabs r15, 0x7fffffffffffffff
mov rax, rbx
xor rax, r15
mov rcx, qword [rbp + 0x1d8]
cmp rax, rcx
jb 0x2022901d
nop
mov esi, dword [0x2053057c]
mov rdi, rbx
add rdi, rcx
mov r8, qword [rdx + 0x18]
movabs rcx, 0x8000000000000000
js 0x20227e2b
mov rax, r8
shr rax, 1
mov rdx, rax
xor rdx, r15
mov r13, r8
cmp rdx, r8
jb 0x20227e2e
mov rcx, rdi
or rcx, 0xf
add rax, r13
cmp rcx, rax
mov r15, rax
cmova r15, rcx
lea rcx, [r15 + 1]
cmp rcx, 0x1000
jb 0x20228db8
cmp rcx, 0xffffffffffffffd9
jb 0x20227e2e
call fcn.20067d20
lea r14, [rax + 0x10]
mov edx, dword [0x2053058c]
mov qword [rbp + 0x1d0], rdx
add rcx, rbx
lea rdi, [rax + 0x18]
mov r13, qword [rax + 0x18]
test rcx, rcx
js 0x202281ad
mov rsi, rcx
or rcx, 0xf
mov rax, r13
shr rax, 1
movabs r15, 0x7fffffffffffffff
mov rdx, rax
xor rdx, r15
cmp rdx, r13
jb 0x202281b0
add rax, r13
cmp rcx, rax
mov r15, rax
cmova r15, rcx
lea rcx, [r15 + 1]
cmp rcx, 0x1000
jb 0x20228da2
cmp rcx, 0xffffffffffffffd9
jb 0x202281ba
call fcn.20067d20
nop
cmp qword [rbp + 0x1c8], 0
js 0x20229049
nop
mov eax, dword [0x20530588]
mov qword [rbp + 0x1a0], rax
mov rax, qword [rbp + 0x288]
mov rdx, qword [rax + 0x18]
mov rax, rdx
shr rax, 1
movabs rsi, 0x7fffffffffffffff
mov rcx, rax
xor rcx, rsi
cmp rcx, rdx
jae 0x2022802f
mov rdi, rdx
movabs rcx, 0x8000000000000000
jmp 0x20228066
lea rdi, [0x204118f8]
mov rcx, rdi
call fcn.200786f0
mov rbx, rax
inc rbx
mov rcx, rbx
call fcn.200a9b70
test rax, rax
je 0x20229009
mov r14, rax
test rbx, rbx
je 0x20227a90
mov rcx, r14
mov rdx, rdi
mov r8, rbx
mov r9d, 0x205808c6
call fcn.2022a4b0
nop
mov rbx, qword [rbp + 0x280]
mov qword [rbx + 0x10], r14
mov ecx, 6
call fcn.200a9b70
test rax, rax
je 0x2022900e
mov rdi, rax
add rbx, 0x20
movzx eax, byte [0x205302d6]
cmp al, 0x6d
je 0x20227f57
mov cl, 0xa1
nop word [rax + rax]
mov al, 0x82
lock cmpxchg byte [0x205302d6], cl
je 0x20227f2a
cmp al, 0x6d
jne 0x20227ad0
jmp 0x20227f57
test r10, r10
je 0x20228355
call fcn.20077cb0
mov rcx, rax
jmp 0x20228357
test r10, r10
je 0x2022889f
nop
test byte [0x20572684], 1
mov edx, 0
jne 0x202288a1
call fcn.20077cb0
mov rdx, rax
jmp 0x202288a1
mov rcx, rbx
mov rdx, r13
mov r15, qword [rbp + 0x280]
mov r8, r15
mov r9d, 0x205808c6
call fcn.2022a4b0
lea rsi, [rbx + r15]
mov rcx, rsi
mov rdx, qword [rbp + 0x1d8]
mov r14, qword [rbp + 0x270]
mov r8, r14
mov r9d, 0x205808c6
call fcn.2022a4b0
mov rcx, qword [rbp + 0x278]
sub rdi, rcx
sub rdi, r15
inc rdi
add r15, r13
add r15, rcx
add rsi, r14
mov rcx, rsi
mov rdx, r15
mov r8, rdi
mov r9d, 0x205808c6
call fcn.2022a4b0
nop
mov qword [r13], rbx
jmp 0x20229826
mov rax, rbx
or rax, 0xf
movabs r15, 0x7fffffffffffffff
cmp rax, r15
cmovb r15, rax
cmp rax, 0xffe
ja 0x20228080
nop
test byte [0x20572684], 1
jne 0x20228080
lea rcx, [r15 + 1]
call fcn.20077cb0
mov rcx, rax
jmp 0x20228098
mov rcx, rdi
mov rdx, r12
mov r14, qword [rbp + 0x280]
mov r8, r14
mov r9d, 0x205808c6
call fcn.2022a4b0
lea rbx, [rdi + r14]
mov rcx, rbx
mov rdx, qword [rbp + 0x1e0]
mov rsi, qword [rbp + 0x1c8]
mov r8, rsi
call fcn.203f1830
sub r15, r14
inc r15
add r14, r12
add rbx, rsi
mov rcx, rbx
mov rdx, r14
mov r8, r15
mov r9d, 0x205808c6
call fcn.2022a4b0
nop
mov qword [r12], rdi
mov r13, r12
jmp 0x20229826
nop
mov qword [rbp + 0x198], rax
mov rcx, qword [rdx + rax + 0x50]
xor esi, esi
test rcx, rcx
lea rbx, [rbp - 0x40]
lea rax, [rbp + 0x168]
mov qword [rbp + 0x118], rax
lea rax, [rbp + 0xf8]
mov qword [rbp + 0x1b0], rax
lea r13, [rbp + 0xc8]
je 0x2022832d
cmp rcx, rdx
je 0x2022832d
call fcn.200a63d0
nop
mov rcx, qword [rbp + 0x1c8]
mov rax, qword [rcx]
movsxd rax, dword [rax + 4]
cmp dword [rcx + rax + 0x10], 0
sete byte [rbp + 0x170]
jmp 0x2022911f
nop
mov rax, qword [rbp + 0x1e0]
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x20], rcx
mov ecx, 0x88a215ec
mov r9, rdi
call fcn.20226dd0
xor r13d, r13d
jmp 0x20229826
add r12, 8
add qword [rbp + 0x1d8], 8
lea r14, [rsi + 8]
lea r15, [rsi + 0x18]
cmp rdi, 0xf
ja 0x20227d70
mov r8d, 0x10
mov rcx, r14
mov rdx, r12
mov r9d, 0x205808c6
call fcn.2022a4b0
mov ebx, 0xf
nop
mov qword [r15], rdi
mov qword [rsi + 0x20], rbx
lea rax, [0x20411008]
mov qword [rsi], rax
mov rax, qword [rbp + 0x1d8]
add qword [rax], 0x28
xor r13d, r13d
jmp 0x20229826
add r12, 8
add qword [rbp + 0x180], 8
lea rbx, [rdi + 8]
lea r14, [rdi + 0x18]
cmp rsi, 0xf
ja 0x20227da5
mov r8d, 0x10
mov rcx, rbx
mov rdx, r12
mov r9d, 0x205808c6
call fcn.2022a4b0
mov r15d, 0xf
jmp 0x2022878f
mov rax, rdi
or rax, 0xf
movabs rbx, 0x7fffffffffffffff
cmp rax, rbx
cmovb rbx, rax
cmp rax, 0xffe
ja 0x2022718a
lea rcx, [rbx + 1]
call fcn.20077cb0
mov rcx, rax
jmp 0x202271ac
mov rax, rsi
or rax, 0xf
movabs r15, 0x7fffffffffffffff
cmp rax, r15
cmovb r15, rax
cmp rax, 0xfff
jb 0x20228763
lea rcx, [r15 + 0x28]
call fcn.20077cb0
lea rcx, [rax + 0x27]
and rcx, 0xffffffffffffffe0
mov qword [rcx - 8], rax
jmp 0x2022876f
mov rcx, rsi
or rcx, 0xf
add rdx, r13
cmp rcx, rdx
mov rbx, rdx
cmova rbx, rcx
lea rcx, [rbx + 1]
cmp rcx, 0xfff
jbe 0x202287ca
test byte [rbp + 0x1a8], 0x20
jne 0x20228e4e
lea r14, [rbp + 0xa8]
lea rdi, [rbp + 0xb8]
mov rsi, rax
jmp 0x202279a9
mov r13, r8
add rcx, 0x27
call fcn.20077cb0
lea r14, [rax + 0x27]
and r14, 0xffffffffffffffe0
mov qword [r14 - 8], rax
nop
mov r12, qword [rbp + 0x270]
mov qword [r12 + 0x10], rdi
mov qword [r12 + 0x18], r15
cmp r13, 0x10
jb 0x20227eeb
nop
mov r15, qword [r12]
mov rcx, r14
mov rdx, r15
mov r8, rbx
mov r9d, 0x205808c6
call fcn.2022a4b0
add rbx, r14
mov rcx, rbx
mov rdx, qword [rbp + 0x278]
mov rdi, qword [rbp + 0x1c8]
mov r8, rdi
mov r9d, 0x205808c6
call fcn.2022a4b0
mov byte [rdi + rbx], 0
mov rax, r13
mov qword [rbp + 0x198], r13
lea rcx, [r13 + 1]
cmp rcx, 0x1000
jb 0x2022873e
lea rcx, [r15 - 8]
mov rax, r15
mov qword [rbp + 0x120], r15
mov rax, qword [r15 - 8]
sub rcx, rax
cmp rcx, 0x20
jae 0x20228e0b
mov rcx, qword [rbp + 0x198]
add rcx, 0x28
mov rdx, rax
jmp 0x20228741
mov rcx, r14
mov rdx, r12
mov r8, rbx
mov r9d, 0x205808c6
call fcn.2022a4b0
add rbx, r14
mov rcx, rbx
mov rdx, qword [rbp + 0x278]
mov rsi, qword [rbp + 0x1c8]
mov r8, rsi
mov r9d, 0x205808c6
call fcn.2022a4b0
mov byte [rsi + rbx], 0
jmp 0x20228756
nop
movaps xmm0, xmmword [0x205302d0]
xorps xmm0, xmmword [0x2041efd0]
movss dword [0x205302d0], xmm0
xor byte [0x205302d4], 0xf5
xor byte [0x205302d5], 0x8d
mov al, 0x6d
xchg byte [0x205302d6], al
lea rdx, [0x205302d0]
mov r8d, 6
mov rcx, rdi
mov r9d, 0x205808c6
call fcn.2022a4b0
mov qword [rbx], rdi
mov ecx, 5
call fcn.200a9b70
test rax, rax
je 0x20229013
mov rdi, rax
movzx eax, byte [0x205302e5]
cmp al, 0xcc
je 0x20227fd8
mov cl, 0x3c
nop dword [rax + rax]
mov al, 0x7e
lock cmpxchg byte [0x205302e5], cl
je 0x20227fb2
cmp al, 0xcc
jne 0x20227fa0
jmp 0x20227fd8
nop
movaps xmm0, xmmword [0x205302e0]
xorps xmm0, xmmword [0x2041efe0]
movss dword [0x205302e0], xmm0
xor byte [0x205302e4], 0xbc
mov al, 0xcc
xchg byte [0x205302e5], al
lea rdx, [0x205302e0]
mov r8d, 5
mov rcx, rdi
mov r9d, 0x205808c6
call fcn.2022a4b0
mov rax, qword [rbp + 0x278]
test al, 1
mov rcx, qword [rbp + 0x280]
mov qword [rcx + 0x28], rdi
jne 0x2022801c
nop
mov rax, qword [rsi]
movzx eax, byte [rax]
mov byte [rcx + 0x18], al
mov rax, qword [rsi + 8]
movzx eax, byte [rax]
jmp 0x20228023
nop
mov byte [rcx + 0x18], 0x2e
mov al, 0x2c
nop
mov byte [rcx + 0x19], al
xor r13d, r13d
jmp 0x20229826
nop
mov rcx, qword [rbp + 0x1c8]
or rcx, 0xf
mov rdi, rdx
add rax, rdx
cmp rcx, rax
mov rsi, rax
cmova rsi, rcx
lea rcx, [rsi + 1]
cmp rsi, 0xfff
jb 0x2022881e
cmp rsi, 0xffffffffffffffd8
jae 0x20229115
add rcx, 0x27
call fcn.20077cb0
lea rbx, [rax + 0x27]
and rbx, 0xffffffffffffffe0
mov qword [rbx - 8], rax
jmp 0x20228826
lea rcx, [r15 + 0x28]
call fcn.20077cb0
mov rcx, rax
add rcx, 0x27
and rcx, 0xffffffffffffffe0
mov qword [rcx - 8], rax
nop
mov qword [rbp + 0xd0], rcx
lea r8, [rbx + 1]
mov rdx, r14
mov r9d, 0x205808c6
call fcn.2022a4b0
mov qword [rbp + 0xe0], rbx
lea rsi, [rbp + 0xe8]
mov qword [rbp + 0xe8], r15
lea rax, [0x20411008]
mov qword [rbp + 0xc8], rax
mov r8, qword [rbp + 0xd0]
nop
mov r9, qword [rbp + 0x1e0]
lea r14, [r9 + 8]
mov rdx, qword [r9 + 0x18]
mov rax, qword [r9 + 0x20]
mov rcx, rax
sub rcx, rdx
cmp rcx, rbx
jae 0x20228121
nop
mov qword [rsp + 0x28], r8
mov qword [rsp + 0x20], r14
mov qword [rsp + 0x30], 0
mov ecx, 0xcec8d940
mov r8, rbx
mov r9, rbx
call fcn.20226dd0
jmp 0x20228150
lea r15, [rdx + rbx]
mov qword [r9 + 0x18], r15
cmp rax, 0x10
jb 0x2022813a
mov rax, qword [rbp + 0x1e0]
mov r14, qword [rax + 8]
add rdx, r14
mov rcx, rbx
mov r9d, 0x6e0b924c
call fcn.2022a4b0
mov byte [r14 + r15], 0
lea r14, [rbp + 0xe0]
lea rbx, [rbp + 0x110]
mov rax, qword [rbp + 0xe8]
cmp rax, 0x10
jb 0x20228d0d
nop
mov rdx, qword [rbp + 0xd0]
lea rcx, [rax + 1]
cmp rcx, 0x1000
jb 0x20228cf3
nop
mov r8, qword [rdx - 8]
add rdx, 0xfffffffffffffff8
sub rdx, r8
cmp rdx, 0x20
jae 0x20229062
add rax, 0x28
mov rcx, rax
mov rdx, r8
jmp 0x20228cf3
mov rsi, rcx
movabs rcx, 0x8000000000000000
add rcx, 0x27
call fcn.20077cb0
lea r12, [rax + 0x27]
and r12, 0xffffffffffffffe0
mov qword [r12 - 8], rax
nop
mov qword [r14], rsi
mov qword [rdi], r15
cmp r13, 0x10
jb 0x20228274
nop
mov rax, qword [rbp + 0x280]
mov rdi, qword [rax]
mov rcx, r12
mov rdx, rdi
mov r8, rbx
mov r9d, 0x205808c6
call fcn.2022a4b0
add rbx, r12
mov rcx, rbx
mov rdx, qword [rbp + 0x278]
mov rsi, qword [rbp + 0x1e0]
mov r8, rsi
call fcn.203f1830
mov byte [rsi + rbx], 0
lea rcx, [r13 + 1]
cmp rcx, 0x1000
jb 0x2022824d
nop
mov rax, qword [rdi - 8]
add rdi, 0xfffffffffffffff8
sub rdi, rax
cmp rdi, 0x20
jae 0x20229071
add r13, 0x28
mov rcx, r13
mov rdi, rax
nop
mov r8, qword [rbp + 0x1d0]
xor r8d, 0x1cbf2f
mov rdx, rdi
mov r9d, 0x3e06b919
call fcn.2022a4b0
nop
mov r13, qword [rbp + 0x280]
jmp 0x202282af
mov rcx, r12
mov r13, qword [rbp + 0x280]
mov rdx, r13
mov r8, rbx
mov r9d, 0x205808c6
call fcn.2022a4b0
add rbx, r12
mov rcx, rbx
mov rdx, qword [rbp + 0x278]
mov rsi, qword [rbp + 0x1e0]
mov r8, rsi
call fcn.203f1830
mov byte [rsi + rbx], 0
nop
mov qword [r13], r12
jmp 0x20229826
lea r8, [0x204118f8]
lea rax, [rbp - 0x40]
mov qword [rsp + 0x28], rax
mov ecx, 0x9236dc0b
call fcn.20226dd0
nop
mov rsi, qword [rbp + 0x1d8]
mov dword [rsi + 8], 0
lea rax, [0x20413588]
mov qword [rsi], rax
nop
mov qword [rsp + 0x30], rsi
mov qword [rsp + 0x28], 1
lea rdx, [rbp - 0x40]
mov ecx, 0x4455d56e
call fcn.20226dd0
nop
mov rax, qword [rbp + 0x270]
mov qword [rax], rsi
lea rcx, [rbp - 0x40]
mov edx, 0x5e5331e0
call fcn.20224bc0
mov r13d, 4
jmp 0x20229826
mov qword [rbp + 0x1c0], rbx
mov qword [rbp + 0x188], rbx
mov qword [rbp + 0x1d0], rbx
mov qword [rbp + 0x120], rdi
mov qword [rbp + 0x178], rbx
jmp 0x202296fc
xor ecx, ecx
nop
mov rax, qword [rbp + 0x1d8]
sub rax, rsi
xorps xmm0, xmm0
mov r15, rax
mov qword [rbp + 0x1c0], rcx
movups xmmword [rcx + rax + 0x18], xmm0
mov r12, qword [rbp + 0x288]
mov rsi, qword [r12 + 0x18]
cmp qword [r12 + 0x20], 0x10
jb 0x2022838f
mov r12, qword [r12 + 8]
jmp 0x20228393
add r12, 8
mov rax, r15
mov rcx, qword [rbp + 0x1c0]
lea rdx, [rcx + r15]
add rdx, 0x28
mov qword [rbp + 0x190], rdx
lea rbx, [rcx + r15]
add rbx, 8
cmp rsi, 0xf
ja 0x202283db
mov r8d, 0x10
mov rcx, rbx
mov rdx, r12
mov r9d, 0x205808c6
call fcn.2022a4b0
mov edi, 0xf
jmp 0x20228499
mov rax, rsi
or rax, 0xf
movabs rdi, 0x7fffffffffffffff
cmp rax, rdi
cmovb rdi, rax
cmp rax, 0xfff
jb 0x20228446
lea rcx, [rdi + 0x28]
mov rdx, qword [rbp + 0x190]
mov qword [rbp + 0x160], rdx
mov rax, qword [rbp + 0x1c0]
mov qword [rbp + 0x158], rax
mov rax, qword [rbp + 0x1d0]
mov qword [rbp + 0x150], rax
mov qword [rbp + 0x148], rdx
call fcn.20077cb0
mov rcx, rax
add rcx, 0x27
and rcx, 0xffffffffffffffe0
mov qword [rcx - 8], rax
jmp 0x20228483
lea rcx, [rdi + 1]
mov rdx, qword [rbp + 0x190]
mov qword [rbp + 0x160], rdx
mov rax, qword [rbp + 0x1c0]
mov qword [rbp + 0x158], rax
mov rax, qword [rbp + 0x1d0]
mov qword [rbp + 0x150], rax
mov qword [rbp + 0x148], rdx
call fcn.20077cb0
mov rcx, rax
nop
mov qword [rbx], rcx
lea r8, [rsi + 1]
mov rdx, r12
mov r9d, 0x205808c6
call fcn.2022a4b0
nop
mov rax, qword [rbp + 0x270]
lea rcx, [rax + 8]
mov qword [rbp + 0x180], rcx
lea rcx, [rax + 0x10]
mov qword [rbp + 0x198], rcx
add r15, qword [rbp + 0x1c0]
mov qword [r15 + 0x18], rsi
mov qword [r15 + 0x20], rdi
lea rcx, [0x20411008]
mov qword [rbp + 0x1b8], r15
mov qword [r15], rcx
mov rbx, qword [rax]
mov rcx, qword [rax + 8]
mov rax, qword [rbp + 0x1d8]
cmp rcx, rax
je 0x20228605
cmp rbx, rax
je 0x20229303
xor eax, eax
xorps xmm6, xmm6
mov rdi, qword [rbp + 0x1c0]
jmp 0x2022855f
mov r8d, 0x10
mov rcx, r12
mov rdx, r15
mov r9d, 0x205808c6
call fcn.2022a4b0
mov esi, 0xf
nop
mov qword [rdi + 0x18], r13
mov qword [rdi + 0x20], rsi
lea rax, [0x20411008]
mov qword [rdi], rax
add rdi, 0x28
add rbx, 0x28
mov rax, qword [rbp + 0x1d0]
add rax, 0xffffffffffffffd8
cmp rbx, qword [rbp + 0x1d8]
je 0x20228718
nop
movups xmmword [rdi + 0x18], xmm6
cmp qword [rbx + 0x20], 0x10
mov qword [rbp + 0x1d0], rax
jb 0x20228580
mov r15, qword [rbx + 8]
jmp 0x20228584
lea r15, [rbx + 8]
lea r12, [rdi + 8]
mov r13, qword [rbx + 0x18]
cmp r13, 0xf
jbe 0x20228510
mov rax, r13
or rax, 0xf
movabs rsi, 0x7fffffffffffffff
cmp rax, rsi
cmovb rsi, rax
cmp rax, 0xfff
jb 0x202285d0
lea rcx, [rsi + 0x28]
call fcn.20077cb0
mov rcx, rax
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x202285e6
test byte [rbp + 0x1a8], 0x40
je 0x20226e7a
lea rcx, [rsi + 1]
call fcn.20077cb0
nop
mov qword [r12], rax
lea r8, [r13 + 1]
mov rcx, rax
mov rdx, r15
mov r9d, 0x205808c6
call fcn.2022a4b0
jmp 0x2022852c
cmp rbx, rcx
je 0x20229463
xor eax, eax
xorps xmm6, xmm6
mov r12, qword [rbp + 0x1c0]
mov qword [rbp + 0x1e0], rcx
jmp 0x20228683
mov r8d, 0x10
mov rcx, rdi
mov rdx, rsi
mov r9d, 0x205808c6
call fcn.2022a4b0
mov r15d, 0xf
nop
mov qword [r12 + 0x18], r13
mov qword [r12 + 0x20], r15
lea rax, [0x20411008]
mov qword [r12], rax
add r12, 0x28
add rbx, 0x28
mov rax, qword [rbp + 0x1d8]
add rax, 0xffffffffffffffd8
cmp rbx, qword [rbp + 0x1e0]
je 0x2022872b
nop
movups xmmword [r12 + 0x18], xmm6
cmp qword [rbx + 0x20], 0x10
mov qword [rbp + 0x1d8], rax
jb 0x202286a0
mov rsi, qword [rbx + 8]
jmp 0x202286a4
lea rsi, [rbx + 8]
lea rdi, [r12 + 8]
mov r13, qword [rbx + 0x18]
cmp r13, 0xf
jbe 0x20228630
mov rax, r13
or rax, 0xf
movabs r15, 0x7fffffffffffffff
cmp rax, r15
cmovb r15, rax
cmp rax, 0xfff
jb 0x202286f1
lea rcx, [r15 + 0x28]
call fcn.20077cb0
mov rcx, rax
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x202286fa
lea rcx, [r15 + 1]
call fcn.20077cb0
nop
mov qword [rdi], rax
lea r8, [r13 + 1]
mov rcx, rax
mov rdx, rsi
mov r9d, 0x205808c6
call fcn.2022a4b0
jmp 0x2022864d
mov rax, qword [rbp + 0x1a0]
mov qword [rbp + 0x1d0], rax
jmp 0x20229303
mov rax, qword [rbp + 0x1a0]
mov qword [rbp + 0x1d0], rax
jmp 0x20229458
mov rdx, r15
xor rsi, 0x4d4c5ae2
mov r8, rsi
mov r9d, 0xffc443d9
call fcn.2022a4b0
nop
mov qword [r12], r14
mov r13, r12
jmp 0x20229826
lea rcx, [r15 + 1]
call fcn.20077cb0
mov rcx, rax
nop
mov qword [rbx], rcx
lea r8, [rsi + 1]
mov dword [0x20530584], 0x7248b958
mov rdx, r12
mov r9d, 0x205808c6
call fcn.2022a4b0
nop
mov qword [r14], rsi
mov qword [rdi + 0x20], r15
lea rax, [0x20411008]
mov qword [rdi], rax
mov rax, qword [rbp + 0x180]
add qword [rax], 0x28
xor r13d, r13d
jmp 0x20229826
test rcx, rcx
je 0x20228e79
call fcn.20077cb0
mov rbx, rax
jmp 0x20227595
test rcx, rcx
je 0x20228e87
call fcn.20077cb0
mov rdi, rax
jmp 0x20226f7c
add rax, rcx
mov rcx, qword [rbp + 0x1e0]
mov rcx, qword [rcx + 0x18]
mov r14, qword [rcx]
sub rax, r14
xor edi, edi
test r8b, 1
cmovne rdi, rax
mov r15d, 0x20
cmp rdi, 0x20
jae 0x20228e5d
mov rcx, r15
call fcn.20077cb0
mov r12, rax
jmp 0x20228eee
call fcn.20077cb0
mov rbx, rax
nop
mov r14, qword [rbp + 0x1c8]
mov r15, qword [rbp + 0x288]
mov qword [r15 + 0x10], r14
mov qword [r15 + 0x18], rsi
mov rcx, rbx
mov rdx, qword [rbp + 0x280]
mov r8, r14
call fcn.203f1830
mov byte [rbx + r14], 0
cmp rdi, 0x10
jb 0x2022968c
mov rax, rdi
mov qword [rbp + 0x1e0], rdi
lea rcx, [rdi + 1]
mov rdx, qword [r15]
cmp rcx, 0x1000
jb 0x20228d96
nop
mov rax, qword [rdx - 8]
add rdx, 0xfffffffffffffff8
sub rdx, rax
cmp rdx, 0x20
nop
mov qword [rbp + 0x1b8], rax
jb 0x20229653
call fcn.20077cd0
xor edx, edx
nop
mov rax, qword [rbp + 0x1e0]
sub rax, rsi
xorps xmm0, xmm0
mov qword [rbp + 0x1b0], rdx
mov r12, rax
movups xmmword [rdx + rax + 0x18], xmm0
mov rax, qword [rbp + 0x270]
mov rsi, qword [rax + 0x18]
cmp qword [rax + 0x20], 0x10
jb 0x202288d6
mov rbx, qword [rax + 8]
jmp 0x202288da
lea rbx, [rax + 8]
mov rax, qword [rbp + 0x1b0]
mov rcx, r12
lea rdx, [rax + r12]
add rdx, 0x28
mov qword [rbp + 0x188], rdx
lea r15, [rax + r12]
add r15, 8
cmp rsi, 0xf
ja 0x20228922
mov r8d, 0x10
mov rcx, r15
mov rdx, rbx
mov r9d, 0x205808c6
call fcn.2022a4b0
mov edi, 0xf
jmp 0x202289e0
mov rax, rsi
or rax, 0xf
movabs rdi, 0x7fffffffffffffff
cmp rax, rdi
cmovb rdi, rax
cmp rax, 0xfff
jb 0x2022898d
lea rcx, [rdi + 0x28]
mov rdx, qword [rbp + 0x188]
mov qword [rbp + 0x140], rdx
mov rax, qword [rbp + 0x1b0]
mov qword [rbp + 0x138], rax
mov rax, qword [rbp + 0x198]
mov qword [rbp + 0x130], rax
mov qword [rbp + 0x128], rdx
call fcn.20077cb0
mov rcx, rax
add rcx, 0x27
and rcx, 0xffffffffffffffe0
mov qword [rcx - 8], rax
jmp 0x202289ca
lea rcx, [rdi + 1]
mov rdx, qword [rbp + 0x188]
mov qword [rbp + 0x140], rdx
mov rax, qword [rbp + 0x1b0]
mov qword [rbp + 0x138], rax
mov rax, qword [rbp + 0x198]
mov qword [rbp + 0x130], rax
mov qword [rbp + 0x128], rdx
call fcn.20077cb0
mov rcx, rax
nop
mov qword [r15], rcx
lea r8, [rsi + 1]
mov rdx, rbx
mov r9d, 0x205808c6
call fcn.2022a4b0
nop
mov rax, qword [rbp + 0x1d8]
lea rcx, [rax + 8]
mov qword [rbp + 0x178], rcx
lea rcx, [rax + 0x10]
mov qword [rbp + 0x118], rcx
add r12, qword [rbp + 0x1b0]
mov qword [r12 + 0x18], rsi
mov qword [r12 + 0x20], rdi
lea r15, [0x20411008]
mov qword [rbp + 0x1d0], r12
mov qword [r12], r15
mov r13, qword [rax]
mov rcx, qword [rax + 8]
mov rax, qword [rbp + 0x1e0]
cmp rcx, rax
je 0x20228ca4
cmp r13, rax
je 0x20228b38
xor eax, eax
xorps xmm6, xmm6
mov rdi, qword [rbp + 0x1b0]
jmp 0x20228a98
mov r8d, 0x10
mov rcx, r14
mov rdx, rbx
mov r9d, 0x205808c6
call fcn.2022a4b0
mov esi, 0xf
nop
mov qword [rdi + 0x18], r12
mov qword [rdi + 0x20], rsi
mov qword [rdi], r15
add rdi, 0x28
add r13, 0x28
mov rax, qword [rbp + 0x1b8]
add rax, 0xffffffffffffffd8
cmp r13, qword [rbp + 0x1e0]
je 0x20228b38
nop
movups xmmword [rdi + 0x18], xmm6
cmp qword [r13 + 0x20], 0x10
mov qword [rbp + 0x1b8], rax
jb 0x20228ac0
mov rbx, qword [r13 + 8]
jmp 0x20228ac4
lea rbx, [r13 + 8]
lea r14, [rdi + 8]
mov r12, qword [r13 + 0x18]
cmp r12, 0xf
jbe 0x20228a50
mov rax, r12
or rax, 0xf
movabs rsi, 0x7fffffffffffffff
cmp rax, rsi
cmovb rsi, rax
cmp rax, 0xfff
jb 0x20228b10
lea rcx, [rsi + 0x28]
call fcn.20077cb0
mov rcx, rax
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x20228b19
lea rcx, [rsi + 1]
call fcn.20077cb0
nop
mov qword [r14], rax
lea r8, [r12 + 1]
mov rcx, rax
mov rdx, rbx
mov r9d, 0x205808c6
call fcn.2022a4b0
jmp 0x20228a6c
nop
mov rax, qword [rbp + 0x178]
mov rsi, qword [rax]
cmp rsi, qword [rbp + 0x1e0]
je 0x20228c68
xor r8d, r8d
xorps xmm6, xmm6
movabs rdi, 0x7fffffffffffffff
mov rcx, qword [rbp + 0x1e0]
mov rdx, qword [rbp + 0x1d0]
jmp 0x20228bc7
mov r8d, 0x10
mov rcx, r14
mov rdx, rbx
mov r9d, 0x205808c6
call fcn.2022a4b0
mov r13d, 0xf
nop
mov rdx, qword [rbp + 0x1d0]
mov r8, qword [rbp + 0x1b8]
mov qword [rdx + r8 + 0x40], r12
mov qword [rdx + r8 + 0x48], r13
mov qword [rdx + r8 + 0x28], r15
mov rcx, qword [rbp + 0x1e0]
lea rax, [rcx + r8]
add rax, 0x28
add r8, 0x28
cmp rax, rsi
je 0x20228c68
nop
movups xmmword [rdx + r8 + 0x40], xmm6
cmp qword [rcx + r8 + 0x20], 0x10
jb 0x20228be0
mov rbx, qword [rcx + r8 + 8]
jmp 0x20228be8
lea rbx, [rcx + r8]
add rbx, 8
mov rax, qword [rbp + 0x1d0]
lea r14, [rax + r8]
add r14, 0x30
mov qword [rbp + 0x1b8], r8
mov r12, qword [rcx + r8 + 0x18]
cmp r12, 0xf
jbe 0x20228b70
mov rax, r12
or rax, 0xf
cmp rax, rdi
mov r13, rdi
cmovb r13, rax
cmp rax, 0xfff
jb 0x20228c40
lea rcx, [r13 + 0x28]
call fcn.20077cb0
mov rcx, rax
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x20228c49
lea rcx, [r13 + 1]
call fcn.20077cb0
nop
mov qword [r14], rax
lea r8, [r12 + 1]
mov rcx, rax
mov rdx, rbx
mov r9d, 0x205808c6
call fcn.2022a4b0
jmp 0x20228b8d
mov rcx, qword [rbp + 0x1c0]
nop
mov rax, qword [rbp + 0x1d8]
mov r13, qword [rax]
nop
mov qword [rbp + 0x198], rcx
test r13, r13
je 0x202297da
nop
mov rax, qword [rbp + 0x178]
mov rsi, qword [rax]
cmp r13, rsi
jne 0x20229766
jmp 0x20229782
mov qword [rbp + 0x190], rcx
test dword [rbp + 0x1a8], 0x100
jne 0x20228cd9
nop
cmp r13, qword [rbp + 0x190]
je 0x20228c82
nop
test byte [0x20572a5c], 1
nop
mov rdx, qword [rbp + 0x1b0]
je 0x202295f4
jmp 0x20228c82
lea rdi, [rbp - 0x40]
lea r14, [rbp - 0x40]
lea rbx, [rbp + 0xc8]
lea rsi, [rbp + 0xb8]
xor ecx, ecx
xor edx, edx
nop
mov r8, qword [rbp + 0x1a0]
xor r8d, 0x4d4c5ae2
mov r9d, 0x6996a059
call fcn.2022a4b0
nop
mov qword [r14], 0
mov qword [rsi], 0xf
mov byte [rdi], 0
mov rax, qword [rbx]
cmp rax, 0x10
jb 0x20228d80
nop
mov rdx, qword [rbp + 0xf8]
lea rcx, [rax + 1]
cmp rcx, 0x1000
jb 0x20228d66
nop
mov r8, qword [rdx - 8]
cmp byte [0x20572a5c], 0
jne 0x20228d5c
add rdx, 0xfffffffffffffff8
sub rdx, r8
cmp rdx, 0x20
jae 0x20229058
add rax, 0x28
mov rcx, rax
mov rdx, r8
nop
mov r8, qword [rbp + 0x1a0]
xor r8d, 0x4d4c5ae2
mov r9d, 0x41aae919
call fcn.2022a4b0
lea rcx, [rbp - 0x40]
call fcn.201109d0
nop
mov r13, qword [rbp + 0x1e0]
jmp 0x20229826
mov qword [rbp + 0x1b8], rdx
jmp 0x2022966b
test rcx, rcx
je 0x20228e95
call fcn.20077cb0
mov r12, rax
jmp 0x202281d0
test rcx, rcx
je 0x20228eb1
call fcn.20077cb0
mov r14, rax
jmp 0x20227e43
lea rsi, [rbp + 0xc8]
nop
mov rax, qword [rbp + 0x270]
mov qword [rsp + 0x20], rax
mov ecx, 0x486846ad
mov rdx, rsi
mov r9, qword [rbp + 0x1d8]
call fcn.20226dd0
test byte [rbp + 0x1a8], 0x20
je 0x20229285
xor r13d, r13d
jmp 0x20229826
xor r13d, r13d
lea rax, [rbp - 0x40]
mov qword [rbp + 0x178], rax
lea rax, [rbp + 0xa8]
mov qword [rbp + 0x118], rax
lea rax, [rbp - 0x40]
mov qword [rbp + 0x1b0], rax
mov qword [rbp + 0x1d0], rax
lea rsi, [rbp + 0xf8]
xor eax, eax
mov qword [rbp + 0x1a0], rax
jmp 0x20229759
cmp rcx, 0xffffffffffffffd9
jb 0x20226f67
call fcn.20067d20
cmp rdi, 0x3fffffff
jae 0x20228ec0
lea r15, [rdi + rdi]
cmp rdi, 0x800
jb 0x2022880e
jmp 0x20228ed8
mov rsi, 0xffffffffffffffff
xor ebx, ebx
jmp 0x20227595
mov rbx, 0xffffffffffffffff
xor edi, edi
jmp 0x20226f7c
mov r15, 0xffffffffffffffff
xor r12d, r12d
cmp byte [rbp + 0x1a8], 0
js 0x202277f4
jmp 0x202281d0
mov r15, 0xffffffffffffffff
xor r14d, r14d
jmp 0x20227e43
mov r15d, 0x7fffffff
mov eax, 0xffffffff
cmp rdi, 0x7fffffff
jae 0x20228fed
lea rcx, [r15 + 0x27]
call fcn.20077cb0
lea r12, [rax + 0x27]
and r12, 0xffffffffffffffe0
mov qword [r12 - 8], rax
mov rcx, r12
mov rdx, r14
mov r8, rdi
mov r9d, 0x205808c6
call fcn.2022a4b0
lea rax, [r12 + rdi]
lea rcx, [r12 + rdi]
inc rcx
mov r8, qword [rbp + 0x1e0]
mov qword [r8 + 0x68], rcx
add r15d, r12d
mov rcx, qword [r8 + 0x20]
mov qword [rcx], r12
mov rcx, qword [r8 + 0x40]
mov qword [rcx], rax
sub r15d, eax
mov rax, qword [r8 + 0x58]
mov dword [rax], r15d
test byte [r8 + 0x70], 4
jne 0x20228f62
nop
mov rax, qword [r8 + 0x68]
mov rcx, qword [r8 + 0x18]
mov rdx, qword [r8 + 0x38]
mov rdx, qword [rdx]
sub rdx, r14
add rdx, r12
mov qword [rcx], r12
mov rcx, qword [r8 + 0x38]
mov qword [rcx], rdx
sub rax, rdx
mov r12, rax
jmp 0x20228f75
nop
mov rax, qword [r8 + 0x18]
mov qword [rax], r12
mov rax, qword [r8 + 0x38]
mov qword [rax], 0
nop
mov rax, qword [r8 + 0x50]
mov dword [rax], r12d
test byte [r8 + 0x70], 1
je 0x20228fc4
cmp rdi, 0x1000
jb 0x20228faa
nop
mov rax, qword [r14 - 8]
add r14, 0xfffffffffffffff8
sub r14, rax
cmp r14, 0x20
jae 0x2022911a
add rdi, 0x27
mov r14, rax
mov r8d, 0x91b7416c
xor r8, rbx
mov rcx, rdi
mov rdx, r14
mov r9d, 0x65cfac99
call fcn.2022a4b0
nop
mov rcx, qword [rbp + 0x1e0]
or byte [rcx + 0x70], 1
mov rax, qword [rcx + 0x58]
dec dword [rax]
mov rax, qword [rcx + 0x40]
mov rcx, qword [rax]
lea rdx, [rcx + 1]
mov qword [rax], rdx
mov rax, qword [rbp + 0x1c8]
mov byte [rcx], al
mov r13d, eax
jmp 0x20229826
call fcn.200688b0
call fcn.200688b0
call fcn.20067d20
call fcn.20067d20
call fcn.20077e80
call fcn.20077e80
call fcn.20077e80
call fcn.200688b0
call fcn.200688b0
nop
movzx eax, byte [0x205302a0]
cmp al, 0x7a
je 0x20229110
mov cl, 0xb0
mov al, 0x65
lock cmpxchg byte [0x205302a0], cl
je 0x2022907b
cmp al, 0x7a
jne 0x20229034
jmp 0x20229110
call fcn.200688b0
call fcn.20067d20
call fcn.20067d20
call fcn.20077cd0
call fcn.20077cd0
call fcn.20077cd0
call fcn.20077cd0
call fcn.20069bc0
call fcn.20077cd0
call fcn.20067d20
lea r10, [0x2041f1d0]
mov ecx, 0xcc60db9e
lea r11, [r10 + rcx]
mov r8d, 0xcc60db9c
xor esi, esi
movabs rdi, 0xe38e38e38e38e38f
lea rbx, [0x20530290]
mov r14d, 0xcc60db9d
mov rax, rcx
mul rdi
mov r9, rdx
shr r9, 3
and r9, 0xfffffffffffffffe
mov rax, r8
mul rdi
shr rdx, 3
and rdx, 0xfffffffffffffffe
lea rax, [rdx + rdx*8]
mov rdx, r10
sub rdx, rax
add rdx, rsi
movzx eax, byte [r14 + rdx]
xor al, 0x79
add byte [rsi + rbx], al
lea rax, [r9 + r9*8]
neg rax
movzx eax, byte [r11 + rax]
xor al, 0x79
add byte [rsi + rbx + 1], al
add rsi, 2
add r11, 2
add rcx, 2
add r8, 2
cmp rsi, 0x10
jne 0x202290aa
mov al, 0x7a
xchg byte [0x205302a0], al
call fcn.20224a50
call fcn.20067d20
call fcn.20077cd0
nop
mov qword [rbp + 0x1b8], r15
cmp byte [rbp + 0x170], 0
je 0x2022920d
nop
mov rcx, qword [rbp + 0x1c8]
mov rax, qword [rcx]
movsxd rax, dword [rax + 4]
mov rax, qword [rcx + rax + 0x40]
mov rcx, qword [rax + 8]
mov qword [rbp - 0x38], rcx
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x200c7fcc.0]
lea rcx, [rbp - 0x40]
call fcn.200a67c0
mov rdi, rax
mov rcx, qword [rbp - 0x38]
test rcx, rcx
je 0x2022919d
nop
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [case.0x200c7fcc.0]
test rax, rax
je 0x2022919d
nop
mov rcx, qword [rax]
mov r8, qword [rcx]
mov rcx, rax
mov edx, 1
mov rax, r8
call qword [case.0x200c7fcc.0]
nop
mov rdx, qword [rbp + 0x1c8]
mov rax, qword [rdx]
movsxd rax, dword [rax + 4]
lea r9, [rdx + rax]
movzx ecx, byte [rdx + rax + 0x58]
mov rax, qword [rdx + rax + 0x48]
mov byte [rbp + 0xb8], 0
mov qword [rbp + 0xc0], rax
mov rax, qword [rdi]
mov rax, qword [rax + 0x48]
mov r10, qword [case.0x200c7fcc.0]
nop
mov rdx, qword [rbp + 0x1e0]
mov dword [rsp + 0x28], edx
mov byte [rsp + 0x20], cl
lea rdx, [rbp + 0xa8]
lea r8, [rbp + 0xb8]
mov rcx, rdi
call r10
nop
movzx eax, byte [rbp + 0xa8]
shl eax, 2
mov dword [rbp + 0x1d0], eax
jmp 0x20229224
mov dword [rbp + 0x1d0], 0
cmp byte [rbp + 0x1a8], 0
js 0x202292c7
nop
mov rdx, qword [rbp + 0x1c8]
mov rax, qword [rdx]
movsxd rax, dword [rax + 4]
mov esi, dword [rdx + rax + 0x10]
cmp qword [rdx + rax + 0x48], 0
sete cl
or cl, byte [0x20572a5c]
movzx ecx, cl
and ecx, 1
shl ecx, 2
and esi, 0x17
or esi, dword [rbp + 0x1d0]
or esi, ecx
mov dword [rdx + rax + 0x10], esi
and esi, dword [rdx + rax + 0x14]
jne 0x2022953f
nop
mov rdx, qword [rbp + 0x1b8]
xor edx, 0xb4f1052a
mov r9d, 0x613b2c5
call fcn.2022a4b0
test al, 1
jne 0x20229292
nop
mov rcx, qword [rbp + 0x168]
call fcn.200a6660
nop
mov rax, qword [rbp + 0x168]
mov rcx, qword [rax]
movsxd rcx, dword [rcx + 4]
mov rcx, qword [rax + rcx + 0x48]
test rcx, rcx
je 0x202292ba
nop
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
nop
call qword [case.0x200c7fcc.0]
nop
mov r13, qword [rbp + 0x1c8]
jmp 0x20229826
lea rax, [rbp + 0xf8]
lea rcx, [rbp - 0x40]
mov qword [rbp + 0x190], rcx
mov qword [rbp + 0x1c0], rax
mov rcx, qword [rbp + 0x1e0]
mov qword [rbp + 0x1d0], rcx
mov qword [rbp + 0x198], rax
mov qword [rbp + 0x1b8], rax
mov qword [rbp + 0x180], rax
nop
mov rax, qword [rbp + 0x180]
mov rbx, qword [rax]
cmp rbx, qword [rbp + 0x1d8]
je 0x20229458
xor r8d, r8d
xorps xmm6, xmm6
movabs r15, 0x7fffffffffffffff
mov rcx, qword [rbp + 0x1d8]
mov rdx, qword [rbp + 0x1b8]
jmp 0x2022939e
mov r8d, 0x10
mov rcx, rdi
mov rdx, rsi
mov r9d, 0x205808c6
call fcn.2022a4b0
mov r12d, 0xf
nop
mov rdx, qword [rbp + 0x1b8]
mov r8, qword [rbp + 0x1e0]
mov qword [rdx + r8 + 0x40], r13
mov qword [rdx + r8 + 0x48], r12
lea rax, [0x20411008]
mov qword [rdx + r8 + 0x28], rax
mov rcx, qword [rbp + 0x1d8]
lea rax, [rcx + r8]
add rax, 0x28
add r8, 0x28
cmp rax, rbx
je 0x20229458
nop
movups xmmword [rdx + r8 + 0x40], xmm6
cmp qword [rcx + r8 + 0x20], 0x10
jb 0x202293c0
mov rsi, qword [rcx + r8 + 8]
jmp 0x202293c8
lea rsi, [rcx + r8]
add rsi, 8
mov rax, qword [rbp + 0x1b8]
lea rdi, [rax + r8]
add rdi, 0x30
mov qword [rbp + 0x1e0], r8
mov r13, qword [rcx + r8 + 0x18]
cmp r13, 0xf
jbe 0x20229340
mov rax, r13
or rax, 0xf
cmp rax, r15
mov r12, r15
cmovb r12, rax
cmp rax, 0xfff
jb 0x20229430
lea rcx, [r12 + 0x28]
call fcn.20077cb0
mov rcx, rax
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x2022943a
lea rcx, [r12 + 1]
call fcn.20077cb0
nop
mov qword [rdi], rax
lea r8, [r13 + 1]
mov rcx, rax
mov rdx, rsi
mov r9d, 0x205808c6
call fcn.2022a4b0
jmp 0x2022935d
nop
mov rax, qword [rbp + 0x270]
mov rbx, qword [rax]
test rbx, rbx
je 0x202294ee
nop
mov rax, qword [rbp + 0x180]
mov rsi, qword [rax]
cmp rbx, rsi
je 0x2022949b
nop dword [rax]
nop
mov rax, qword [rbx]
mov rax, qword [rax]
mov rcx, rbx
xor edx, edx
call qword [case.0x200c7fcc.0]
add rbx, 0x28
cmp rbx, rsi
jne 0x20229480
nop
mov rax, qword [rbp + 0x198]
mov rcx, qword [rax]
mov rax, qword [rbp + 0x270]
mov rdx, qword [rax]
sub rcx, rdx
cmp rcx, 0x1000
jb 0x202294d9
nop
mov rax, qword [rdx - 8]
add rdx, 0xfffffffffffffff8
sub rdx, rax
cmp rdx, 0x20
jae 0x202295ef
add rcx, 0x27
mov rdx, rax
xor r14d, 0xf60e82d4
mov r8, r14
mov r9d, 0x86e6c0d9
call fcn.2022a4b0
nop
mov rax, qword [rbp + 0x270]
mov rcx, qword [rbp + 0x1c0]
mov qword [rax], rcx
mov rax, qword [rbp + 0x1c8]
lea rax, [rax + rax*4]
lea rax, [rcx + rax*8]
mov rdx, qword [rbp + 0x180]
mov qword [rdx], rax
mov rax, qword [rbp + 0x1d0]
lea rax, [rax + rax*4]
lea rax, [rcx + rax*8]
mov rcx, qword [rbp + 0x198]
mov qword [rcx], rax
nop
mov r13, qword [rbp + 0x1b8]
jmp 0x20229826
nop
mov rbx, qword [rbp + 0x1b8]
mov ecx, ebx
xor ecx, 0x94dcff64
call fcn.20224b60
mov ecx, ebx
xor ecx, 0xe9823cab
call fcn.20224b20
test sil, 2
lea rax, [0x20530240]
lea rdi, [0x20530220]
cmove rdi, rax
xor ebx, 0xb7c9f0de
mov ecx, ebx
call fcn.20224b30
test sil, 4
lea rsi, [0x20530200]
cmove rsi, rdi
lea rdi, [rbp + 0xf8]
mov rcx, rdi
mov edx, 1
call fcn.200693e0
lea rbx, [rbp + 0xc8]
mov r8d, 0x10
mov rcx, rbx
mov rdx, rdi
mov r9d, 0x205808c6
call fcn.2022a4b0
lea rcx, [rbp - 0x40]
mov rdx, rbx
mov r8, rsi
call fcn.202246a0
lea rax, [0x204116e8]
mov qword [rbp - 0x40], rax
lea rdx, [0x2046c8b8]
lea rcx, [rbp - 0x40]
call fcn.20077ce0
call fcn.20077cd0
lea r15, [rdx + 8]
lea r12, [r13 + 8]
lea rbx, [rdx + 0x18]
xorps xmm0, xmm0
mov qword [rbp + 0x1c0], rdx
movups xmmword [rdx + 0x18], xmm0
mov rdi, qword [r13 + 0x18]
cmp qword [r13 + 0x20], 0x10
jb 0x2022961d
mov r12, qword [r13 + 8]
cmp rdi, 0xf
ja 0x2022969d
mov r8d, 0x10
mov rcx, r15
mov rdx, r12
mov r9d, 0x205808c6
call fcn.2022a4b0
mov esi, 0xf
cmp byte [rbp + 0x1a8], 0
js 0x20229705
lea rbx, [rbp + 0xf8]
test byte [rbp + 0x1a8], 0x20
jne 0x2022974d
mov rcx, qword [rbp + 0x1e0]
add rcx, 0x28
nop
mov r8, qword [rbp + 0x1a0]
xor r8d, 0xf60e82d4
mov rdx, qword [rbp + 0x1b8]
mov r9d, 0x6f7c3e59
call fcn.2022a4b0
nop
mov r13, qword [rbp + 0x288]
mov qword [r13], rbx
jmp 0x20229826
mov rax, rdi
or rax, 0xf
movabs rsi, 0x7fffffffffffffff
cmp rax, rsi
cmovb rsi, rax
cmp rax, 0xfff
jb 0x202296d7
lea rcx, [rsi + 0x28]
call fcn.20077cb0
mov rcx, rax
add rcx, 0x27
and rcx, 0xffffffffffffffe0
mov qword [rcx - 8], rax
jmp 0x202296e3
lea rcx, [rsi + 1]
call fcn.20077cb0
mov rcx, rax
nop
mov qword [r15], rcx
lea r8, [rdi + 1]
mov rdx, r12
mov r9d, 0x205808c6
call fcn.2022a4b0
mov r15d, r14d
test byte [rbp + 0x1a8], 0x40
jne 0x20229740
nop
mov qword [rbx], rdi
mov rdx, qword [rbp + 0x1c0]
mov qword [rdx + 0x20], rsi
lea rax, [0x20411008]
mov qword [rdx], rax
add rdx, 0x28
add r13, 0x28
cmp r13, qword [rbp + 0x190]
nop
mov rcx, qword [rbp + 0x198]
jne 0x202295f4
jmp 0x20228c6f
nop
mov byte [rbp + 0x170], 1
jmp 0x2022911f
lea rax, [rbp + 0xb8]
jmp 0x2022773c
test byte [rbp + 0x1a8], 0x20
je 0x20229844
nop
mov rax, qword [r13]
mov rax, qword [rax]
mov rcx, r13
xor edx, edx
call qword [case.0x200c7fcc.0]
add r13, 0x28
cmp r13, rsi
jne 0x20229759
nop
mov rax, qword [rbp + 0x118]
mov rcx, qword [rax]
mov rax, qword [rbp + 0x1d8]
mov rdx, qword [rax]
sub rcx, rdx
cmp rcx, 0x1000
jb 0x202297c0
nop
mov rax, qword [rdx - 8]
add rdx, 0xfffffffffffffff8
sub rdx, rax
cmp rdx, 0x20
jae 0x20229849
add rcx, 0x27
mov rdx, rax
nop
mov r8, qword [rbp + 0x1a0]
xor r8d, 0x4d4c5ae2
mov r9d, 0xa9ee0d59
call fcn.2022a4b0
nop
mov rax, qword [rbp + 0x1d8]
mov rcx, qword [rbp + 0x1b0]
mov qword [rax], rcx
mov rax, qword [rbp + 0x120]
lea rax, [rax + rax*4]
lea rax, [rcx + rax*8]
mov rdx, qword [rbp + 0x178]
mov qword [rdx], rax
mov rax, qword [rbp + 0x198]
lea rax, [rax + rax*4]
lea rax, [rcx + rax*8]
mov rcx, qword [rbp + 0x118]
mov qword [rcx], rax
nop
mov r13, qword [rbp + 0x1d0]
mov rax, r13
movaps xmm6, xmmword [rbp + 0x1f0]
add rsp, 0x288
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
call fcn.20077cd0
call fcn.20077cd0
int3
add byte [rsi + rdi*2], bh
add byte [rax], al
test byte [rbp + 5], bh
add byte [rax], al
push rsp
and al, 0x30
mov edx, eax
and al, 0x30
mov eax, edi