Function at 0x2021f940
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x228
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x1a0], 0xfffffffffffffffe
mov qword [rbp + 0x150], r9
mov r12, r8
mov r15, rdx
mov rsi, rcx
call fcn.20224b90
mov rcx, qword [0x20530748]
mov edx, dword [0x205306ec]
mov r8d, 0x21fb
sub r8d, eax
mov dword [rbp + 0x19c], r8d
sub edx, r8d
movsxd rax, edx
add rax, rcx
call qword [case.0x200c7fcc.0]
mov dword [rbp + 0x198], eax
mov edi, eax
mov rdx, rdi
shl rdx, 0x1b
xor rdx, rdi
movabs rax, 0x4646c53a48d8a6d
xor rax, rdx
mov rcx, rdi
shl rcx, 0x20
or rcx, rdi
movabs r10, 0x8c8d8a658c8d8a7d
mov qword [rbp + 0x180], rcx
xor r10, rcx
mov rcx, rdi
shl rcx, 0x23
or rcx, rdi
movabs r8, 0x646c53288c8d8a45
xor r8, rcx
mov qword [rbp + r10 + 0x28], 0
mov r9, rdi
shl r9, 0x1f
xor r9, rdi
movabs r11, 0x4646c5320c8d8a6a
mov qword [rbp + 0x148], r9
xor r11, r9
mov qword [rbp + 0xa0], r8
mov qword [rbp + r8 + 0x28], r11
mov byte [rbp + rax + 0x28], 0
lea r8, [0x2041f038]
mov qword [rbp + 0x28], r8
mov qword [rbp + 0x50], 0
movabs r13, 0x646c53288c8d8a6d
xor r13, rcx
movabs rbx, 0x4646c53a48d8a7d
xor rbx, rdx
mov r8, rdi
shl r8, 0x21
or r8, rdi
movabs r9, 0x191b14ca8c8d8a45
xor r9, r8
mov qword [rbp + rbx - 0x28], 0
movabs r14, 0x646c53288c8d8a6a
mov qword [rbp + 0x160], rcx
xor r14, rcx
mov qword [rbp + 0x88], r9
mov qword [rbp + r9 - 0x28], r14
mov byte [rbp + r13 - 0x28], 0
lea r9, [0x20411008]
mov qword [rbp - 0x28], r9
mov rcx, rdi
shl rcx, 0x24
mov qword [rbp + 0x188], rdi
or rcx, rdi
movabs rdi, 0xc8d8a6508c8d8a7d
mov qword [rbp + 0x178], rcx
xor rdi, rcx
movabs rcx, 0x4646c53a48d8a45
mov qword [rbp + 0x158], rdx
xor rcx, rdx
mov qword [rbp + rdi], 0
movabs rdx, 0x191b14ca8c8d8a6a
mov qword [rbp + 0x170], r8
xor rdx, r8
mov qword [rbp + 0x130], rcx
mov qword [rbp + rcx], rdx
mov byte [rbp + rax], 0
lea rcx, [rax + rbp]
add rcx, 0x28
mov qword [rbp + 0x60], rcx
add rax, rbp
mov qword [rbp + 0x58], rax
mov qword [rbp], r9
cmp byte [rsi + 0x18], 0
lea rax, [rbp + r13 - 0x28]
mov qword [rbp + 0x68], rax
je 0x2021fb4a
add rsi, 0xd0
jmp 0x2022364b
nop
mov qword [rbp + 0x140], r14
mov qword [rbp + 0xc8], rbx
mov qword [rbp + 0x120], rdi
mov qword [rbp + 0xb8], r13
mov qword [rbp + 0x98], rdx
mov qword [rbp + 0x78], r11
mov qword [rbp + 0xa8], r10
lea rax, [rsi + 0xc8]
mov qword [rbp + 0xb0], rax
mov qword [rbp + 0x90], rsi
mov rax, qword [rsi + 0xc8]
test rax, rax
movabs r9, 0x8c8d8a658c8d8a6a
je 0x2021fbfe
nop
mov r10, qword [rbp + 0x188]
mov rdx, r10
shl rdx, 0x1e
movabs rcx, 0x23236299cc8d8a6d
xor rcx, r10
xor rcx, rdx
mov r8, r10
shl r8, 0x1d
movabs rdx, 0x1191b14c2c8d8a7d
xor rdx, r10
xor rdx, r8
mov r8, qword [rbp + 0x180]
xor r8, r9
mov r9, qword [rbp + 0x88]
cmp qword [rax + r9], r8
jbe 0x2021fc81
mov rcx, qword [rax + rcx]
jmp 0x2021fc84
movabs rcx, 0x191b14ca8c8d8a4d
xor rcx, qword [rbp + 0x170]
call fcn.20077cb0
movabs rcx, 0xc8d8a6508c8d8a6d
xor rcx, qword [rbp + 0x178]
movabs rdx, 0x646c53288c8d8a7d
xor rdx, qword [rbp + 0x160]
mov qword [rax + rdx], 0
mov r8, qword [rbp + 0x188]
mov rdx, r8
shl rdx, 0x1d
movabs r9, 0x1191b14c2c8d8a6a
xor r8, r9
xor r8, rdx
mov rdx, qword [rbp + 0x88]
mov qword [rax + rdx], r8
mov byte [rax + rcx], 0
lea rcx, [0x20411008]
mov qword [rax], rcx
mov rcx, qword [rbp + 0xb0]
mov qword [rcx], rax
jmp 0x2021fc8f
add rcx, rax
mov qword [rax + rdx], 0
mov byte [rcx], 0
nop
mov rax, qword [rbp + 0x90]
mov r8, qword [rax + 0x20]
cmp r8, 0x3e8
je 0x2021fcba
cmp r8, 0xfa0
je 0x2021fcba
cmp r8, 0x7d0
jne 0x2021fe53
nop
mov rcx, qword [rbp + 0x170]
movabs rax, 0x191b14ca8c8d8a6d
xor rcx, rax
mov rdx, qword [rbp + 0x188]
mov rax, rdx
shl rax, 0x1e
movabs r8, 0x23236299cc8d8a45
xor r8, rdx
xor r8, rax
mov rax, rdx
shl rax, 0x22
or rax, rdx
mov rdx, rax
movabs r9, 0x323629948c8d8a6a
xor rdx, r9
mov r10, qword [rbp + 0x150]
cmp qword [r10 + r8], rdx
jbe 0x2021fd1a
mov r10, qword [r10 + rcx]
jmp 0x2021fd1d
add r10, rcx
mov r8, qword [rbp + 0x188]
mov rcx, r8
shl rcx, 0x1c
xor rcx, r8
movabs r8, 0x8c8d8a6dc8d8a6d
xor r8, rcx
mov r9, qword [rbp + 0x130]
cmp qword [r12 + r9], rdx
jbe 0x2021fd4e
mov r12, qword [r12 + r8]
jmp 0x2021fd51
add r12, r8
movabs rdx, 0x323629948c8d8a6d
xor rax, rdx
movabs r11, 0x8c8d8a658c8d8a45
xor r11, qword [rbp + 0x180]
movabs r8, 0x8c8d8a6dc8d8a6a
xor rcx, r8
cmp qword [r15 + r11], rcx
jbe 0x2021fd88
mov r15, qword [r15 + rax]
jmp 0x2021fd8b
add r15, rax
lea rcx, [rbp + 0x28]
mov rdx, r15
mov r8, r12
mov r9, r10
call fcn.2020ef80
mov dword [rbp + 0x80], 0
nop
mov rax, qword [rbp + 0x90]
mov rax, qword [rax + 0x20]
mov r8, qword [rbp + 0x188]
mov rdx, r8
shl rdx, 0x1d
xor rdx, r8
movabs rcx, 0x1191b14c2c8d8db5
mov qword [rbp + 0x190], rdx
xor rcx, rdx
cmp rax, rcx
jge 0x2021fe0e
mov rax, r8
shl rax, 0x22
or rax, r8
movabs r8, 0x323629948c8d5266
xor r8, rax
mov rax, rbp
mov qword [rsp + 0x20], rax
mov dword [rsp + 0x28], 0xa9dc5a42
call fcn.20226190
jmp 0x202200d9
movabs rcx, 0x4646c53a48d85c5
xor rcx, qword [rbp + 0x158]
cmp rax, rcx
jae 0x202200a5
movabs r8, 0x646c53288c8d5264
xor r8, qword [rbp + 0x160]
mov rax, rbp
mov qword [rsp + 0x20], rax
mov dword [rsp + 0x28], 0xa9dc5a42
call fcn.20226190
jmp 0x202200d9
lea rsi, [rbp - 0x28]
mov qword [rsp + 0x20], rsi
mov dword [rsp + 0x28], 0xa9dc5a42
call fcn.20226190
test al, 1
jne 0x20220563
movabs r8, 0x646c53288c8d5265
xor r8, qword [rbp + 0x160]
nop
mov qword [rsp + 0x20], rsi
mov dword [rsp + 0x28], 0xa9dc5a42
call fcn.20226190
nop
mov rax, qword [rbp + 0x180]
mov rsi, rax
movabs rcx, 0x8c8d8a658c8d8a6d
xor rsi, rcx
mov rcx, qword [rbp + 0x188]
mov rdi, rcx
shl rdi, 0x22
or rdi, rcx
mov r8, rdi
movabs rcx, 0x323629948c8d8a7d
xor r8, rcx
movabs rdx, 0x4646c5320c8d8a45
xor rdx, qword [rbp + 0x148]
mov qword [rbp + 0x128], r8
mov qword [rbp + r8 + 0xf8], 0
movabs rcx, 0x8c8d8a658c8d8a6a
xor rax, rcx
mov qword [rbp + 0x138], rdx
mov qword [rbp + rdx + 0xf8], rax
mov byte [rbp + rsi + 0xf8], 0
lea rax, [0x20411008]
mov qword [rbp + 0xf8], rax
mov rax, qword [rbp + 0x90]
mov eax, dword [rax + 0x20]
nop
mov qword [rsp + 0x28], rax
lea rdx, [rbp + 0xf8]
mov ecx, 0xaea671cf
call fcn.20226dd0
nop
mov qword [rbp + 0x70], rsi
lea rax, [rsi + rbp]
add rax, 0xf8
mov qword [rbp + 0x190], rax
mov rax, qword [rbp + 0x188]
mov rcx, rax
shl rcx, 0x1d
xor rcx, rax
mov qword [rbp + 0xc0], rcx
movabs rax, 0x4646c5320c8d8a7d
xor rax, qword [rbp + 0x148]
cmp qword [r15 + rax], 0
je 0x20220e33
nop
mov rcx, qword [rbp + 0x188]
mov r8, rcx
shl r8, 0x1c
xor r8, rcx
movabs rdx, 0x8c8d8a6dc8d8a6d
mov qword [rbp - 0x38], r8
xor rdx, r8
mov r13, rcx
shl r13, 0x1e
xor r13, rcx
movabs r9, 0x23236299cc8d8a45
xor r9, r13
mov rcx, qword [rbp + 0x158]
mov rsi, rcx
movabs r8, 0x4646c53a48d8a6a
xor rsi, r8
mov qword [rbp - 0x40], r9
mov qword [rbp + r9 + 0xd0], rsi
mov qword [rbp + rax + 0xd0], 2
mov eax, dword [rbp + 0x198]
xor eax, 0xaa49
mov word [rbp + rdx + 0xd0], ax
mov rax, r13
movabs r8, 0x23236299cc8d8a6f
xor rax, r8
mov byte [rbp + rax + 0xd0], 0
mov r14, qword [rbp + 0x128]
mov rax, qword [rbp + r14 + 0xf8]
mov r8, qword [rbp + 0x138]
mov r9, qword [rbp + r8 + 0xf8]
mov r8, r9
sub r8, rax
cmp r8, 2
lea r8, [rbp + rdx + 0xd0]
lea rdx, [0x20411008]
mov qword [rbp + 0xd0], rdx
nop
mov qword [rbp + 0x80], r8
jae 0x20220b44
nop
mov qword [rsp + 0x28], r8
mov rax, qword [rbp + 0x190]
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x30], 0
mov r8d, 2
mov r9d, 2
mov ecx, 0xcec8d940
call fcn.20226dd0
jmp 0x20220c6d
nop
mov rcx, qword [rbp + 0x188]
mov rax, rcx
shl rax, 0x1c
movabs r8, 0x8c8d8a6dc8d5267
xor r8, rcx
xor r8, rax
mov rax, rbp
mov qword [rsp + 0x20], rax
mov dword [rsp + 0x28], 0xa9dc5a42
call fcn.20226190
nop
cmp qword [0x20573518], 0
je 0x20220147
nop
mov rax, qword [rbp + 0xb0]
mov rsi, qword [rax]
call fcn.20224a20
mov rcx, rax
call fcn.2021def0
nop
mov rcx, qword [rbp + 0x170]
movabs rdx, 0x191b14ca8c8d8a6d
xor rcx, rdx
movabs rdx, 0x646c53288c8d8a7d
xor rdx, qword [rbp + 0x160]
mov r8, qword [rax + rdx]
mov rdx, qword [rbp + 0x88]
mov r9, qword [rbp + 0x140]
cmp qword [rax + rdx], r9
jbe 0x202201d2
mov rax, qword [rax + rcx]
jmp 0x202201d5
call fcn.20210d10
test rax, rax
je 0x2022029f
nop
mov rax, qword [rbp + 0xb0]
mov rbx, qword [rax]
call fcn.20210d10
mov rcx, rax
call fcn.2021def0
nop
mov rsi, qword [rbp + 0x180]
movabs rcx, 0x8c8d8a658c8d8a6d
xor rsi, rcx
movabs rcx, 0x646c53288c8d8a7d
xor rcx, qword [rbp + 0x160]
mov r8, qword [rax + rcx]
movabs rdx, 0xc8d8a6508c8d8a45
mov rcx, qword [rbp + 0x178]
xor rdx, rcx
movabs r9, 0xc8d8a6508c8d8a6a
xor rcx, r9
cmp qword [rax + rdx], rcx
jbe 0x202205ba
mov rcx, qword [rbp + 0xb8]
mov rax, qword [rax + rcx]
jmp 0x202205c1
add rax, rcx
mov rcx, qword [rbp + 0xb8]
lea rdi, [rsi + rcx]
mov r9, qword [rbp + 0x170]
movabs rcx, 0x191b14ca8c8d8a7d
xor r9, rcx
mov rcx, qword [rsi + r9]
movabs rdx, 0x8c8d8a658c8d8a45
xor rdx, qword [rbp + 0x180]
mov rdx, qword [rsi + rdx]
mov r10, rdx
sub r10, rcx
cmp r10, r8
jae 0x2022023e
nop
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdi
mov qword [rsp + 0x30], 0
mov ecx, 0xcec8d940
mov r9, r8
call fcn.20226dd0
jmp 0x20221e50
lea rbx, [rcx + r8]
mov qword [rsi + r9], rbx
mov r10, qword [rbp + 0x188]
mov r9, r10
shl r9, 0x1e
movabs r11, 0x23236299cc8d8a6a
xor r10, r11
xor r10, r9
cmp rdx, r10
jbe 0x2022026c
mov rdi, qword [rdi]
add rcx, rdi
mov rdx, qword [0x20530718]
mov r9d, dword [0x20530704]
sub r9d, dword [rbp + 0x19c]
movsxd r9, r9d
add r9, rdx
mov rdx, rax
mov rax, r9
call qword [case.0x200c7fcc.0]
mov byte [rdi + rbx], 0
jmp 0x20221e50
lea rcx, [rbp + 0x16f]
call fcn.2018e680
lea rcx, [rbp + 0x16f]
lea rdx, [rbp + 0xf8]
call fcn.20224a30
lea rcx, [rbp + 0xf8]
lea rdx, [rbp + 0xd0]
call fcn.200b4ae0
nop
mov rax, qword [rbp + 0x120]
mov rsi, qword [rbp + rax + 0xd0]
mov rax, qword [rbp + 0xa0]
mov rax, qword [rbp + rax + 0xd0]
cmp rax, qword [rbp + 0x98]
jbe 0x20220425
nop
mov rcx, qword [rbp + 0xb8]
mov rcx, qword [rbp + rcx + 0xd0]
lea rdx, [rax + 1]
movabs r8, 0x646c53288c8d859a
xor r8, qword [rbp + 0x160]
cmp rdx, r8
jbe 0x202203f8
nop
mov r8, qword [rcx - 8]
mov r14, qword [rbp + 0x178]
mov rdx, r14
xor rdx, rcx
movabs r9, 0x7b6b4e2c8f2d131c
xor r9, rdx
movabs rdx, 0x37d7842fa72d131c
xor rdx, qword [rbp + 0x158]
and rdx, rcx
movabs rcx, 0x372759af7372759d
xor rcx, r14
mov rdi, qword [rbp + 0x188]
mov r10, rdi
shl r10, 0x1e
movabs r11, 0x6f6f751a30d2ece3
xor r11, rdi
xor r11, r10
add r11, rcx
add r11, r9
lea rcx, [r11 + rdx*2]
sub rcx, r8
inc rcx
mov rdx, rdi
shl rdx, 0x22
or rdx, rdi
movabs r9, 0x323629948c8d8a45
xor r9, rdx
cmp rcx, r9
jae 0x20223c27
movabs rcx, 0x7027ab6ccf6e4d13
xor rcx, r14
movabs rdx, 0xcb8d78a63091b2ec
xor rdx, qword [rbp + 0x180]
add rdx, rcx
movabs rcx, 0x4646c5320c8d8a4d
xor rcx, qword [rbp + 0x148]
add rcx, rdx
lea rdx, [rax + rcx]
inc rdx
mov rcx, r8
nop
mov r8d, dword [rbp + 0x198]
xor r8d, 0x4d4c5ae2
mov r9, qword [0x20530730]
mov eax, dword [0x20530700]
sub eax, dword [rbp + 0x19c]
cdqe
add rax, r9
call qword [case.0x200c7fcc.0]
test rsi, rsi
mov rax, qword [rbp + 0xb0]
mov r12, qword [rax]
je 0x202207fa
lea rcx, [rbp + 0xf8]
lea rdx, [rbp + 0xd0]
call fcn.200b4ae0
nop
mov r14, qword [rbp + 0x170]
movabs rax, 0x191b14ca8c8d8a6d
xor r14, rax
mov rcx, qword [rbp + 0x180]
movabs rax, 0x8c8d8a658c8d8a6d
xor rcx, rax
lea r11, [rcx + rbp]
add r11, 0xd0
mov r9, qword [rbp + 0x188]
mov rbx, r9
shl rbx, 0x22
or rbx, r9
mov rax, rbx
movabs rdx, 0x323629948c8d8a7d
xor rax, rdx
mov r8, qword [rbp + rax + 0xd0]
mov r10, r9
shl r10, 0x1e
xor r10, r9
movabs r9, 0x23236299cc8d8a45
xor r9, r10
mov rax, qword [rbp + 0x158]
movabs rdx, 0x4646c53a48d8a6a
xor rax, rdx
mov qword [rbp + 0x138], r11
mov qword [rbp + 0x150], r11
mov qword [rbp + 0x140], r9
cmp qword [rbp + r9 + 0xd0], rax
jbe 0x20220501
mov rcx, qword [rbp + rcx + 0xd0]
mov qword [rbp + 0x150], rcx
add r14, r12
mov rdx, qword [rbp + 0xc8]
mov rcx, qword [r12 + rdx]
movabs r9, 0x1191b14c2c8d8a45
mov rdi, qword [rbp + 0x190]
xor r9, rdi
mov r9, qword [r12 + r9]
mov r11, r9
sub r11, rcx
cmp r11, r8
jae 0x202208d2
nop
mov rax, qword [rbp + 0x150]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r14
mov qword [rsp + 0x30], 0
mov ecx, 0xcec8d940
mov r9, r8
call fcn.20226dd0
jmp 0x202209f8
nop
mov r8, qword [rbp + 0x188]
mov rax, r8
shl rax, 0x22
or rax, r8
movabs rcx, 0x323629948c8d8a45
xor rcx, rax
mov rdx, r8
shl rdx, 0x1d
movabs r9, 0x1191b14c2c8d8a6a
xor r8, r9
xor r8, rdx
mov r10, qword [rbp + 0x150]
cmp qword [r10 + rcx], r8
jbe 0x20220717
mov rcx, qword [rbp + 0xb8]
mov r10, qword [r10 + rcx]
jmp 0x2022071e
add rax, qword [rbp + 0xb8]
movabs r9, 0xb6dc602a85db4ba6
mov rdi, qword [rbp + 0x190]
xor r9, rdi
movabs r10, 0xe9713e99a474d50b
mov r14, qword [rbp + 0x170]
xor r10, r14
movabs rcx, 0x1ef4ebab5a24b459
xor rcx, qword [rbp + 0x148]
add rcx, r10
mov r15, qword [rbp + 0x188]
mov r10, r15
shl r10, 0x1c
movabs r11, 0x668713bd85003dec
xor r11, r15
xor r11, r10
movabs r10, 0x71cd87af8f3a7130
xor r10, qword [rbp + 0x160]
add r10, r9
movabs r9, 0x1e0464e0fb8b2af4
xor r9, rdi
add r10, r9
movabs r9, 0x1d3dbe812affc213
xor r9, qword [rbp + 0x180]
add r9, r11
add r9, rcx
add rsi, rbx
add r9, r10
movabs rcx, 0xf3453fb270c58ecf
xor rcx, r14
add r9, rcx
mov r10, qword [rbp + 0xc8]
mov rcx, qword [rbx + r10]
mov rdx, qword [rbx + rdx]
sub r9, rcx
add r9, rdx
add r9, 4
cmp r9, r8
jae 0x202206b0
nop
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rsi
mov qword [rsp + 0x30], 0
mov ecx, 0xcec8d940
mov r9, r8
call fcn.20226dd0
jmp 0x20221e50
mov r9, rcx
xor r9, r8
mov r11, r10
mov r10, rcx
and r10, r8
lea r14, [r9 + r10*2]
mov qword [rbx + r11], r14
mov r9, qword [rbp + 0x158]
movabs r10, 0x4646c53a48d8a6a
xor r9, r10
cmp rdx, r9
jbe 0x202206e3
mov rsi, qword [rsi]
add rcx, rsi
mov rdx, qword [0x20530718]
mov r9d, dword [0x20530704]
sub r9d, dword [rbp + 0x19c]
movsxd r9, r9d
add r9, rdx
mov rdx, rax
mov rax, r9
call qword [case.0x200c7fcc.0]
mov byte [rsi + r14], 0
jmp 0x20221e50
add r10, qword [rbp + 0xb8]
movabs rcx, 0xc8d8a6508c8d8a6d
xor rcx, qword [rbp + 0x178]
mov r9, qword [rbp + 0x188]
mov rdx, r9
shl rdx, 0x1e
movabs r8, 0x23236299cc8d8a45
xor r8, r9
xor r8, rdx
mov rdx, rax
movabs r9, 0x323629948c8d8a6a
xor rdx, r9
cmp qword [r12 + r8], rdx
jbe 0x20220769
mov r9, qword [r12 + rcx]
jmp 0x2022076f
add r12, rcx
mov r9, r12
movabs rcx, 0x323629948c8d8a6d
xor rax, rcx
mov rcx, qword [rbp + 0xa0]
cmp qword [r15 + rcx], rdx
jbe 0x2022078f
mov r15, qword [r15 + rax]
jmp 0x20220792
add r15, rax
mov rcx, qword [rbp + 0x188]
mov rax, rcx
shl rax, 0x1c
movabs rdx, 0x8c8d8a6dc8d8a45
xor rcx, rdx
xor rcx, rax
mov rax, qword [rbp + 0x178]
movabs rdx, 0xc8d8a6508c8d8a6a
xor rax, rdx
mov rdx, qword [rbp + 0x68]
cmp qword [rbp + rcx - 0x28], rax
jbe 0x202207db
mov rax, qword [rbp + 0xb8]
mov rdx, qword [rbp + rax - 0x28]
mov al, 1
mov dword [rbp + 0x80], eax
nop
mov qword [rsp + 0x20], r10
lea rcx, [rbp + 0x28]
mov r8, r15
call fcn.2020ef80
jmp 0x2021fda7
nop
mov rcx, qword [rbp + 0x188]
mov rdi, rcx
shl rdi, 0x22
or rdi, rcx
mov rdx, rdi
movabs rax, 0x323629948c8d8a6d
xor rdx, rax
mov qword [rbp + 0xc8], rdx
lea rax, [rdx + rbp]
add rax, 0xd0
mov qword [rbp + 0x138], rax
mov rax, rcx
shl rax, 0x1e
movabs rdx, 0x23236299cc8d8a7d
xor rcx, rdx
xor rcx, rax
movabs rdx, 0xc8d8a6508c8d8a45
xor rdx, qword [rbp + 0x178]
mov rax, qword [rbp + 0x140]
mov qword [rbp + 0x150], rdx
mov qword [rbp + rdx + 0xd0], rax
movabs rax, 0x4646c5320c8d8a6c
xor rax, qword [rbp + 0x148]
mov qword [rbp + rcx + 0xd0], rax
movzx eax, byte [0x2053015a]
mov ecx, dword [rbp + 0x198]
mov r8d, ecx
xor r8b, 0x83
cmp al, r8b
je 0x202219c8
mov eax, dword [rbp + 0x198]
mov ecx, eax
xor cl, 0xfa
mov edx, eax
xor dl, 0xe6
mov eax, ecx
lock cmpxchg byte [0x2053015a], dl
je 0x2022193e
cmp al, r8b
jne 0x202208b8
jmp 0x202219c8
movabs r11, 0x632b721a68d30bb0
xor r11, qword [rbp + 0x178]
movabs rsi, 0xfbe05fa2103c078e
mov rdx, qword [rbp + 0x180]
xor rsi, rdx
add rsi, r11
movabs r11, 0x89fa0a5c75cc41f4
mov r13, qword [rbp + 0x148]
xor r11, r13
movabs r15, 0x136052084a33be0b
xor r15, r10
add r15, r11
add r15, rsi
movabs r11, 0xd881a1d0972cf44f
xor r11, rdx
movabs rsi, 0xdc61bb044af7dc8d
xor rsi, r13
add rsi, r11
movabs r11, 0x591af0b900b6c7aa
xor r11, rdi
add r11, rsi
add r11, r15
movabs rsi, 0xa312ff6f3e50ab99
xor rsi, r10
movabs r10, 0xe9550bac35082372
xor r10, rdx
add rsi, r10
movabs r10, 0x91893ef2efc3f871
xor r10, qword [rbp + 0x170]
add r10, rsi
movabs r15, 0x6e5fd34521af5466
xor r15, rdi
add r15, r10
add r15, r11
movabs rsi, 0x7fac185a5f493855
xor rsi, qword [rbp + 0x178]
add rsi, r15
add rsi, r8
lea r10, [rcx + rsi]
add r10, 6
mov rdx, qword [rbp + 0xc8]
mov qword [r12 + rdx], r10
add rsi, rcx
cmp r9, rax
jbe 0x202209ca
mov r14, qword [r14]
add rcx, r14
mov r9, qword [0x20530718]
mov eax, dword [0x20530704]
sub eax, dword [rbp + 0x19c]
cdqe
add rax, r9
mov rdx, qword [rbp + 0x150]
call qword [case.0x200c7fcc.0]
mov byte [r14 + rsi + 6], 0
nop
mov rax, qword [rbp + 0x140]
mov rax, qword [rbp + rax + 0xd0]
mov rcx, qword [rbp + 0x180]
movabs rdx, 0x8c8d8a658c8d8a6a
xor rcx, rdx
cmp rax, rcx
jbe 0x20220b3f
nop
mov rcx, qword [rbp + 0x138]
mov rcx, qword [rcx]
movabs rdx, 0x27751b9658da4ef5
xor rdx, qword [rbp + 0x158]
movabs r8, 0xcd7f39762f25b10a
mov r10, qword [rbp + 0x190]
xor r8, r10
add r8, rdx
lea rdx, [rax + r8]
add rdx, 2
movabs r8, 0x1191b14c2c8d859a
xor r8, r10
cmp rdx, r8
jbe 0x20220b12
nop
mov r8, qword [rcx - 8]
mov r11, qword [rbp + 0x188]
mov rdx, r11
shl rdx, 0x1c
movabs r9, 0xf73727592372759d
xor r9, r11
xor r9, rdx
movabs rdx, 0x22ec0bfd5bb58627
xor rbx, rdx
add rbx, r9
movabs rdx, 0xfeb46cda044a79d8
xor rdx, r10
add rdx, rbx
add rdx, rcx
sub rdx, r8
inc rdx
cmp rdx, qword [rbp + 0x140]
jae 0x20223c36
movabs rcx, 0x3863996f10a8606e
xor rcx, qword [rbp + 0x170]
movabs rdx, 0x646c53288c8d8a4d
xor rdx, qword [rbp + 0x160]
movabs r9, 0x98c1b7686f579f91
xor r9, qword [rbp + 0x148]
add r9, rdx
add r9, rcx
lea rdx, [rax + r9]
inc rdx
mov rcx, r8
nop
mov r8d, dword [rbp + 0x198]
xor r8d, 0x4d4c5ae2
mov r9, qword [0x20530730]
mov eax, dword [0x20530700]
sub eax, dword [rbp + 0x19c]
cdqe
add rax, r9
call qword [case.0x200c7fcc.0]
jmp 0x20221c6a
movabs rdx, 0xc9b141e2b323b012
mov r11, qword [rbp + 0x180]
xor rdx, r11
movabs r8, 0x994b2ed93989b50
xor r8, r11
mov qword [rbp - 0x30], r9
movabs r9, 0xdeaf67504cdc4fed
mov rbx, qword [rbp + 0x160]
xor r9, rbx
add r9, r8
movabs r8, 0xe3fbf93ad96d5f4d
mov r10, qword [rbp + 0x178]
xor r8, r10
add r8, rdx
add r8, r9
movabs rdx, 0x657fb876efcbe35e
xor rdx, rbx
movabs r9, 0x43dd86a41cd7c7b
xor r9, r13
add r9, rdx
movabs rdx, 0xead76c98fe328384
xor rdx, rdi
add rdx, r9
movabs r9, 0x3634b2f110341ca1
xor r9, r10
add rdx, r8
movabs r8, 0x7e82ab24446764af
xor r8, rcx
add r8, r9
movabs r9, 0xa0b9a37bbb503f3e
xor r9, qword [rbp + 0x170]
add r9, r8
movabs r8, 0x58512af02692a0b2
xor r8, r11
add r8, r9
add r8, rdx
movabs rdx, 0x22311b6644afc0c1
xor rdx, rbx
add rdx, r8
lea r8, [rax + rdx]
add r8, 8
add rdx, rax
mov qword [rbp + r14 + 0xf8], r8
mov r9, r13
movabs rcx, 0x23236299cc8d8a6a
xor r9, rcx
mov r8, qword [rbp + 0x190]
cmp qword [rbp - 0x30], r9
jbe 0x20220c58
mov rcx, qword [rbp + 0x190]
mov r8, qword [rcx]
mov rcx, qword [rbp + 0x80]
movzx ecx, word [rcx]
mov word [r8 + rax], cx
mov byte [r8 + rdx + 8], 0
movabs rdx, 0x1191b14c2c8d8a6d
xor rdx, qword [rbp + 0xc0]
add rdx, r15
mov rax, qword [rbp + 0x128]
mov r8, qword [r15 + rax]
mov rax, qword [rbp + 0xa0]
cmp qword [r15 + rax], rsi
jbe 0x20220c9c
mov rdx, qword [rdx]
mov r11, qword [rbp + 0x128]
mov rcx, qword [rbp + r11 + 0xf8]
mov rax, qword [rbp + 0x138]
mov rax, qword [rbp + rax + 0xf8]
mov r9, rax
sub r9, rcx
cmp r9, r8
jae 0x20220cef
nop
mov qword [rsp + 0x28], rdx
mov rax, qword [rbp + 0x190]
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x30], 0
mov ecx, 0xcec8d940
mov r9, r8
call fcn.20226dd0
jmp 0x20220d4d
mov r9, rcx
xor r9, r8
mov r10, rcx
and r10, r8
lea rsi, [r9 + r10*2]
mov qword [rbp + r11 + 0xf8], rsi
cmp byte [0x20572684], 0
mov r15, qword [rbp + 0x190]
mov r9, qword [r15]
cmovne r15, r9
cmp rax, qword [rbp + 0x98]
cmova r15, r9
add rcx, r15
mov r9, qword [0x20530718]
mov eax, dword [0x20530704]
sub eax, dword [rbp + 0x19c]
cdqe
add rax, r9
call qword [case.0x200c7fcc.0]
mov byte [r15 + rsi], 0
nop
mov rax, qword [rbp - 0x40]
mov rax, qword [rbp + rax + 0xd0]
mov rcx, rdi
movabs rdx, 0x323629948c8d8a6a
xor rcx, rdx
cmp rax, rcx
jbe 0x20220e33
nop
mov rcx, qword [rbp + 0x80]
mov rcx, qword [rcx]
lea rdx, [rax + 1]
movabs r8, 0x191b14ca8c8d859a
mov r9, qword [rbp + 0x170]
xor r8, r9
cmp rdx, r8
jbe 0x20220e06
nop
mov r8, qword [rcx - 8]
movabs rdx, 0xe6e4eb357372759d
xor rdx, r9
movabs r9, 0x1afe94140345745a
mov r10, qword [rbp - 0x38]
xor r9, r10
add r9, rdx
movabs rdx, 0xceead1d4ecba8ba5
xor r13, rdx
add r13, r9
add r13, rcx
sub r13, r8
inc r13
movabs rcx, 0x8c8d8a6dc8d8a45
xor r10, rcx
cmp r13, r10
jae 0x20223c40
movabs rcx, 0x323629948c8d8a4d
xor rcx, rdi
add rax, rcx
mov rdx, rax
mov rcx, r8
nop
mov r8d, dword [rbp + 0x198]
xor r8d, 0x4d4c5ae2
mov r9, qword [0x20530730]
mov eax, dword [0x20530700]
sub eax, dword [rbp + 0x19c]
cdqe
add rax, r9
call qword [case.0x200c7fcc.0]
movabs rax, 0x646c53288c8d8a7d
xor rax, qword [rbp + 0x160]
cmp qword [r12 + rax], 0
je 0x202212eb
nop
mov rcx, qword [rbp + 0x98]
mov r9, qword [rbp + 0x138]
mov qword [rbp + r9 + 0xd0], rcx
mov qword [rbp + rax + 0xd0], 2
mov eax, dword [rbp + 0x198]
xor eax, 0xaa49
mov r11, qword [rbp + 0x70]
mov word [rbp + r11 + 0xd0], ax
movabs rax, 0x646c53288c8d8a6f
xor rax, qword [rbp + 0x160]
mov byte [rbp + rax + 0xd0], 0
movabs rax, 0x19ae48b45ce7d3e4
xor rax, qword [rbp + 0x178]
movabs rcx, 0xd7f50a8e28332b8a
xor rcx, qword [rbp + 0x148]
movabs rdx, 0x1cbf388fa3182c1b
xor rdx, rdi
add rdx, rax
movabs r8, 0x7fdd810ff7ccd475
xor r8, qword [rbp + 0xc0]
add r8, rcx
mov r10, qword [rbp + 0x128]
mov rax, qword [rbp + r10 + 0xf8]
add r8, rdx
mov rcx, qword [rbp + r9 + 0xf8]
sub r8, rax
lea rdx, [r8 + rcx]
add rdx, 2
cmp rdx, 2
lea r13, [rbp + r11 + 0xd0]
lea rdx, [0x20411008]
mov qword [rbp + 0xd0], rdx
jae 0x20220f5d
nop
mov qword [rsp + 0x28], r13
mov rax, qword [rbp + 0x190]
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x30], 0
mov r8d, 2
mov r9d, 2
mov ecx, 0xcec8d940
call fcn.20226dd0
jmp 0x20220fac
mov rdx, rax
xor rdx, 2
mov r8d, eax
and r8d, 2
lea rdx, [rdx + r8*2]
mov qword [rbp + r10 + 0xf8], rdx
mov r9, rdi
movabs r8, 0x323629948c8d8a6a
xor r9, r8
mov r8, qword [rbp + 0x190]
cmp rcx, r9
jbe 0x20220f9d
mov rcx, qword [rbp + 0x190]
mov r8, qword [rcx]
movzx ecx, word [r13]
mov word [r8 + rax], cx
mov byte [r8 + rdx], 0
movabs rdx, 0xc8d8a6508c8d8a6d
xor rdx, qword [rbp + 0x178]
add rdx, r12
mov rax, qword [rbp + 0x120]
mov r8, qword [r12 + rax]
mov rax, qword [rbp + 0x188]
mov r15, rax
shl r15, 0x1c
xor r15, rax
mov rax, r15
movabs rcx, 0x8c8d8a6dc8d8a6a
xor rax, rcx
mov rcx, qword [rbp + 0x130]
cmp qword [r12 + rcx], rax
jbe 0x20220ffc
mov rdx, qword [rdx]
mov r10, qword [rbp + 0x128]
mov rcx, qword [rbp + r10 + 0xf8]
mov rax, qword [rbp + 0x138]
mov rax, qword [rbp + rax + 0xf8]
mov r9, rax
sub r9, rcx
cmp r9, r8
jae 0x2022104f
nop
mov qword [rsp + 0x28], rdx
mov rax, qword [rbp + 0x190]
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x30], 0
mov ecx, 0xcec8d940
mov r9, r8
call fcn.20226dd0
jmp 0x202210c7
movabs r9, 0xb27ff911db2cfc9f
xor r9, qword [rbp + 0x170]
movabs rsi, 0x50ff7e770cd30360
xor rsi, qword [rbp + 0x158]
add rsi, r9
add rsi, r8
lea r9, [rcx + rsi]
inc r9
add rsi, rcx
mov qword [rbp + r10 + 0xf8], r9
mov r14, qword [rbp + 0x190]
cmp rax, qword [rbp + 0x78]
jbe 0x202210a0
mov rax, qword [rbp + 0x190]
mov r14, qword [rax]
add rcx, r14
mov r9, qword [0x20530718]
mov eax, dword [0x20530704]
sub eax, dword [rbp + 0x19c]
cdqe
add rax, r9
call qword [case.0x200c7fcc.0]
mov byte [r14 + rsi + 1], 0
nop
mov rax, qword [rbp + 0x138]
mov rax, qword [rbp + rax + 0xd0]
cmp rax, qword [rbp + 0x78]
jbe 0x202212eb
nop
mov rcx, qword [r13]
mov rdx, rax
xor rdx, 1
mov r8, rax
not r8
movabs r9, 0x7ffffffffffffffe
and r9, r8
or r9, rdx
not r9
movabs r10, 0xe2b03d6e8c40102c
xor r10, qword [rbp + 0x158]
movabs r11, 0x527d422524672916
mov r13, qword [rbp + 0x148]
xor r11, r13
mov r12, qword [rbp + 0x188]
mov rsi, r12
shl rsi, 0x1e
movabs r14, 0xc8e71a711b98d6e9
xor r14, r12
xor r14, rsi
add r14, r10
movabs r10, 0x5f6d6bf0dbbfefd3
xor r10, r13
add r10, r11
add r10, r14
add r10, rdx
lea rdx, [r10 + r9*2]
add rdx, 2
movabs r9, 0x646c53288c8d859a
xor r9, qword [rbp + 0x160]
cmp rdx, r9
jbe 0x202212be
nop
mov r9, qword [rcx - 8]
cmp byte [0x20572a5c], 0
jne 0x2022123e
movabs rdx, 0x6255d2000430986b
xor rdx, qword [rbp + 0xc0]
movabs r10, 0xfb9b93ac5b72759d
xor r10, qword [rbp + 0x158]
movabs r11, 0xca7d5981dbcf6794
mov r14, qword [rbp + 0x148]
xor r11, r14
add r11, r10
movabs r10, 0x9f1c8d1797f14a37
xor r10, qword [rbp + 0x170]
movabs rsi, 0x3fbea310e80eb5c8
xor rsi, r14
add rsi, rdx
movabs rdx, 0xe9e7643bb3ad2c7a
xor rdx, qword [rbp + 0x178]
add rdx, r10
add rdx, r11
movabs r10, 0x524db7f14c52d385
xor r10, qword [rbp + 0x180]
add r10, rsi
add r10, rdx
add r10, rcx
sub r10, r9
add r10, 3
movabs rcx, 0x323629948c8d8a45
xor rcx, rdi
cmp r10, rcx
jae 0x20223c3b
movabs rcx, 0xee6e4eb3d37275b2
xor rcx, qword [rbp + 0xc0]
movabs rdx, 0x4646c53a48d8a4d
xor rdx, qword [rbp + 0x158]
and rdx, r8
and rax, rcx
or rax, rdx
mov r10, qword [rbp + 0x170]
xor r8, r10
movabs rcx, 0x191b14ca8c8d8a4d
xor rcx, r8
movabs rdx, 0xc8d8a658c8d8a4d
xor rdx, qword [rbp + 0x180]
and rdx, rcx
movabs rcx, 0xbedd39c814acdd0e
xor r15, rcx
movabs rcx, 0x50f10a5bbb5322f1
xor rcx, r10
add rcx, r15
add rcx, rax
lea rdx, [rcx + rdx*2]
inc rdx
mov rcx, r9
nop
mov r8d, dword [rbp + 0x198]
xor r8d, 0x4d4c5ae2
mov r9, qword [0x20530730]
mov eax, dword [0x20530700]
sub eax, dword [rbp + 0x19c]
cdqe
add rax, r9
call qword [case.0x200c7fcc.0]
nop
mov rax, qword [rbp + 0x188]
mov r15, rax
shl r15, 0x1e
xor r15, rax
mov r14, rax
shl r14, 0x1c
xor r14, rax
mov rax, r14
movabs rcx, 0x8c8d8a6dc8d8a7d
xor rax, rcx
mov rcx, qword [rbp + 0x150]
cmp qword [rcx + rax], 0
je 0x20221742
nop
mov rax, qword [rbp + 0x130]
mov rcx, qword [rbp + 0x78]
mov qword [rbp + rax + 0xd0], rcx
mov rsi, qword [rbp + 0x128]
mov qword [rbp + rsi + 0xd0], 2
mov eax, dword [rbp + 0x198]
xor eax, 0xaa49
mov r9, qword [rbp + 0xb8]
mov word [rbp + r9 + 0xd0], ax
movabs rax, 0x23236299cc8d8a6f
xor rax, r15
mov byte [rbp + rax + 0xd0], 0
movabs rax, 0xa8320bbe76b0e5ac
xor rax, r14
movabs rcx, 0x7ae34b0873f37264
mov r11, qword [rbp + 0x170]
xor rcx, r11
movabs rdx, 0x54df066d8c0c8d9b
xor rdx, qword [rbp + 0x178]
add rdx, rax
movabs r8, 0x3b697fcfd94f1a53
xor r8, qword [rbp + 0x160]
add r8, rcx
mov rax, qword [rbp + rsi + 0xf8]
add r8, rdx
mov rcx, qword [rbp + 0x138]
mov rcx, qword [rbp + rcx + 0xf8]
sub r8, rax
lea rdx, [r8 + rcx]
add rdx, 2
cmp rdx, 2
lea r12, [rbp + r9 + 0xd0]
lea rdx, [0x20411008]
mov qword [rbp + 0xd0], rdx
jae 0x20221440
nop
mov qword [rsp + 0x28], r12
mov rax, qword [rbp + 0x190]
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x30], 0
mov r8d, 2
mov r9d, 2
mov ecx, 0xcec8d940
call fcn.20226dd0
jmp 0x202214ca
nop
mov rdx, qword [rbp + 0x158]
xor rdx, rax
movabs r8, 0x832452280cc7ab82
xor r8, rdx
movabs r9, 0xbcdb41e24c7ab82
xor r9, qword [rbp + 0x180]
and r9, rax
movabs r10, 0x61a4d54edb38547d
xor r10, r11
add r10, r8
lea rdx, [r10 + r9*2]
lea r8, [r10 + r9*2]
add r8, 3
mov qword [rbp + rsi + 0xf8], r8
mov r9, qword [rbp + 0xc0]
movabs r8, 0x1191b14c2c8d8a6a
xor r9, r8
mov r8, qword [rbp + 0x190]
cmp rcx, r9
jbe 0x202214ba
mov rcx, qword [rbp + 0x190]
mov r8, qword [rcx]
movzx ecx, word [r12]
mov word [r8 + rax], cx
mov byte [r8 + rdx + 3], 0
movabs rdx, 0x23236299cc8d8a6d
xor rdx, r15
mov r10, qword [rbp + 0x150]
add rdx, r10
movabs rax, 0x1191b14c2c8d8a7d
xor rax, qword [rbp + 0xc0]
mov r8, qword [r10 + rax]
movabs rax, 0x23236299cc8d8a45
xor rax, r15
mov rcx, qword [rbp + 0x178]
movabs r9, 0xc8d8a6508c8d8a6a
xor rcx, r9
cmp qword [r10 + rax], rcx
jbe 0x20221520
mov rdx, qword [rdx]
mov r10, qword [rbp + 0x128]
mov rcx, qword [rbp + r10 + 0xf8]
mov rax, qword [rbp + 0x138]
mov rax, qword [rbp + rax + 0xf8]
mov r9, rax
sub r9, rcx
cmp r9, r8
jae 0x20221573
nop
mov qword [rsp + 0x28], rdx
mov rax, qword [rbp + 0x190]
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x30], 0
mov ecx, 0xcec8d940
mov r9, r8
call fcn.20226dd0
jmp 0x202215d0
lea rsi, [rcx + r8]
mov qword [rbp + r10 + 0xf8], rsi
mov r9, qword [rbp + 0x158]
movabs r10, 0x4646c53a48d8a6a
xor r9, r10
mov r13, qword [rbp + 0x190]
cmp rax, r9
jbe 0x202215a9
mov rax, qword [rbp + 0x190]
mov r13, qword [rax]
add rcx, r13
mov r9, qword [0x20530718]
mov eax, dword [0x20530704]
sub eax, dword [rbp + 0x19c]
cdqe
add rax, r9
call qword [case.0x200c7fcc.0]
mov byte [r13 + rsi], 0
nop
mov rax, qword [rbp + 0x130]
mov rax, qword [rbp + rax + 0xd0]
mov rcx, r14
movabs rdx, 0x8c8d8a6dc8d8a6a
xor rcx, rdx
cmp rax, rcx
jbe 0x20221742
nop
mov rcx, qword [r12]
mov rdx, rax
xor rdx, 1
mov r8, rax
not r8
movabs r9, 0x7ffffffffffffffe
and r9, r8
or r9, rdx
not r9
add r9, r9
xor rdx, r9
and r9, rax
lea rdx, [rdx + r9*2]
movabs r9, 0x8c8d8a658c8d859a
xor r9, qword [rbp + 0x180]
cmp rdx, r9
jbe 0x20221715
nop
mov r9, qword [rcx - 8]
movabs rdx, 0xdcdc9d663372759d
xor rdx, r15
movabs r10, 0xe73cf2ae2121fc51
xor r10, r14
add r10, rdx
movabs rdx, 0x7dfcf8ac2776e345
xor rdx, qword [rbp + 0x158]
add rdx, r10
movabs r10, 0x910c13d8ede03ae
mov rsi, qword [rbp + 0x170]
xor r10, rsi
movabs r11, 0x4ebfcd50f0891cba
xor r11, qword [rbp + 0x178]
add r11, r10
add r11, rcx
add r11, rdx
sub r11, r9
add r11, 2
cmp r11, qword [rbp + 0x88]
jae 0x20223c45
movabs rcx, 0xe6e4eb35737275b2
xor rcx, rsi
movabs rdx, 0x23236299cc8d8a4d
xor rdx, r15
and rdx, r8
and rcx, rax
or rcx, rdx
movabs rdx, 0x1b93acd7737275b2
xor rdx, qword [rbp + 0x160]
xor rax, qword [rbp + 0x180]
movabs r10, 0xc8d8a658c8d8a4d
xor r10, rax
and rdx, r8
or rdx, r10
not rdx
lea rdx, [rcx + rdx*2]
mov rcx, r9
nop
mov r8d, dword [rbp + 0x198]
xor r8d, 0x4d4c5ae2
mov r9, qword [0x20530730]
mov eax, dword [0x20530700]
sub eax, dword [rbp + 0x19c]
cdqe
add rax, r9
call qword [case.0x200c7fcc.0]
movabs rax, 0x8c8d8a658c8d8a45
xor rax, qword [rbp + 0x180]
mov rcx, qword [rbp + 0x178]
movabs rdx, 0xc8d8a6508c8d8a6a
xor rcx, rdx
mov r8, qword [rbp + 0x190]
cmp qword [rbp + rax + 0xf8], rcx
jbe 0x20221782
mov rax, qword [rbp + 0x190]
mov r8, qword [rax]
movabs rax, 0x323629948c8d8a45
xor rax, rdi
mov rcx, rdi
movabs rdx, 0x323629948c8d8a6a
xor rcx, rdx
mov rdx, qword [rbp + 0x68]
cmp qword [rbp + rax - 0x28], rcx
jbe 0x202217b1
mov rax, qword [rbp + 0x68]
mov rdx, qword [rax]
lea rcx, [rbp + 0x28]
call fcn.2020ef80
nop
mov rax, qword [rbp + 0x138]
mov rax, qword [rbp + rax + 0xf8]
mov rcx, qword [rbp + 0x158]
movabs rdx, 0x4646c53a48d8a6a
xor rcx, rdx
cmp rax, rcx
jbe 0x20221931
nop
mov rcx, qword [rbp + 0x190]
mov rcx, qword [rcx]
movabs rdx, 0x969378dde0d6c938
mov r9, qword [rbp + 0x178]
xor rdx, r9
mov r8, rax
sub r8, rdx
movabs rdx, 0x7d68bc14a0d6c938
xor rdx, r15
add rdx, r8
inc rdx
movabs r8, 0xc8d8a6508c8d859a
xor r8, r9
cmp rdx, r8
jbe 0x20221904
nop
mov r8, qword [rcx - 8]
movabs rdx, 0xf5325bc9f55e46a
xor rdx, r9
sub rcx, rdx
movabs rdx, 0xcdc9d66b7372759d
xor rdi, rdx
xor rdi, rcx
movabs rdx, 0x7372759a7372759d
xor rdx, qword [rbp + 0x180]
and rdx, rcx
lea rcx, [rdi + rdx*2]
movabs rdx, 0x784b67fc1427e177
xor rdx, qword [rbp + 0x148]
movabs r9, 0x1d2ec057d427e177
xor r15, r9
and r15, rcx
xor rcx, rdx
movabs r9, 0xe0fa84586c28c84f
mov r10, qword [rbp + 0xc0]
xor r10, r9
movabs r9, 0xde9097269f55e46a
mov r11, qword [rbp + 0x170]
xor r9, r11
add r9, r10
movabs r10, 0x178fde2133d737b0
xor r10, r11
sub r9, rdx
add r9, r10
add r9, rcx
lea rcx, [r9 + r15*2]
sub rcx, r8
inc rcx
cmp rcx, qword [rbp + 0xa0]
jae 0x20223c31
movabs rcx, 0x8c8d8a6dc8d8a4d
xor r14, rcx
add rax, r14
mov rdx, rax
mov rcx, r8
nop
mov r8d, dword [rbp + 0x198]
xor r8d, 0x4d4c5ae2
mov r9, qword [0x20530730]
mov eax, dword [0x20530700]
sub eax, dword [rbp + 0x19c]
cdqe
add rax, r9
call qword [case.0x200c7fcc.0]
mov al, 1
mov dword [rbp + 0x80], eax
jmp 0x2021fda7
mov esi, dword [rbp + 0x198]
mov ecx, esi
xor ecx, 0xd02eac17
mov r9d, esi
xor r9d, 0x8c8d8a6e
mov r10d, esi
xor r10b, 0x3f
mov r11d, esi
xor r11b, 0xc0
xor esi, 0x8c8d8a6f
xor edx, edx
lea rbx, [0x20530150]
lea r14, [0x2041f0c0]
xor r11b, r10b
lea eax, [rdx + rcx]
movsxd r13, edx
mov r15d, edx
xor edx, edx
div r9d
movsxd rax, edx
movzx eax, byte [rax + r14]
and al, r11b
xor al, r10b
add byte [r13 + rbx], al
not r15d
xor r13d, 1
and r15d, 0x7ffffffe
or r15d, r13d
add r15d, r15d
neg r15d
lea edx, [r15 + r13]
add edx, 0xfffffffe
cmp edx, esi
jl 0x2022197d
nop
xchg byte [0x2053015a], r8b
movabs rbx, 0x323629948c8d8a6c
xor rbx, rdi
mov rcx, qword [0x20530720]
mov eax, dword [0x205306e4]
sub eax, dword [rbp + 0x19c]
cdqe
add rax, rcx
lea rdx, [0x20530150]
mov r14, qword [rbp + 0x138]
mov rcx, r14
mov r8, rbx
call qword [case.0x200c7fcc.0]
movabs rax, 0x323629948c8d8a74
xor rax, rdi
mov byte [rbp + rax + 0xd0], 0
lea rax, [0x20411008]
mov qword [rbp + 0xd0], rax
mov rsi, qword [rbp + 0x190]
movabs rax, 0x1191b14c2c8d8a6a
xor rsi, rax
mov rdx, r14
mov rax, qword [rbp + 0x150]
cmp qword [rbp + rax + 0xd0], rsi
jbe 0x20221a61
mov rax, qword [rbp + 0xc8]
mov rdx, qword [rbp + rax + 0xd0]
mov r13, qword [rbp + 0xc8]
add r13, r12
movabs rax, 0x4646c5320c8d8a7d
xor rax, qword [rbp + 0x148]
mov rcx, qword [r12 + rax]
movabs r8, 0x73d7bab77286e59b
mov r15, qword [rbp + 0x170]
xor r8, r15
movabs r9, 0x19bedbe78d791a64
mov r14, qword [rbp + 0x180]
xor r9, r14
add r9, r8
movabs r8, 0xb347fdaaa321db60
mov r11, qword [rbp + 0x178]
xor r8, r11
movabs r10, 0x8004c85674de249f
xor r10, qword [rbp + 0x158]
add r10, r8
movabs r8, 0x8c8d8a658c8d8a45
xor r8, r14
mov r8, qword [r12 + r8]
add r10, r9
sub r10, rcx
lea r9, [r10 + r8]
add r9, 2
mov r10, qword [rbp + 0x160]
movabs r14, 0x646c53288c8d8a6c
xor r10, r14
cmp r9, r10
jae 0x20221b45
movabs r9, 0xc8d8a6508c8d8a6c
xor r9, r11
movabs r8, 0x191b14ca8c8d8a6c
xor r8, r15
nop
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], r13
mov qword [rsp + 0x30], 0
mov ecx, 0xcec8d940
call fcn.20226dd0
jmp 0x20221b94
lea r14, [rcx + rbx]
mov qword [r12 + rax], r14
movabs rax, 0x323629948c8d8a6a
xor rdi, rax
cmp r8, rdi
jbe 0x20221b68
mov rdi, r13
mov rdi, qword [r13]
jmp 0x20221b6b
mov rdi, r13
add rcx, rdi
mov r8, qword [0x20530718]
mov eax, dword [0x20530704]
sub eax, dword [rbp + 0x19c]
cdqe
add rax, r8
mov r8, rbx
call qword [case.0x200c7fcc.0]
mov byte [rdi + r14], 0
nop
mov rax, qword [rbp + 0x150]
mov rax, qword [rbp + rax + 0xd0]
cmp rax, rsi
jbe 0x20221c6a
nop
mov rcx, qword [rbp + 0x138]
mov rcx, qword [rcx]
lea rdx, [rax + 1]
movabs r8, 0x4646c5320c8d859a
xor r8, qword [rbp + 0x148]
cmp rdx, r8
jbe 0x20221c3d
nop
mov r8, qword [rcx - 8]
mov rdx, qword [rbp + 0x158]
xor rdx, rcx
movabs r9, 0xfb9b93ac5b72759d
xor r9, rdx
movabs rdx, 0x1b93acd77372759d
xor rdx, qword [rbp + 0x160]
and rdx, rcx
lea rcx, [r9 + rdx*2]
sub rcx, r8
movabs rdx, 0x1191b14c2c8d8a45
xor rdx, qword [rbp + 0x190]
cmp rcx, rdx
jae 0x20223c4a
movabs rcx, 0x4646c5320c8d8a4d
xor rcx, qword [rbp + 0x148]
add rax, rcx
mov rdx, rax
mov rcx, r8
nop
mov r8d, dword [rbp + 0x198]
xor r8d, 0x4d4c5ae2
mov r9, qword [0x20530730]
mov eax, dword [0x20530700]
sub eax, dword [rbp + 0x19c]
cdqe
add rax, r9
call qword [case.0x200c7fcc.0]
nop
mov rax, qword [rbp + 0x188]
mov r9, rax
shl r9, 0x22
or r9, rax
movabs rax, 0x323629948c8d8a45
xor rax, r9
mov rax, qword [rbp + rax + 0xf8]
mov rcx, qword [rbp + 0x180]
movabs rdx, 0x8c8d8a658c8d8a6a
xor rcx, rdx
cmp rax, rcx
jbe 0x20221e2a
nop
mov rcx, qword [rbp + 0xb8]
mov rcx, qword [rbp + rcx + 0xf8]
mov rdx, rax
xor rdx, 1
mov r8d, eax
and r8d, 1
movabs r10, 0xfe3221c5d4520b3b
xor r10, r9
movabs r11, 0x226a46e28badf4c4
xor r11, qword [rbp + 0x190]
add r11, r10
add r11, rdx
lea rdx, [r11 + r8*2]
inc rdx
movabs r8, 0x4646c53a48d859a
mov rsi, qword [rbp + 0x158]
xor r8, rsi
cmp rdx, r8
jbe 0x20221dfd
nop
mov r8, qword [rcx - 8]
movabs rdx, 0x82a763fad17eb3ab
xor rdx, qword [rbp + 0x180]
movabs r10, 0xf5b17a3306814c54
xor r10, rsi
add r10, rdx
movabs rdx, 0xcdc9d66b7372759d
xor r9, rdx
mov r11, qword [rbp + 0x188]
mov rdx, r11
shl rdx, 0x1c
xor rdx, r11
movabs r11, 0xed46b1fb06762536
xor r11, rdx
add r11, r10
movabs r10, 0x1e15faf18189dac9
xor r10, rsi
add r10, r9
add r10, rcx
add r10, r11
sub r10, r8
add r10, 2
movabs rcx, 0xc8d8a6508c8d8a45
mov r11, qword [rbp + 0x178]
xor rcx, r11
cmp r10, rcx
jae 0x20223c2c
movabs rcx, 0x7478bcfaf95f8ce9
xor rcx, qword [rbp + 0x148]
movabs r9, 0xc8d8a6508c8d8a4d
xor r9, r11
add r9, rcx
movabs rcx, 0x519206786a07316
xor rcx, r11
movabs r10, 0xae7594a38b369d08
xor r10, rsi
add r10, r9
movabs r9, 0x5d26dfa90cc962f7
xor rdx, r9
add rdx, rcx
add rdx, rax
add rdx, r10
add rdx, 2
mov rcx, r8
nop
mov r8d, dword [rbp + 0x198]
xor r8d, 0x4d4c5ae2
mov r9, qword [0x20530730]
mov eax, dword [0x20530700]
sub eax, dword [rbp + 0x19c]
cdqe
add rax, r9
call qword [case.0x200c7fcc.0]
nop
mov rcx, qword [0x20530738]
mov eax, dword [0x205306f8]
sub eax, dword [rbp + 0x19c]
cdqe
add rax, rcx
lea rcx, [rbp + 0x16f]
call qword [case.0x200c7fcc.0]
nop
mov rdx, qword [rbp + 0x210]
movabs rax, 0x4646c5320c8d8a6d
xor rax, qword [rbp + 0x148]
mov qword [rbp + 0x128], rax
mov r8, qword [rbp + 0x188]
mov rcx, r8
shl rcx, 0x1c
xor rcx, r8
movabs rax, 0x8c8d8a6dc8d8a7d
mov qword [rbp + 0x140], rcx
xor rax, rcx
mov qword [rbp + 0x70], rax
cmp qword [rdx + rax], 0
je 0x2022239b
nop
mov rax, qword [rbp + 0xb0]
mov rbx, qword [rax]
mov rdx, qword [rbp + 0x180]
mov rcx, rdx
movabs rax, 0x8c8d8a658c8d8a6d
xor rcx, rax
lea r12, [rcx + rbp]
add r12, 0xf8
mov rdi, r8
shl rdi, 0x22
or rdi, r8
mov rax, rdi
movabs r8, 0x323629948c8d8a7d
xor rax, r8
mov r8, qword [rbp + 0x130]
mov r9, qword [rbp + 0x98]
mov qword [rbp + r8 + 0xf8], r9
mov qword [rbp + rax + 0xf8], 2
mov eax, dword [rbp + 0x198]
xor eax, 0xaa49
mov word [rbp + rcx + 0xf8], ax
movabs rax, 0x8c8d8a658c8d8a6f
xor rax, rdx
mov byte [rbp + rax + 0xf8], 0
lea rax, [0x20411008]
mov qword [rbp + 0xf8], rax
movabs r14, 0x8c8d8a6dc8d8a6d
xor r14, qword [rbp + 0x140]
mov rsi, qword [rbp + 0x190]
movabs rax, 0x1191b14c2c8d8a6a
xor rsi, rax
mov rax, r12
cmp qword [rbp + r8 + 0xf8], rsi
jbe 0x20221f7d
mov rax, qword [rbp + rcx + 0xf8]
add r14, rbx
movabs r11, 0x191b14ca8c8d8a7d
xor r11, qword [rbp + 0x170]
mov rcx, qword [rbx + r11]
movabs r13, 0x323629948c8d8a45
xor r13, rdi
mov rdx, qword [rbx + r13]
mov r8, rdx
sub r8, rcx
cmp r8, 2
jae 0x20221fe3
mov r15, r11
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r14
mov qword [rsp + 0x30], 0
mov r8d, 2
mov r9d, 2
mov ecx, 0xcec8d940
call fcn.20226dd0
jmp 0x20222075
movabs r9, 0x311dc93b1273b996
xor r9, qword [rbp + 0x178]
movabs r10, 0x8836161296aa8645
xor r10, rdi
movabs r8, 0x17ab21d84d8c4669
xor r8, qword [rbp + 0x190]
add r8, r9
movabs r9, 0x3b9054be95579ba
xor r9, qword [rbp + 0x148]
add r8, r10
add r8, r9
lea r9, [rcx + r8]
add r9, 4
add r8, rcx
mov r15, r11
mov qword [rbx + r11], r9
mov r9, qword [rbp + 0x188]
mov r10, r9
shl r10, 0x1e
xor r10, r9
movabs r9, 0x23236299cc8d8a6a
xor r10, r9
mov r9, r14
cmp rdx, r10
jbe 0x20222067
mov r9, qword [r14]
movzx eax, word [rax]
mov word [r9 + rcx], ax
mov byte [r9 + r8 + 4], 0
nop
mov rax, qword [rbp + 0x128]
mov r9, qword [rbp + 0x210]
lea rdx, [r9 + rax]
mov rax, qword [rbp + 0x70]
mov r8, qword [r9 + rax]
mov rax, qword [rbp + 0x88]
mov rcx, qword [rbp + 0x98]
cmp qword [r9 + rax], rcx
jbe 0x202220a7
mov rdx, qword [rdx]
mov rcx, qword [rbx + r15]
mov rax, qword [rbx + r13]
movabs r9, 0x798bcbd31eba7853
xor r9, qword [rbp + 0x180]
mov r10, qword [rbp + 0x188]
mov r13, r10
shl r13, 0x1e
xor r13, r10
movabs r10, 0x29dadcd0a14587ac
xor r10, r13
add r10, r9
sub r10, rcx
lea r9, [r10 + rax]
inc r9
cmp r9, r8
jae 0x20222113
nop
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], r14
mov qword [rsp + 0x30], 0
mov ecx, 0xcec8d940
mov r9, r8
call fcn.20226dd0
jmp 0x20222158
mov r11, r15
mov r9, rcx
xor r9, r8
mov r10, rcx
and r10, r8
lea r15, [r9 + r10*2]
mov qword [rbx + r11], r15
cmp rax, rsi
jbe 0x20222132
mov r14, qword [r14]
add rcx, r14
mov r9, qword [0x20530718]
mov eax, dword [0x20530704]
sub eax, dword [rbp + 0x19c]
cdqe
add rax, r9
call qword [case.0x200c7fcc.0]
mov byte [r14 + r15], 0
nop
mov rax, qword [rbp + 0x130]
mov rax, qword [rbp + rax + 0xf8]
mov rcx, qword [rbp + 0x178]
movabs rdx, 0xc8d8a6508c8d8a6a
xor rcx, rdx
cmp rax, rcx
jbe 0x20222393
nop
mov rcx, qword [r12]
movabs rdx, 0x7f3035decf9cf228
xor rdx, rdi
movabs r8, 0x64db30620ec84479
mov r11, qword [rbp + 0x158]
xor r8, r11
movabs r9, 0x3e7469d030630dd7
xor r9, qword [rbp + 0x180]
add r9, r8
add r9, rdx
lea rdx, [rax + r9]
add rdx, 2
mov r8, rdx
xor r8, 1
and edx, 1
movabs r9, 0x5798059ed937bb86
xor r9, qword [rbp + 0x178]
add r9, r8
lea rdx, [r9 + rdx*2]
movabs r8, 0x646c53288c8d859a
mov rsi, qword [rbp + 0x160]
xor r8, rsi
cmp rdx, r8
jbe 0x20222366
mov rdx, r13
xor rdx, rcx
movabs r8, 0xd8c6f68b4e1e93c2
mov r14, qword [rbp + 0x140]
xor r8, r14
movabs r9, 0x8aa5429f85aab84d
xor r9, rdi
add r9, r8
movabs r8, 0x12a51c6fa5547b2
mov rbx, qword [rbp + 0x148]
xor r8, rbx
movabs r10, 0x318dbc489df0e957
xor r10, r11
add r10, r8
movabs r11, 0x141d0f5ddd7518ab
xor r11, rbx
add r10, r9
movabs r8, 0xe409b9d6caddf0e7
xor r8, qword [rbp + 0x170]
add r8, r11
movabs r9, 0xf82006704a0f16a8
xor r9, rdi
add r8, r9
add r8, r10
movabs r9, 0xcd2b34ba1e16c3d
xor r9, r13
movabs r10, 0xdcdc9d663372759d
xor r10, r13
movabs r11, 0x668101cb35220f18
xor r11, rsi
add r10, r11
movabs r11, 0x8e875709e28ae754
xor r11, rdx
add r11, r9
add r11, r10
movabs rdx, 0x1f921c04a28ae754
xor rdx, rdi
and rdx, rcx
lea rdx, [r11 + rdx*2]
mov rcx, qword [rcx - 8]
add rdx, r8
sub rdx, rcx
add rdx, 5
mov r8, r14
movabs r9, 0x8c8d8a6dc8d8a45
xor r8, r9
cmp rdx, r8
jae 0x20223c18
movabs rdx, 0x7ad0bab570c48d91
mov r10, qword [rbp + 0x190]
xor rdx, r10
movabs r8, 0x18337e632f3b726e
xor r8, qword [rbp + 0x180]
add r8, rdx
movabs rdx, 0x2d1e8620fcb8551a
xor rdx, r14
movabs r9, 0xe81f88ed5347aae5
xor rdi, r9
add rdi, r8
movabs r8, 0x1191b14c2c8d8a4d
xor r8, r10
add r8, rdx
add r8, rax
lea rdx, [rdi + r8]
add rdx, 2
nop
mov r8d, dword [rbp + 0x198]
xor r8d, 0x4d4c5ae2
mov r9, qword [0x20530730]
mov eax, dword [0x20530700]
sub eax, dword [rbp + 0x19c]
cdqe
add rax, r9
call qword [case.0x200c7fcc.0]
nop
mov r8, qword [rbp + 0x188]
nop
mov rax, qword [rbp + 0xb0]
mov r14, qword [rax]
mov rax, r8
shl rax, 0x22
or rax, r8
movabs r11, 0x323629948c8d8a6d
mov qword [rbp + 0x150], rax
xor r11, rax
lea rbx, [r11 + rbp]
add rbx, 0xf8
movabs rax, 0x1191b14c2c8d8a6a
mov rdx, qword [rbp + 0x190]
xor rax, rdx
mov rcx, qword [rbp + 0x130]
mov qword [rbp + 0xc0], rax
mov qword [rbp + rcx + 0xf8], rax
mov rax, qword [rbp + 0x120]
mov qword [rbp + rax + 0xf8], 2
mov eax, dword [rbp + 0x198]
xor eax, 0xaa5f
mov word [rbp + r11 + 0xf8], ax
movabs rax, 0x1191b14c2c8d8a6f
xor rax, rdx
mov byte [rbp + rax + 0xf8], 0
lea rax, [0x20411008]
mov qword [rbp + 0xf8], rax
mov r13, qword [rbp + 0x178]
movabs rax, 0xc8d8a6508c8d8a6a
xor r13, rax
mov rax, rbx
cmp qword [rbp + rcx + 0xf8], r13
jbe 0x2022246c
mov rax, qword [rbp + r11 + 0xf8]
mov rdi, qword [rbp + 0x120]
mov rcx, qword [r14 + rdi]
movabs rdx, 0x55fd8fe8e737de1
xor rdx, qword [rbp + 0x160]
movabs r8, 0x8f1e9fb91e605ae8
xor r8, qword [rbp + 0x148]
add r8, rdx
movabs rdx, 0x1241fe4c718c821e
mov r10, qword [rbp + 0x180]
xor rdx, r10
movabs r9, 0x2fbcb1be619fa517
xor r9, qword [rbp + 0x170]
add r9, rdx
movabs r15, 0x8c8d8a658c8d8a45
xor r15, r10
add r9, r8
mov rdx, qword [r14 + r15]
sub r9, rcx
lea r8, [r9 + rdx]
add r8, 2
cmp r8, 2
mov qword [rbp + 0xc8], r11
lea rsi, [r14 + r11]
jae 0x20222520
nop
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rsi
mov qword [rsp + 0x30], 0
mov r8d, 2
mov r9d, 2
mov ecx, 0xcec8d940
call fcn.20226dd0
jmp 0x2022258b
movabs r9, 0x2664e5ea8129c030
xor r9, qword [rbp + 0x140]
movabs r8, 0xc0c273ff8ed63fcf
xor r8, qword [rbp + 0x190]
add r8, r9
lea r9, [rcx + r8]
add r9, 3
add r8, rcx
mov qword [r14 + rdi], r9
mov r9, qword [rbp + 0x188]
mov r10, r9
shl r10, 0x1e
xor r10, r9
movabs r9, 0x23236299cc8d8a6a
xor r10, r9
mov r9, rsi
cmp rdx, r10
jbe 0x2022257d
mov r9, qword [rsi]
movzx eax, word [rax]
mov word [r9 + rcx], ax
mov byte [r9 + r8 + 3], 0
nop
mov rax, qword [rbp + 0x120]
mov r8, qword [rbp + rax]
mov rcx, qword [rbp + 0x158]
movabs rax, 0x4646c53a48d8a6a
xor rcx, rax
mov rdx, qword [rbp + 0x58]
mov rax, qword [rbp + 0x130]
mov qword [rbp + 0x138], rcx
cmp qword [rbp + rax], rcx
jbe 0x202225cc
mov rax, qword [rbp + 0x58]
mov rdx, qword [rax]
mov r11, qword [rbp + 0x120]
mov rcx, qword [r14 + r11]
mov rax, qword [r14 + r15]
movabs r9, 0x56c4edad6d945298
xor r9, qword [rbp + 0x158]
movabs r10, 0x9f695795ba6bad67
xor r10, qword [rbp + 0x150]
add r10, r9
sub r10, rcx
lea r9, [r10 + rax]
inc r9
cmp r9, r8
jae 0x20222632
nop
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], rsi
mov qword [rsp + 0x30], 0
mov ecx, 0xcec8d940
mov r9, r8
call fcn.20226dd0
jmp 0x20222667
lea rdi, [rcx + r8]
mov qword [r14 + r11], rdi
cmp rax, r13
jbe 0x20222642
mov rsi, qword [rsi]
add rcx, rsi
mov r9, qword [0x20530718]
mov eax, dword [0x20530704]
sub eax, dword [rbp + 0x19c]
cdqe
add rax, r9
call qword [case.0x200c7fcc.0]
mov byte [rsi + rdi], 0
nop
mov rax, qword [rbp + 0x130]
mov rax, qword [rbp + rax + 0xf8]
cmp rax, qword [rbp + 0x138]
jbe 0x202227d2
nop
mov rcx, qword [rbx]
mov rdx, rax
xor rdx, 1
mov r8, rax
not r8
movabs r9, 0x7ffffffffffffffe
and r9, r8
or r9, rdx
not r9
lea rdx, [rdx + r9*2]
movabs r8, 0x4646c53a48d859a
xor r8, qword [rbp + 0x158]
cmp rdx, r8
jbe 0x202227a5
nop
mov r8, qword [rcx - 8]
movabs rdx, 0xda0b541109cfbf5c
mov r10, qword [rbp + 0x178]
xor rdx, r10
movabs r9, 0x89405e96f63040a3
xor r9, qword [rbp + 0x160]
add r9, rdx
sub r9, rcx
inc r9
movabs rcx, 0x648d09e404477bec
xor rcx, r10
movabs rdx, 0xc8d8a6508c8d8a62
xor rdx, r10
add rdx, rcx
movabs rcx, 0x619c79dffbb88413
mov r10, qword [rbp + 0x150]
xor rcx, r10
add rcx, rdx
add rcx, 2
mov rdx, r9
xor rdx, rcx
and r9, rcx
add rdx, r8
lea rdx, [rdx + r9*2]
neg rdx
mov r9, qword [rbp + 0x188]
mov rcx, r9
shl rcx, 0x1e
xor rcx, r9
movabs r9, 0x23236299cc8d8a45
xor r9, rcx
cmp rdx, r9
jae 0x20223c09
movabs rdx, 0x4c692fd145e06e08
xor rdx, qword [rbp + 0x170]
movabs r9, 0x23236299cc8d8a4d
xor rcx, r9
add rcx, rdx
movabs rdx, 0x98bbed70ba1f91f7
xor rdx, r10
add rdx, rcx
add rdx, rax
inc rdx
mov rcx, r8
nop
mov r8d, dword [rbp + 0x198]
xor r8d, 0x4d4c5ae2
mov r9, qword [0x20530730]
mov eax, dword [0x20530700]
sub eax, dword [rbp + 0x19c]
cdqe
add rax, r9
call qword [case.0x200c7fcc.0]
nop
cmp byte [rbp + 0x80], 0
je 0x20222e3f
nop
mov rax, qword [rbp + 0xb0]
mov rbx, qword [rax]
mov rcx, qword [rbp + 0xb8]
lea rdx, [rcx + rbp]
add rdx, 0xf8
mov r12, qword [rbp + 0x140]
movabs rax, 0x8c8d8a6dc8d8a45
xor r12, rax
mov rax, qword [rbp + 0xc0]
mov qword [rbp + r12 + 0xf8], rax
mov rax, qword [rbp + 0x70]
mov qword [rbp + rax + 0xf8], 1
mov eax, dword [rbp + 0x198]
xor al, 0x45
mov byte [rbp + rcx + 0xf8], al
movabs rax, 0x1191b14c2c8d8a6c
xor rax, qword [rbp + 0x190]
mov byte [rbp + rax + 0xf8], 0
lea rax, [0x20411008]
mov qword [rbp + 0xf8], rax
mov qword [rbp + 0x120], rdx
mov rax, rdx
mov rdx, qword [rbp + 0x138]
cmp qword [rbp + r12 + 0xf8], rdx
jbe 0x20222889
mov rax, qword [rbp + rcx + 0xf8]
mov rsi, qword [rbp + 0x128]
add rsi, rbx
mov r11, qword [rbp + 0xa8]
mov rcx, qword [rbx + r11]
movabs r15, 0x4646c5320c8d8a45
mov r10, qword [rbp + 0x148]
xor r15, r10
mov rdx, qword [rbx + r15]
cmp rdx, rcx
nop
mov qword [rbp + 0x128], rsi
jne 0x202228f2
nop
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rsi
mov qword [rsp + 0x30], 0
mov r8d, 1
mov r9d, 1
mov ecx, 0xcec8d940
call fcn.20226dd0
jmp 0x2022298b
nop
mov r9, qword [rbp + 0x188]
mov r8, r9
shl r8, 0x1e
xor r8, r9
movabs r9, 0xf48e24516cb06b67
xor r9, r8
movabs r8, 0x558899139b488c3b
xor r8, r10
movabs r10, 0xe08a1f67d34f9498
xor r10, qword [rbp + 0x178]
add r10, r8
add r10, r9
movabs r8, 0x885df0f6e4b773c4
xor r8, qword [rbp + 0x160]
add r8, r10
lea r9, [rcx + r8]
add r9, 3
add r8, rcx
mov qword [rbx + r11], r9
mov r10, qword [rbp + 0x150]
movabs r9, 0x323629948c8d8a6a
xor r10, r9
mov r9, rsi
cmp rdx, r10
jbe 0x2022297e
mov rdx, qword [rbp + 0x128]
mov r9, qword [rdx]
movzx eax, byte [rax]
mov byte [r9 + rcx], al
mov byte [r9 + r8 + 3], 0
nop
mov rdx, qword [rbp + 0xc8]
lea r14, [rdx + rbp]
add r14, 0xd0
mov rdi, qword [rbp + 0xa8]
mov qword [rbp + rdi + 0xd0], 0
mov rax, qword [rbp + 0x180]
movabs rcx, 0x8c8d8a658c8d8a6a
xor rax, rcx
mov rcx, qword [rbp + 0x130]
mov qword [rbp + rcx + 0xd0], rax
mov byte [rbp + rdx + 0xd0], 0
mov edx, dword [rbp + 0x198]
xor edx, 0x145ddd92
mov rcx, qword [0x20530750]
mov eax, dword [0x205306fc]
mov esi, dword [rbp + 0x19c]
sub eax, esi
cdqe
add rax, rcx
lea rcx, [0x205734d0]
call qword [case.0x200c7fcc.0]
cmp rax, r13
jbe 0x20222a28
lea r9, [0x205734d0]
mov rcx, r14
mov rdx, rax
call fcn.20069620
jmp 0x20222a64
nop
mov qword [rbp + rdi + 0xd0], rax
mov rcx, qword [0x20530720]
mov edx, dword [0x205306e4]
sub edx, esi
movsxd r9, edx
add r9, rcx
lea rdx, [0x205734d0]
mov rcx, r14
mov r8, rax
mov rsi, rax
mov rax, r9
call qword [case.0x200c7fcc.0]
mov byte [r14 + rsi], 0
lea rax, [0x20411008]
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xa8]
mov r8, qword [rbp + rax + 0xd0]
mov rdx, r14
mov rax, qword [rbp + 0x130]
cmp qword [rbp + rax + 0xd0], r13
jbe 0x20222a98
mov rdx, qword [r14]
mov rax, qword [rbx + r15]
mov r11, rax
neg r11
movabs rcx, 0xe849b6bfd31d5bc4
xor rcx, qword [rbp + 0x160]
lea r9, [rcx + 1]
mov r10, r9
xor r10, r11
and r9, r11
movabs r11, 0xb907cb5944104cdf
mov r15, qword [rbp + 0x190]
xor r11, r15
movabs rsi, 0x655fac7e1befb320
xor rsi, qword [rbp + 0x150]
add rsi, r11
movabs r11, 0x98de0a7577b25292
xor r11, qword [rbp + 0x170]
movabs rdi, 0x6fab500c284dad6d
xor rdi, r15
add rdi, r11
movabs r11, 0x741798594ecbe8af
xor r11, qword [rbp + 0x140]
add r11, rsi
movabs rsi, 0x92b10e4c41341750
xor rsi, r15
add rsi, rcx
inc rsi
add rsi, rdi
add rsi, r11
mov r11, qword [rbp + 0xa8]
mov rcx, qword [rbx + r11]
add r10, rcx
lea r9, [r10 + r9*2]
sub rsi, r9
add rsi, 3
cmp rsi, r8
jae 0x20222b86
nop
mov qword [rsp + 0x28], rdx
mov rax, qword [rbp + 0x128]
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x30], 0
mov ecx, 0xcec8d940
mov r9, r8
call fcn.20226dd0
nop
mov rdi, qword [rbp + 0x98]
jmp 0x20222bd3
lea rsi, [rcx + r8]
mov qword [rbx + r11], rsi
mov rdi, qword [rbp + 0x98]
cmp rax, rdi
jbe 0x20222ba6
mov r15, qword [rbp + 0x128]
mov r15, qword [r15]
jmp 0x20222bad
mov r15, qword [rbp + 0x128]
add rcx, r15
mov r9, qword [0x20530718]
mov eax, dword [0x20530704]
sub eax, dword [rbp + 0x19c]
cdqe
add rax, r9
call qword [case.0x200c7fcc.0]
mov byte [r15 + rsi], 0
nop
mov rax, qword [rbp + 0x90]
mov eax, dword [rax + 0x20]
nop
mov qword [rsp + 0x28], rax
mov ecx, 0xaea671cf
mov rdx, rbx
call fcn.20226dd0
nop
mov rax, qword [rbp + 0x130]
mov rax, qword [rbp + rax + 0xd0]
cmp rax, r13
jbe 0x20222d10
nop
mov rcx, qword [r14]
lea rdx, [rax + 1]
mov r9, qword [rbp + 0x188]
mov r8, r9
shl r8, 0x1e
xor r8, r9
movabs r9, 0x23236299cc8d859a
xor r9, r8
cmp rdx, r9
jbe 0x20222ce3
nop
mov r9, qword [rcx - 8]
movabs rdx, 0xee6e4eb3d372759d
xor rdx, qword [rbp + 0x190]
xor rdx, rcx
movabs r10, 0x4dc9d66b7372759d
mov rsi, qword [rbp + 0x150]
xor r10, rsi
and r10, rcx
movabs rcx, 0xf8dbc0e6cc4f3545
xor rcx, qword [rbp + 0x180]
movabs r11, 0x83616dda63b0caba
xor r11, qword [rbp + 0x140]
add r11, rcx
add r11, rdx
lea rcx, [r11 + r10*2]
sub rcx, r9
inc rcx
cmp rcx, qword [rbp + 0x88]
jae 0x20223c1d
movabs rcx, 0x52be327e633f2619
xor rcx, rsi
movabs rdx, 0x4646c5320c8d8a4d
xor rdx, qword [rbp + 0x148]
add rdx, rcx
movabs rcx, 0xbc54868cdcc0d9e6
xor r8, rcx
add r8, rdx
lea rdx, [rax + r8]
inc rdx
mov rcx, r9
nop
mov r8d, dword [rbp + 0x198]
xor r8d, 0x4d4c5ae2
mov r9, qword [0x20530730]
mov eax, dword [0x20530700]
sub eax, dword [rbp + 0x19c]
cdqe
add rax, r9
call qword [case.0x200c7fcc.0]
nop
mov rax, qword [rbp + r12 + 0xf8]
cmp rax, rdi
jbe 0x20222e3f
nop
mov rcx, qword [rbp + 0x120]
mov rcx, qword [rcx]
movabs rdx, 0x62ad86364767549
mov r11, qword [rbp + 0x140]
xor rdx, r11
movabs r8, 0xb75b3a084b898ab6
xor r8, qword [rbp + 0x148]
add r8, rdx
lea rdx, [rax + r8]
add rdx, 2
mov r9, qword [rbp + 0x188]
mov r8, r9
shl r8, 0x1e
xor r8, r9
movabs r9, 0x23236299cc8d859a
xor r9, r8
cmp rdx, r9
jbe 0x20222e12
nop
mov r8, qword [rcx - 8]
movabs rdx, 0x9b93acd77372759d
xor rdx, qword [rbp + 0x160]
movabs r9, 0xde7b2c909efd7120
mov r10, qword [rbp + 0x170]
xor r9, r10
add r9, rdx
movabs rdx, 0x30571f0331028edf
xor rdx, r11
add rdx, r9
add rdx, rcx
sub rdx, r8
inc rdx
cmp rdx, r12
jae 0x20223c22
movabs rcx, 0x106cfecb992834d
xor rcx, r10
movabs rdx, 0x8c8d8a658c8d8a4d
xor rdx, qword [rbp + 0x180]
add rdx, rcx
movabs rcx, 0xd5d40d4d466d7cb2
xor rcx, qword [rbp + 0x150]
add rcx, rdx
lea rdx, [rax + rcx]
inc rdx
mov rcx, r8
nop
mov r8d, dword [rbp + 0x198]
xor r8d, 0x4d4c5ae2
mov r9, qword [0x20530730]
mov eax, dword [0x20530700]
sub eax, dword [rbp + 0x19c]
cdqe
add rax, r9
call qword [case.0x200c7fcc.0]
nop
mov rax, qword [rbp + 0xb0]
mov r13, qword [rax]
mov rax, qword [rbp + 0xc8]
add rax, rbp
add rax, 0xf8
mov qword [rbp + 0x90], rax
mov rax, qword [rbp + 0x188]
mov r12, rax
shl r12, 0x1e
xor r12, rax
movabs rdx, 0x23236299cc8d8a7d
xor rdx, r12
movabs rax, 0x8c8d8a6dc8d8a45
xor rax, qword [rbp + 0x140]
mov qword [rbp + 0x120], rax
mov rcx, qword [rbp + 0xc0]
mov qword [rbp + rax + 0xf8], rcx
movabs r8, 0x323629948c8d8a66
xor r8, qword [rbp + 0x150]
mov qword [rbp + rdx + 0xf8], r8
movzx eax, byte [0x20530174]
mov ecx, dword [rbp + 0x198]
mov r9d, ecx
xor r9b, 0xbe
cmp al, r9b
je 0x20222f85
mov eax, dword [rbp + 0x198]
mov ecx, eax
xor cl, 0x5a
mov edx, eax
xor dl, 0x71
nop dword [rax]
mov eax, ecx
lock cmpxchg byte [0x20530174], dl
je 0x20222f06
cmp al, r9b
jne 0x20222ef0
jmp 0x20222f85
mov r14d, dword [rbp + 0x198]
mov ecx, r14d
xor ecx, 0xae0d6046
mov r10d, r14d
xor r10d, 0x8c8d8a61
mov r11d, r14d
xor r11b, 0x3a
mov eax, r14d
xor eax, 0x811e34b
mov edx, r14d
xor edx, 0xf7ee1cb4
lea esi, [rax + rdx]
add esi, 2
xor r15d, r15d
lea rbx, [0x20530170]
lea rdi, [0x2041f0d0]
nop
lea eax, [rcx + r15]
xor edx, edx
div r10d
movsxd r15, r15d
movsxd rax, edx
movzx eax, byte [rax + rdi]
mov edx, eax
not dl
and dl, r11b
xor al, r14b
xor al, 0x3a
or al, dl
xor byte [r15 + rbx], al
add r15d, esi
cmp r15d, r10d
jl 0x20222f50
nop
xchg byte [0x20530174], r9b
nop
mov rcx, qword [0x20530720]
mov eax, dword [0x205306e4]
sub eax, dword [rbp + 0x19c]
cdqe
add rax, rcx
lea rdx, [0x20530170]
mov rsi, qword [rbp + 0x90]
mov rcx, rsi
call qword [case.0x200c7fcc.0]
movabs rax, 0x1191b14c2c8d8a6e
xor rax, qword [rbp + 0x190]
mov byte [rbp + rax + 0xf8], 0
lea rax, [0x20411008]
mov qword [rbp + 0xf8], rax
movabs rcx, 0x23236299cc8d8a6a
xor rcx, r12
mov rdx, rsi
mov rax, qword [rbp + 0x120]
mov r11, rcx
cmp qword [rbp + rax + 0xf8], rcx
jbe 0x2022300f
mov rax, qword [rbp + 0xc8]
mov rdx, qword [rbp + rax + 0xf8]
mov rdi, qword [rbp + 0xc8]
add rdi, r13
mov r10, qword [rbp + 0xa8]
mov rcx, qword [r13 + r10]
mov rax, qword [rbp + 0x120]
mov rax, qword [r13 + rax]
movabs r8, 0x4c01a808efd2ece5
xor r8, qword [rbp + 0x190]
movabs r9, 0x9059cf2fb02d131a
xor r9, qword [rbp + 0x150]
add r9, r8
sub r9, rcx
lea r8, [r9 + rax]
inc r8
movabs r9, 0x8c8d8a6dc8d8a66
xor r9, qword [rbp + 0x140]
cmp r8, r9
jae 0x202230b0
movabs r8, 0x191b14ca8c8d8a66
xor r8, qword [rbp + 0x170]
nop
mov qword [rsp + 0x28], rdx
mov r14, rdi
mov qword [rsp + 0x20], rdi
mov qword [rsp + 0x30], 0
mov ecx, 0xcec8d940
mov r9, r8
call fcn.20226dd0
jmp 0x20223136
movabs r8, 0x249ae041013125d8
xor r8, qword [rbp + 0x170]
movabs r9, 0x646c53288c8d8a66
xor r9, qword [rbp + 0x160]
add r9, r8
movabs rsi, 0xe15d69edbeceda27
xor rsi, r12
add rsi, r9
lea r8, [rcx + rsi]
inc r8
add rsi, rcx
mov qword [r13 + r10], r8
mov r14, rdi
cmp rax, r11
jbe 0x202230ff
mov rdi, qword [r14]
add rcx, rdi
movabs r8, 0x1191b14c2c8d8a66
xor r8, qword [rbp + 0x190]
mov r9, qword [0x20530718]
mov eax, dword [0x20530704]
sub eax, dword [rbp + 0x19c]
cdqe
add rax, r9
call qword [case.0x200c7fcc.0]
mov byte [rdi + rsi + 1], 0
nop
mov rax, qword [rbp + 0xa8]
mov r8, qword [rbp + rax + 0x28]
mov rax, qword [rbp + 0x150]
movabs rcx, 0x323629948c8d8a6a
xor rax, rcx
mov rdx, qword [rbp + 0x60]
mov rcx, qword [rbp + 0xa0]
cmp qword [rbp + rcx + 0x28], rax
jbe 0x20223170
mov rcx, qword [rbp + 0x60]
mov rdx, qword [rcx]
mov rbx, qword [rbp + 0xa8]
mov rcx, qword [r13 + rbx]
mov r9, qword [rbp + 0x120]
mov r9, qword [r13 + r9]
movabs r10, 0xe8f03a9bf08961a4
xor r10, qword [rbp + 0x158]
movabs r11, 0x552d6c05a7769e5b
xor r11, qword [rbp + 0x148]
add r11, r10
sub r11, rcx
lea r10, [r11 + r9]
inc r10
cmp r10, r8
jae 0x202231df
nop
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], r14
mov qword [rsp + 0x30], 0
mov ecx, 0xcec8d940
mov r9, r8
call fcn.20226dd0
jmp 0x20223254
mov r10, rcx
xor r10, r8
mov r11, rcx
and r11, r8
movabs rsi, 0xd49bfaf994565065
xor rsi, qword [rbp + 0x170]
movabs rdi, 0x561342e46ba9af9a
xor rdi, qword [rbp + 0x160]
add rdi, rsi
add rdi, r10
lea rsi, [rdi + r11*2]
lea r10, [rdi + r11*2]
inc r10
mov qword [r13 + rbx], r10
mov rdi, r14
cmp r9, rax
jbe 0x2022322e
mov rdi, qword [r14]
add rcx, rdi
mov r9, qword [0x20530718]
mov eax, dword [0x20530704]
sub eax, dword [rbp + 0x19c]
cdqe
add rax, r9
call qword [case.0x200c7fcc.0]
mov byte [rdi + rsi + 1], 0
nop
mov rax, qword [rbp + 0x140]
movabs rcx, 0x8c8d8a6dc8d8a6a
xor rax, rcx
mov rcx, qword [rbp + 0x130]
mov qword [rbp + rcx + 0xd0], rax
movabs rax, 0x323629948c8d8a7d
xor rax, qword [rbp + 0x150]
mov qword [rbp + rax + 0xd0], 1
movabs rcx, 0x8c8d8a658c8d8a6d
xor rcx, qword [rbp + 0x180]
mov eax, dword [rbp + 0x198]
xor al, 0x4b
mov byte [rbp + rcx + 0xd0], al
lea rsi, [rcx + rbp]
add rsi, 0xd0
movabs rax, 0x646c53288c8d8a6c
xor rax, qword [rbp + 0x160]
mov byte [rbp + rax + 0xd0], 0
lea rax, [0x20411008]
mov qword [rbp + 0xd0], rax
mov r8, qword [rbp + 0xa8]
mov rax, qword [r13 + r8]
mov rcx, qword [rbp + 0x120]
mov rcx, qword [r13 + rcx]
cmp rcx, rax
jne 0x20223330
nop
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x20], r14
mov qword [rsp + 0x30], 0
mov r8d, 1
mov r9d, 1
mov ecx, 0xcec8d940
call fcn.20226dd0
jmp 0x2022334f
lea rdx, [rax + 1]
mov qword [r13 + r8], rdx
cmp rcx, qword [rbp + 0x78]
jbe 0x20223342
mov r14, qword [r14]
movzx ecx, byte [rsi]
mov byte [r14 + rax], cl
mov byte [r14 + rax + 1], 0
nop
mov rax, qword [rbp + 0x130]
mov rax, qword [rbp + rax + 0xd0]
movabs rcx, 0x8c8d8a658c8d8a6a
xor rcx, qword [rbp + 0x180]
cmp rax, rcx
jbe 0x202234aa
nop
mov rcx, qword [rsi]
movabs rdx, 0x814bfe7be7058685
xor rdx, qword [rbp + 0x178]
movabs r8, 0xbea47f7248fa797a
xor r8, qword [rbp + 0x140]
add r8, rdx
movabs rdx, 0xb718976b76414a34
mov r11, qword [rbp + 0x160]
xor rdx, r11
movabs r9, 0x6acdfe8e09beb5cb
xor r9, qword [rbp + 0x148]
add r9, r8
movabs r8, 0x50e11578ccce689c
mov rsi, qword [rbp + 0x158]
xor r8, rsi
movabs r10, 0x994caf401b319763
mov rdi, qword [rbp + 0x150]
xor r10, rdi
add r10, r8
add rdx, rax
add rdx, r10
add rdx, r9
add rdx, 4
movabs r8, 0x323629948c8d859a
xor r8, rdi
cmp rdx, r8
jbe 0x2022347d
nop
mov r8, qword [rcx - 8]
movabs rdx, 0x1b93acd77372759d
xor rdx, r11
movabs r9, 0xfb9b93ac5b72759d
xor r9, rsi
mov r10, r11
xor r10, r9
movabs r11, 0x646c53288c8d8a62
xor r11, r10
and r11, rcx
xor r11, r9
and rdx, rcx
lea rcx, [r11 + rdx*2]
sub rcx, r8
cmp rcx, qword [rbp + 0xa0]
jae 0x20223c0e
movabs rcx, 0x8c8d8a658c8d8a4d
xor rcx, qword [rbp + 0x180]
add rax, rcx
mov rdx, rax
mov rcx, r8
nop
mov r8d, dword [rbp + 0x198]
xor r8d, 0x4d4c5ae2
mov r9, qword [0x20530730]
mov eax, dword [0x20530700]
sub eax, dword [rbp + 0x19c]
cdqe
add rax, r9
call qword [case.0x200c7fcc.0]
nop
mov rax, qword [rbp + 0x120]
mov rax, qword [rbp + rax + 0xf8]
cmp rax, qword [rbp + 0x138]
jbe 0x20223643
nop
mov rcx, qword [rbp + 0x90]
mov rcx, qword [rcx]
lea rdx, [rax + 1]
movabs r8, 0x23236299cc8d859a
xor r8, r12
cmp rdx, r8
jbe 0x20223616
movabs r8, 0xa3878149e390d355
xor r8, qword [rbp + 0x170]
movabs r9, 0x4107062f346f2caa
xor r9, qword [rbp + 0x158]
movabs rdx, 0x1c7085894c838e82
xor rdx, qword [rbp + 0x180]
add rdx, r8
movabs r8, 0xb6ea33bb37c717d
mov r11, qword [rbp + 0x160]
xor r8, r11
add r8, r9
movabs r9, 0x9407012bd013e9e7
mov rsi, qword [rbp + 0x150]
xor rsi, r9
mov r10, qword [rbp + 0x190]
mov r9, r10
xor r9, rcx
add rsi, r8
movabs r8, 0xee6e4eb3d372759d
xor r8, r9
movabs r9, 0x38a8b3072968f4ab
xor r12, r9
add r12, r8
movabs r8, 0xf5e59f2d36970b54
xor r8, r10
movabs r9, 0x911671102fec1618
mov r10, qword [rbp + 0x178]
xor r9, r10
add r8, r9
add r8, rdx
add r8, rsi
movabs rdx, 0x773727592372759d
mov r9, qword [rbp + 0x140]
xor rdx, r9
and rdx, rcx
lea rdx, [r12 + rdx*2]
mov rcx, qword [rcx - 8]
add rdx, r8
sub rdx, rcx
add rdx, 4
movabs r8, 0xc8d8a6508c8d8a45
xor r8, r10
cmp rdx, r8
jae 0x20223c13
movabs rdx, 0xc8d8a6508c8d8a4d
xor rdx, r10
movabs r8, 0x49caaa374fb3593f
xor r9, r8
add r9, rdx
movabs rdx, 0xda91de46e04ca6c0
xor rdx, r11
add rdx, r9
add rdx, rax
inc rdx
nop
mov r8d, dword [rbp + 0x198]
xor r8d, 0x4d4c5ae2
mov r9, qword [0x20530730]
mov eax, dword [0x20530700]
sub eax, dword [rbp + 0x19c]
cdqe
add rax, r9
call qword [case.0x200c7fcc.0]
nop
mov rsi, qword [rbp + 0xb0]
nop
mov rdi, qword [rsi]
movabs rax, 0x191b14ca8c8d8a6d
xor rax, qword [rbp + 0x170]
mov rcx, qword [rbp + 0xa0]
mov rcx, qword [rdi + rcx]
mov qword [rbp + 0x150], rcx
mov r13, rax
mov r12, qword [rdi + rax]
mov rax, qword [rbp + 0x130]
mov rax, qword [rbp + rax]
mov rcx, qword [rbp + 0x188]
mov r15, rcx
shl r15, 0x1c
xor r15, rcx
movabs rcx, 0x8c8d8a6dc8d8a6a
xor rcx, r15
cmp rax, rcx
jbe 0x20223856
nop
mov rcx, qword [rbp + 0x58]
mov rcx, qword [rcx]
mov rdx, rax
xor rdx, 1
mov r8, rax
not r8
movabs r9, 0x7ffffffffffffffe
and r9, r8
or r9, rdx
not r9
lea rdx, [rdx + r9*2]
movabs r8, 0x4646c53a48d859a
xor r8, qword [rbp + 0x158]
cmp rdx, r8
jbe 0x20223829
nop
mov r8, qword [rcx - 8]
mov r14, qword [rbp + 0x188]
mov rdx, r14
shl rdx, 0x1e
movabs r9, 0x60f8d212dce8ded6
xor r9, r14
xor r9, rdx
mov rdx, r14
shl rdx, 0x22
or rdx, r14
movabs r10, 0xcdc9d66b7372759d
xor r10, rdx
add r10, r9
movabs r9, 0xa53f5bbe63172129
xor r9, qword [rbp + 0x170]
movabs r11, 0x591e09ac8c60a94c
mov rbx, qword [rbp + 0x148]
xor r11, rbx
add r11, r10
add r9, rcx
add r9, r11
add r9, 2
movabs rcx, 0x7c0eb02aeb839bb3
xor rcx, rdx
xor rcx, r9
movabs rdx, 0x2a54ca96eb839bb3
mov rsi, qword [rbp + 0x160]
xor rdx, rsi
and rdx, r9
movabs r9, 0xf157684773bc66a9
xor r9, qword [rbp + 0x180]
movabs r10, 0x791fc011147c644c
xor r10, qword [rbp + 0x178]
add r10, r9
movabs r9, 0xc463d8ef0c439956
xor r9, rbx
movabs r11, 0x84cb6049f39f56b3
xor r11, rsi
add r11, r9
add r11, r10
add r11, rcx
lea rcx, [r11 + rdx*2]
sub rcx, r8
add rcx, 2
mov rdx, r14
shl rdx, 0x1d
movabs r9, 0x1191b14c2c8d8a45
xor r9, r14
xor r9, rdx
cmp rcx, r9
jae 0x20223bfa
mov rcx, r15
xor rcx, rax
movabs rdx, 0x8c8d8a6dc8d8a4d
xor rdx, rcx
movabs rcx, 0x4646c53a48d8a4d
xor rcx, qword [rbp + 0x158]
and rcx, rax
lea rdx, [rdx + rcx*2]
mov rcx, r8
nop
mov r8d, dword [rbp + 0x198]
xor r8d, 0x4d4c5ae2
mov r9, qword [0x20530730]
mov eax, dword [0x20530700]
sub eax, dword [rbp + 0x19c]
cdqe
add rax, r9
call qword [case.0x200c7fcc.0]
nop
mov rax, qword [rbp + 0x88]
mov rax, qword [rbp + rax - 0x28]
movabs rcx, 0x4646c53a48d8a6a
xor rcx, qword [rbp + 0x158]
cmp rax, rcx
jbe 0x202239e5
nop
mov rcx, qword [rbp + 0x68]
mov rcx, qword [rcx]
lea rdx, [rax + 1]
mov r11, qword [rbp + 0x188]
mov r9, r11
shl r9, 0x1d
xor r9, r11
movabs r8, 0x1191b14c2c8d859a
xor r8, r9
cmp rdx, r8
jbe 0x202239b8
nop
mov r8, qword [rcx - 8]
mov rdx, r11
shl rdx, 0x1e
movabs r10, 0xdcdc9d663372759d
xor r10, r11
xor r10, rdx
movabs r11, 0xc6fb8d7c82ab9eb3
mov r14, qword [rbp + 0x148]
xor r11, r14
movabs rdx, 0x6ed306fd5d54614c
xor r9, rdx
movabs rsi, 0x6789c407ad892f68
xor rsi, qword [rbp + 0x158]
add rsi, r9
movabs rdx, 0xcaf876750598f6cd
xor rdx, qword [rbp + 0x160]
movabs r9, 0x4870ce68fa670932
mov rbx, qword [rbp + 0x170]
xor r9, rbx
add r9, r10
add r9, r11
add rdx, rcx
add rdx, rsi
add rdx, r9
sub rdx, r8
add rdx, 3
movabs rcx, 0x850943617a76d097
xor rcx, rbx
xor rcx, rdx
movabs r9, 0x5a549299fa76d097
xor r9, r14
and r9, rdx
lea rcx, [rcx + r9*2]
movabs rdx, 0x8c8d8a658c8d8a45
mov r9, qword [rbp + 0x180]
xor rdx, r9
cmp rcx, rdx
jae 0x20223bff
movabs rcx, 0x19125957acab6712
xor rcx, r9
movabs rdx, 0x8c8d8a6dc8d8a4d
xor rdx, r15
add rdx, rcx
movabs rcx, 0xa2b88a9d535498ed
xor rcx, qword [rbp + 0x178]
add rcx, rdx
lea rdx, [rax + rcx]
inc rdx
mov rcx, r8
nop
mov r8d, dword [rbp + 0x198]
xor r8d, 0x4d4c5ae2
mov r9, qword [0x20530730]
mov eax, dword [0x20530700]
sub eax, dword [rbp + 0x19c]
cdqe
add rax, r9
call qword [case.0x200c7fcc.0]
lea rax, [0x2041f038]
mov qword [rbp + 0x28], rax
mov rcx, qword [rbp + 0x50]
test rcx, rcx
je 0x20223a24
nop
mov edx, dword [rbp + 0x198]
xor edx, 0x13f47f00
mov r8, qword [0x20530740]
mov eax, dword [0x205306f4]
sub eax, dword [rbp + 0x19c]
cdqe
add rax, r8
call qword [case.0x200c7fcc.0]
nop
mov rax, qword [rbp + 0xa0]
mov rax, qword [rbp + rax + 0x28]
mov rdx, qword [rbp + 0x188]
mov rcx, rdx
shl rcx, 0x22
or rcx, rdx
movabs rdx, 0x323629948c8d8a6a
xor rcx, rdx
cmp rax, rcx
jbe 0x20223bc1
nop
mov rcx, qword [rbp + 0x60]
mov rcx, qword [rcx]
movabs rdx, 0xe30d4a0d5010fcd2
mov rsi, qword [rbp + 0x158]
xor rdx, rsi
movabs r8, 0xea1b5c30c2ac52f2
xor r15, r8
add r15, rdx
movabs rdx, 0x18dcd6b87ef032d
mov rbx, qword [rbp + 0x170]
xor rdx, rbx
movabs r8, 0x794028416d53ad0d
mov r11, qword [rbp + 0x160]
xor r8, r11
add r8, r15
add rdx, rax
add rdx, r8
add rdx, 3
movabs r8, 0x646c53288c8d859a
xor r8, r11
cmp rdx, r8
jbe 0x20223b94
nop
mov r8, qword [rcx - 8]
mov r14, qword [rbp + 0x188]
mov r9, r14
shl r9, 0x1e
movabs r10, 0xfb9b93ac5b72759d
xor r10, rsi
movabs rdx, 0xaa24b6523f5dc216
xor rdx, qword [rbp + 0x178]
add rdx, r10
movabs r10, 0x28ddc9536cbac7d6
xor rbx, r10
movabs r10, 0xbe208d6480a23de9
xor r10, r14
xor r10, r9
add r10, rbx
movabs r9, 0xccec1e92f89470bf
mov r15, qword [rbp + 0x180]
xor r15, r9
movabs r9, 0xbbfa075b2f6b8f40
xor r9, rsi
add r9, r10
movabs r10, 0xaa55714e93453829
xor r11, r10
add r11, r15
add r11, rdx
add r11, r9
add r11, rcx
sub r11, r8
add r11, 3
cmp r11, qword [rbp + 0x130]
jae 0x20223c04
mov rcx, r14
shl rcx, 0x1d
movabs rdx, 0x1191b14c2c8d8a4d
xor rdx, r14
xor rdx, rcx
add rax, rdx
mov rdx, rax
mov rcx, r8
nop
mov r8d, dword [rbp + 0x198]
xor r8d, 0x4d4c5ae2
mov r9, qword [0x20530730]
mov eax, dword [0x20530700]
sub eax, dword [rbp + 0x19c]
cdqe
add rax, r9
call qword [case.0x200c7fcc.0]
add rdi, r13
mov rax, qword [rbp + 0x178]
movabs rcx, 0xc8d8a6508c8d8a6a
xor rax, rcx
cmp qword [rbp + 0x150], rax
cmova rdi, r12
mov rax, rdi
add rsp, 0x228
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
call fcn.20077cd0
call fcn.20077cd0
call fcn.20077cd0
call fcn.20077cd0
call fcn.20077cd0
call fcn.20077cd0
call fcn.20077cd0
call fcn.20077cd0
call fcn.20077cd0
call fcn.20077cd0
call fcn.20077cd0
call fcn.20077cd0
call fcn.20077cd0
call fcn.20077cd0
call fcn.20077cd0
call fcn.20077cd0
call fcn.20077cd0
int3