Function at 0x2026a6c0
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x178
lea rbp, [rsp + 0x80]
mov qword [rbp + 0xf0], 0xfffffffffffffffe
mov qword [rbp + 0xe0], r9
mov qword [rbp + 0xd8], r8
mov r13, rdx
mov rdi, rcx
mov r12, qword [rbp + 0x168]
mov eax, dword [rbp + 0x160]
and eax, 0x1f
cmp eax, 8
jae 0x2026a874
cmp eax, 2
jbe 0x2026a8cc
cmp eax, 3
jne 0x2026a982
mov esi, 0xa909f31a
xor esi, dword [0x20538c30]
lea rcx, [rbp + 0x98]
mov edx, esi
call fcn.2026a600
mov rax, qword [0x20572370]
mov qword [rbp + 0x30], rax
cmp qword [0x20575e28], 0
jne 0x2026a78f
lea rcx, [rbp - 8]
mov edx, esi
call fcn.2026a600
cmp qword [0x20575e28], 0
jne 0x2026a780
nop
movsxd rax, dword [0x20575e18]
inc rax
mov dword [0x20575e18], eax
mov qword [0x20575e28], rax
lea rcx, [rbp - 8]
mov r9d, 0xc16fc136
call fcn.2026e860
nop
mov rsi, qword [0x20575e28]
mov rax, qword [rbp + 0xd8]
mov rax, qword [rax + 8]
cmp qword [rax + 0x18], rsi
jbe 0x2026a7cc
nop
mov rcx, qword [rax + 0x10]
mov rcx, qword [rcx + rsi*8]
mov rdx, rcx
test rcx, rcx
jne 0x2026a855
mov ecx, dword [rbp + 0x160]
test cl, 0x40
jne 0x2026ca1b
nop
cmp byte [rax + 0x24], 0
je 0x2026a7f0
call fcn.20077dc0
nop
cmp qword [rax + 0x18], rsi
jbe 0x2026a7f0
nop
mov rax, qword [rax + 0x10]
mov rax, qword [rax + rsi*8]
mov rdx, rax
test rax, rax
jne 0x2026a855
nop
mov rax, qword [rbp + 0x30]
mov rdx, rax
test rax, rax
jne 0x2026a855
nop
mov dword [rsp + 0x20], 0x74a069ef
lea rcx, [rbp + 0x30]
mov r9, qword [rbp + 0xd8]
call fcn.2026a6c0
cmp rax, 0xffffffffffffffff
je 0x2026c2b7
nop
mov rcx, qword [rbp + 0x30]
nop
mov qword [rbp + 0xe0], rcx
call fcn.20077da0
nop
mov rcx, qword [rbp + 0xe0]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x200c7fcc.0]
mov rax, qword [rbp + 0x30]
mov rdx, rax
mov qword [0x20572370], rax
nop
mov qword [rbp + 0xe8], rdx
lea rcx, [rbp + 0x98]
mov r9d, 0x65c51d96
call fcn.2026e860
jmp 0x2026ca24
cmp eax, 0xd
jae case.default.0x2026a88e
lea ecx, [rax - 8]
lea rdx, [0x204223fc]
movsxd rcx, dword [rdx + rcx*4]
add rcx, rdx
jmp rcx
nop
mov r15, qword [rdi + 0x10]
cmp r15, qword [rbp + 0xe0]
ja 0x2026ca1b
lea r12, [rdi + 0x10]
mov eax, 8
mov qword [rbp + 0xe8], rax
lea r14, [rbp - 0x20]
mov rsi, qword [rbp + 0xd8]
mov rbx, r15
mov qword [rbp + 0xd0], r15
jmp 0x2026b78a
test eax, eax
je 0x2026aa5b
cmp eax, 2
jne 0x2026aa90
nop
mov rdi, qword [r12 + 0x10]
cmp qword [r12 + 0x18], 0x10
jb 0x2026a8f2
mov rax, r12
mov r12, qword [r12]
lea rsi, [rbp - 0x40]
cmp rdi, 0x10
jae 0x2026b0d1
lea rdx, [rbp - 0x50]
mov r8d, 0x10
mov rcx, r12
mov r9d, 0x7c8069a1
call fcn.2026e860
mov ebx, 0xf
jmp 0x2026b287
cmp eax, 0xe
jbe 0x2026aa09
cmp eax, 0xf
jne 0x2026ab27
test rdi, rdi
je 0x2026c036
nop
cmp qword [rdi], 0
jne 0x2026c036
mov ecx, 0x60
call fcn.20077cb0
mov qword [rbp + 0xe8], rax
mov rax, qword [rbp + 0xe0]
mov rax, qword [rax + 8]
test rax, rax
je 0x2026bfa7
nop
mov rcx, qword [rax + 0x28]
add rax, 0x30
test rcx, rcx
cmovne rax, rcx
jmp 0x2026bfae
cmp eax, 5
ja 0x2026abeb
jne 0x2026afb4
mov r8, qword [rbp + 0xd8]
test r8, r8
js 0x2026c2bc
nop
mov r14, qword [r13]
mov rsi, qword [r13 + 8]
mov rax, qword [r13 + 0x10]
sub rax, r14
mov rdi, rax
shr rdi, 1
movabs rcx, 0x7fffffffffffffff
mov rdx, rdi
xor rdx, rcx
add rdi, rax
cmp rdi, r8
cmovbe rdi, r8
cmp rax, rdx
cmova rdi, rcx
cmp rdi, 0x1000
jb 0x2026b88f
cmp rdi, 0xffffffffffffffd9
jae 0x2026c2d5
lea rcx, [rdi + 0x27]
call fcn.20077cb0
lea rbx, [rax + 0x27]
and rbx, 0xffffffffffffffe0
mov qword [rbx - 8], rax
jmp 0x2026bded
cmp eax, 0xd
jne 0x2026ac73
lea rbx, [rbp + 0x48]
mov qword [rbp + 0x40], 0
mov qword [rbp + 0x48], 0xf
mov byte [rbp + 0x30], 0
mov rsi, qword [rbp + 0xe0]
mov rcx, rsi
call fcn.200786f0
cmp rax, 0xf
jbe 0x2026b10f
lea rcx, [rbp + 0x30]
mov rdx, rax
mov r9, qword [rbp + 0xe0]
call fcn.20069620
jmp 0x2026b131
nop
mov rax, qword [r13]
movsxd rax, dword [rax + 4]
cmp dword [r13 + rax + 0x10], 0
je 0x2026af62
lea rax, [rbp + 0x30]
mov qword [rbp + 0xd8], rax
lea rsi, [rbp + 0x30]
xor r12d, r12d
xor eax, eax
mov qword [rbp + 0xe0], rax
jmp 0x2026ca0d
nop
mov eax, dword [0x20538c40]
mov qword [rbp + 0xe8], rax
mov rcx, rdi
call fcn.200786f0
mov rbx, rax
mov r8, qword [rbp + 0xe0]
mov rax, qword [r8]
movsxd rcx, dword [rax + 4]
mov rcx, qword [r8 + rcx + 0x28]
xor edx, edx
mov rsi, rcx
sub rsi, rbx
mov r15d, 0
cmovg r15, rsi
test rcx, rcx
cmovle r15, rdx
mov qword [rbp + 0xb8], r8
movsxd rax, dword [rax + 4]
mov rcx, qword [r8 + rax + 0x48]
test rcx, rcx
je 0x2026aaf8
nop
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x200c7fcc.0]
nop
mov rcx, qword [rbp + 0xe0]
mov rax, qword [rcx]
movsxd rax, dword [rax + 4]
cmp dword [rcx + rax + 0x10], 0
nop
mov qword [rbp + 0xd0], rax
je 0x2026b208
nop
mov byte [rbp + 0xc0], 0
jmp 0x2026b6fb
cmp eax, 0x10
ja 0x2026b1ab
nop
mov r14, qword [r12 + 0x10]
movabs r15, 0x7fffffffffffffff
mov rbx, r14
xor rbx, r15
mov rcx, qword [rbp + 0xd8]
cmp rbx, rcx
jae 0x2026b3d1
lea rcx, [rbp - 8]
lea r12, [rbp - 0x30]
lea r15, [rbp + 0x30]
lea rsi, [rbp + 0x98]
mov r14, qword [rbp + 0xe0]
mov qword [rbp + 0xb0], r15
mov qword [rbp + 0xa8], rcx
mov eax, dword [rbp + 0x160]
test al, al
js 0x2026c2d0
nop
mov rax, qword [rcx]
mov qword [rax], r15
mov r8, qword [rbp + 0xe0]
mov rax, qword [r8 + 0x38]
mov qword [rax], 0
shr r15, 1
mov rax, qword [r8 + 0x50]
mov dword [rax], r15d
test byte [rsi], 1
je 0x2026bee2
cmp rbx, 0x800
jb 0x2026becd
nop
mov rdx, qword [rbp + 0xa8]
mov rdx, qword [rdx - 8]
sub rdi, rdx
add rdi, 0xfffffffffffffff8
cmp rdi, 0x20
jae 0x2026c418
add r14, 0x27
jmp 0x2026bed4
cmp eax, 7
jne 0x2026b1d8
mov edx, 0x856c38f7
xor edx, dword [0x20538c40]
mov rsi, qword [rbp + 0xe0]
mov rcx, rsi
call fcn.2026a600
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
test r12, r12
je 0x2026baad
mov rcx, rsi
mov rdx, r12
call fcn.20077dd0
jmp 0x2026c831
nop
mov rdx, qword [rbp + 0xe0]
mov rax, qword [rdx]
movsxd rcx, dword [rax + 4]
mov rdi, qword [rdx + rcx + 0x48]
test rdi, rdi
je 0x2026b258
nop
mov esi, dword [0x20538c38]
mov qword [rbp + 0xb8], rdx
movsxd rax, dword [rax + 4]
mov rcx, qword [rdx + rax + 0x48]
test rcx, rcx
je 0x2026acba
nop
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x200c7fcc.0]
nop
mov rcx, qword [rbp + 0xe0]
mov rax, qword [rcx]
movsxd rax, dword [rax + 4]
cmp dword [rcx + rax + 0x10], 0
je 0x2026ba2e
nop
mov byte [rbp + 0xc0], 0
jmp 0x2026bd3c
mov eax, 0xffff
mov rcx, qword [rbp + 0xe0]
test byte [rcx + 0x70], 2
jne 0x2026bf07
cmp r13w, 0xffff
je 0x2026bc11
nop
mov rcx, qword [rbp + 0xe0]
mov rax, qword [rcx + 0x40]
mov r8, qword [rcx + 0x58]
mov rax, qword [rax]
movsxd rdx, dword [r8]
test rax, rax
setne cl
or cl, byte [0x20572790]
test rdx, rdx
jle 0x2026bc18
test cl, 1
je 0x2026bc18
dec edx
mov dword [r8], edx
mov r9, qword [rbp + 0xe0]
mov rcx, qword [r9 + 0x40]
mov rdx, qword [rcx]
lea r8, [rdx + 2]
mov qword [rcx], r8
mov word [rdx], r13w
add rax, 2
mov qword [r9 + 0x68], rax
mov dword [0x20538c48], 0x3d327e27
jmp 0x2026bf04
nop
mov rbx, qword [r12 + 0x10]
movabs r14, 0x7fffffffffffffff
mov rcx, rbx
xor rcx, r14
cmp rcx, r13
jb 0x2026c2ad
mov rdx, r12
lea r8, [r12 + 0x10]
lea r15, [rbx + r13]
lea rcx, [r12 + 0x18]
mov qword [rbp + 0xd0], rcx
mov rdx, qword [r12 + 0x18]
test r15, r15
nop
mov qword [rbp + 0xe8], rdx
js 0x2026b37a
mov rax, rdx
shr rax, 1
mov rcx, rax
xor rcx, r14
cmp rcx, rdx
jb 0x2026b3a7
mov rcx, r15
or rcx, 0xf
add rax, rdx
cmp rcx, rax
mov r14, rax
cmova r14, rcx
lea rcx, [r14 + 1]
cmp rcx, 0x1000
mov rdi, r8
jb 0x2026bc7c
cmp rcx, 0xffffffffffffffd9
jb 0x2026b944
mov edi, 0xa
lea rsi, [rbp - 8]
lea r14, [rbp + 0x30]
lea r15, [rbp + 0x30]
mov ebx, r13d
jmp 0x2026b8f6
mov rax, r13
mov rdx, qword [rbp + 0xe0]
sub rax, rdx
mov rcx, r13
sub rcx, rdx
je 0x2026ca1b
sar rax, 3
movabs rdi, 0xcccccccccccccccd
imul rdi, rax
movabs rax, 0x666666666666667
cmp rdi, rax
jae 0x2026c2c6
cmp rdi, 0x67
jb 0x2026b8a8
add rcx, 0x27
call fcn.20077cb0
lea rdx, [rax + 0x27]
and rdx, 0xffffffffffffffe0
mov qword [rdx - 8], rax
jmp 0x2026b8c1
nop
mov edi, dword [0x20538c40]
xorps xmm0, xmm0
mov rsi, qword [rbp + 0xe0]
movups xmmword [rsi + 8], xmm0
mov dword [rsi + 0x18], 0x201
mov qword [rsi + 0x20], 6
movups xmmword [rsi + 0x38], xmm0
movups xmmword [rsi + 0x28], xmm0
mov ecx, 0x10
call fcn.20077cb0
mov rbx, rax
call fcn.20077d90
nop
mov qword [rbx + 8], rax
mov qword [rsi + 0x40], rbx
mov qword [rsi + 0x48], r12
mov qword [rsi + 0x50], 0
mov qword [rbp + 0x38], rax
mov rcx, qword [rax]
mov rdx, qword [rcx + 8]
mov rcx, rax
mov rax, rdx
call qword [case.0x200c7fcc.0]
nop
mov dword [rsp + 0x20], 0x922105a3
lea r8, [rbp + 0x30]
call fcn.2026a6c0
nop
mov rcx, qword [rax]
mov r8, qword [rcx + 0x60]
mov rcx, rax
mov dl, 0x20
mov rax, r8
call qword [case.0x200c7fcc.0]
mov ebx, eax
mov rax, qword [rbp + 0xe0]
lea rsi, [rax + 0x14]
lea r14, [rax + 0x10]
lea r15, [rax + 0x48]
mov rcx, qword [rbp + 0x38]
test rcx, rcx
je 0x2026b906
nop
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [case.0x200c7fcc.0]
test rax, rax
je 0x2026b8f6
nop
mov rcx, qword [rax]
mov r8, qword [rcx]
mov rcx, rax
mov edx, 1
mov rax, r8
call qword [case.0x200c7fcc.0]
jmp 0x2026b906
nop
test byte [r13 + rax + 0x18], 2
je 0x2026ca1b
nop
mov ebx, dword [0x20538c44]
mov rcx, qword [r13 + rax + 0x48]
mov rax, qword [rcx]
mov rax, qword [rax + 0x68]
nop
call qword [case.0x200c7fcc.0]
cmp eax, 0xffffffff
jne 0x2026ca1b
mov eax, dword [rbp + 0x160]
test al, 0x20
jne 0x2026c136
lea r14, [rbp + 0x98]
xor esi, esi
mov rbx, r12
mov r15, r12
jmp 0x2026bc9a
nop
mov r14, qword [r13 + 0x10]
movabs rsi, 0x7fffffffffffffff
mov rax, r14
xor rax, rsi
cmp rax, rdi
jb 0x2026c2c1
lea rax, [r13 + 0x10]
mov qword [rbp + 0xe8], rax
add rdi, r14
lea rax, [r13 + 0x18]
mov qword [rbp + 0xd0], rax
mov r15, qword [r13 + 0x18]
movabs rcx, 0x8000000000000000
test rdi, rdi
js 0x2026b013
mov rax, r15
shr rax, 1
mov rdx, rax
xor rdx, rsi
cmp rdx, r15
jae 0x2026bb6d
add rcx, 0x27
call fcn.20077cb0
lea rbx, [rax + 0x27]
and rbx, 0xffffffffffffffe0
mov qword [rbx - 8], rax
nop
mov rax, qword [rbp + 0xe8]
mov qword [rax], rdi
mov rax, qword [rbp + 0xd0]
mov qword [rax], rsi
cmp r15, 0x10
jb 0x2026ba74
nop
mov rdi, qword [r13]
mov rcx, rdi
mov rdx, rbx
mov r8, r14
mov r9d, 0x7c8069a1
call fcn.2026e860
add r14, rbx
mov rcx, qword [rbp + 0xd8]
mov rdx, r14
mov r8, r12
mov r9d, 0x7c8069a1
call fcn.2026e860
mov byte [r12 + r14], 0
lea rcx, [r15 + 1]
cmp rcx, 0xfff
mov rdx, rdi
jbe 0x2026c116
mov eax, dword [rbp + 0x160]
test al, al
jns 0x2026c3a9
mov rax, rdx
mov rdi, qword [rdx - 8]
add rax, 0xfffffffffffffff8
mov r12, rax
sub rax, rdi
cmp rax, 0x20
jae 0x2026c3ae
test dword [rbp + 0x160], 0x100
jne 0x2026c10f
lea rsi, [rbp + 0x30]
mov rax, rdi
or rax, 0xf
movabs rbx, 0x7fffffffffffffff
cmp rax, rbx
cmovb rbx, rax
cmp rax, 0xfff
jb 0x2026b264
lea rcx, [rbx + 0x28]
call fcn.20077cb0
lea rdx, [rax + 0x27]
and rdx, 0xffffffffffffffe0
mov qword [rdx - 8], rax
jmp 0x2026b270
nop
mov qword [rbp + 0x40], rax
lea rdx, [rbp + 0x30]
mov rcx, rsi
mov r8, rax
mov r9d, 0x7c8069a1
mov rsi, rax
call fcn.2026e860
mov byte [rbp + rsi + 0x30], 0
lea rsi, [rbp - 0x20]
mov r8d, 0x10
mov rcx, rdi
mov rdx, rsi
mov r9d, 0x7c8069a1
call fcn.2026e860
lea rax, [rbp + 0x30]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0xd0c9b462
mov rdx, qword [rbp + 0xd8]
mov r8, rsi
call fcn.2026a6c0
nop
mov r13, qword [rbx]
cmp r13, 0x10
jb 0x2026bb17
nop
mov rdx, qword [rbp + 0x30]
lea rcx, [r13 + 1]
cmp rcx, 0x1000
jb 0x2026b3b9
nop
mov rax, qword [rdx - 8]
add rdx, 0xfffffffffffffff8
sub rdx, rax
cmp rdx, 0x20
jb 0x2026bb02
call fcn.20077cd0
movabs rcx, 0x7ffffffffffffffe
cmp rdi, rcx
jbe 0x2026b4dd
xor ecx, ecx
mov edx, 0
mov eax, dword [rbp + 0x160]
test al, 0x40
jne 0x2026bb0c
call fcn.200688b0
test r13d, r13d
mov r8b, 1
je 0x2026b578
nop
test byte [0x20572614], 1
jne 0x2026b578
xor r8d, r8d
lea r14, [rbp + 0x30]
mov rax, qword [rbp + 0xd8]
mov rbx, r12
jmp 0x2026b508
nop
mov r9, qword [rcx + rax + 0x50]
test r9, r9
je 0x2026b6f3
cmp r9, rcx
je 0x2026b6f3
nop
mov dword [rsp + 0x20], 0x1d00ec2e
call fcn.2026a6c0
nop
mov rdx, qword [rbp + 0xe0]
mov rax, qword [rdx]
movsxd rax, dword [rax + 4]
mov rcx, qword [0x20572368]
add rcx, rdx
cmp dword [rax + rcx + 0x10], 0
sete byte [rbp + 0xc0]
jmp 0x2026b6fb
mov qword [rbp + 0xe8], rdx
jmp 0x2026ca24
lea rcx, [rbx + 1]
call fcn.20077cb0
mov rdx, rax
nop
mov qword [rbp - 0x50], rdx
lea r8, [rdi + 1]
mov rcx, r12
mov r9d, 0x7c8069a1
call fcn.2026e860
nop
mov qword [rsi], rdi
mov qword [rbp - 0x38], rbx
lea rbx, [rbp - 0x30]
mov r8d, 0x10
mov rcx, qword [rbp + 0xd8]
mov rdx, rbx
mov r9d, 0x7c8069a1
call fcn.2026e860
lea rdi, [rbp + 0x30]
lea r8, [rbp - 0x50]
mov rcx, rdi
mov rdx, rbx
call fcn.20069790
cmp qword [rbp + 0x48], 0x10
jb 0x2026b2cc
mov rdi, qword [rbp + 0x30]
lea rax, [0x20411218]
mov qword [r13], rax
lea rdx, [r13 + 8]
xorps xmm0, xmm0
movups xmmword [r13 + 8], xmm0
mov qword [rbp - 8], rdi
mov byte [rbp], 1
lea rcx, [rbp - 8]
call fcn.20077d00
lea rax, [0x204118c8]
mov qword [r13], rax
mov rax, qword [rbp + 0x48]
cmp rax, 0x10
jb 0x2026b346
nop
mov rdx, qword [rbp + 0x30]
lea rcx, [rax + 1]
cmp rcx, 0x1000
jb 0x2026b33b
nop
mov r8, qword [rdx - 8]
add rdx, 0xfffffffffffffff8
sub rdx, r8
cmp rdx, 0x20
jae 0x2026c2cb
add rax, 0x28
mov rcx, rax
mov rdx, r8
mov r9d, 0xd110ad8d
call fcn.2026e860
lea rax, [0x20411888]
mov qword [r13], rax
lea rdx, [r13 + 0x18]
mov r8d, 0x10
mov rcx, qword [rbp + 0xd8]
mov r9d, 0x7c8069a1
call fcn.2026e860
nop
mov qword [rbp + 0xe8], r13
jmp 0x2026ca24
mov ecx, dword [rbp + 0x160]
test cl, 0x40
jne 0x2026b3a7
lea rcx, [rbp + 0x30]
mov qword [rbp + 0xd0], rcx
lea rcx, [rbp - 8]
mov qword [rbp + 0xb0], rcx
mov rcx, qword [rbp + 0xd8]
mov r14, r13
jmp 0x2026b408
movabs rcx, 0x8000000000000000
mov rdi, r8
jmp 0x2026b952
test dword [rbp + 0x160], 0x200
je 0x2026bb0c
xor r8d, r8d
jmp 0x2026b578
mov rdx, r12
lea r8, [r12 + 0x10]
mov qword [rbp + 0xd0], r8
lea rbx, [r14 + rcx]
lea rcx, [r12 + 0x18]
mov qword [rbp + 0xb0], rcx
mov rcx, qword [r12 + 0x18]
mov qword [rbp + 0xe8], rcx
test rbx, rbx
js 0x2026b42e
mov rcx, rbx
or rcx, 0xf
mov r9, qword [rbp + 0xe8]
mov rdx, r9
shr rdx, 1
movabs r15, 0x7fffffffffffffff
mov r8, rdx
xor r8, r15
cmp r8, r9
jae 0x2026bbaf
movabs rcx, 0x8000000000000000
add rcx, 0x27
call fcn.20077cb0
lea rsi, [rax + 0x27]
and rsi, 0xffffffffffffffe0
mov qword [rsi - 8], rax
mov r13, qword [rbp + 0xe8]
nop
mov rax, qword [rbp + 0xd0]
mov qword [rax], rbx
mov rax, qword [rbp + 0xb0]
mov qword [rax], r15
cmp r13, 0x10
jb 0x2026bb35
nop
mov rdi, qword [r12]
mov rcx, rdi
mov rdx, rsi
mov r8, r14
mov r9d, 0x7c8069a1
call fcn.2026e860
mov rax, qword [rbp + 0xe0]
mov byte [rsi + r14], al
mov byte [rsi + r14 + 1], 0
lea rcx, [r13 + 1]
cmp rcx, 0x1000
jb 0x2026b4ca
nop
mov rax, qword [rdi - 8]
add rdi, 0xfffffffffffffff8
sub rdi, rax
cmp rdi, 0x20
jae 0x2026c41d
add r13, 0x28
mov rcx, r13
mov rdi, rax
mov rdx, rdi
mov r9d, 0x8c9575ed
call fcn.2026e860
jmp 0x2026bb5a
mov rax, rdi
or rax, 7
cmp rax, rcx
ja 0x2026c2b2
mov rcx, qword [rbp + 0xd8]
mov r8d, ecx
and r8b, 1
mov rcx, r12
lea r14, [r12 + 0x18]
mov rbx, qword [r12 + 0x18]
mov ecx, dword [rbp + 0x160]
test cl, cl
js 0x2026b810
lea rax, [0x204219e8]
mov rdx, qword [rbp + 0xd8]
mov qword [rdx], rax
lea rax, [0x204219f0]
mov qword [rdx + 0x10], rax
mov qword [rdx + 0xa0], 0
xorps xmm0, xmm0
movups xmmword [rdx + 0xc8], xmm0
mov qword [rdx + 0xd8], 0
lea rax, [0x20411578]
mov qword [rdx + 0x98], rax
test ecx, 0x100
jne 0x2026b578
lea rbx, [rbp + 0x30]
mov rax, qword [rbp + 0xe0]
jmp 0x2026aa43
nop
mov dword [rbp + 0xe0], r8d
mov rdi, qword [rbp + 0xd8]
mov rax, qword [rdi]
movsxd rax, dword [rax + 4]
lea rsi, [0x204219e0]
mov qword [rdi + rax], rsi
mov rax, qword [rdi]
movsxd rax, dword [rax + 4]
lea ecx, [rax - 0x98]
mov dword [rdi + rax - 4], ecx
lea rax, [rdi + 0x18]
mov rcx, qword [rdi]
movsxd rcx, dword [rcx + 4]
lea rdx, [0x20421c30]
mov qword [rdi + rcx], rdx
mov rcx, qword [rdi]
movsxd rcx, dword [rcx + 4]
lea edx, [rcx - 0x18]
mov dword [rdi + rcx - 4], edx
mov qword [rdi + 8], 0
mov rcx, qword [rdi]
movsxd r9, dword [rcx + 4]
add r9, rdi
nop
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0xa0186769
xor r8d, r8d
call fcn.2026a6c0
nop
mov rax, qword [rdi + 0x10]
movsxd rax, dword [rax + 4]
lea rcx, [0x204115d0]
mov qword [rdi + rax + 0x10], rcx
mov rax, qword [rdi + 0x10]
movsxd rax, dword [rax + 4]
lea ecx, [rax - 0x10]
mov dword [rdi + rax + 0xc], ecx
mov rax, qword [rdi]
movsxd rax, dword [rax + 4]
lea rcx, [0x20421c00]
mov qword [rdi + rax], rcx
mov rax, qword [rdi]
movsxd rax, dword [rax + 4]
lea ecx, [rax - 0x20]
mov dword [rdi + rax - 4], ecx
mov rax, qword [rdi]
movsxd rax, dword [rax + 4]
mov qword [rdi + rax], rsi
mov rax, qword [rdi]
movsxd rax, dword [rax + 4]
lea ecx, [rax - 0x98]
mov dword [rdi + rax - 4], ecx
lea rax, [0x20411d18]
mov qword [rdi + 0x18], rax
mov ecx, 0x10
call fcn.20077cb0
mov rsi, rax
call fcn.20077d90
nop
mov qword [rsi + 8], rax
mov rcx, qword [rbp + 0xd8]
mov qword [rcx + 0x78], rsi
lea rax, [rcx + 0x20]
mov qword [rcx + 0x30], rax
lea rax, [rcx + 0x28]
mov qword [rcx + 0x38], rax
lea rax, [rcx + 0x40]
mov qword [rcx + 0x50], rax
lea rax, [rcx + 0x48]
mov qword [rcx + 0x58], rax
lea rax, [rcx + 0x60]
mov qword [rcx + 0x68], rax
lea rax, [rcx + 0x64]
mov qword [rcx + 0x70], rax
mov qword [rcx + 0x60], 0
xorps xmm0, xmm0
movups xmmword [rcx + 0x20], xmm0
movups xmmword [rcx + 0x40], xmm0
lea rax, [0x20411be8]
mov qword [rcx + 0x18], rax
mov qword [rcx + 0x80], 0
mov dword [rcx + 0x88], 0
nop
mov qword [rbp + 0xe8], rcx
jmp 0x2026ca24
nop
mov byte [rbp + 0xc0], 1
nop
cmp byte [rbp + 0xc0], 0
je 0x2026b7c8
nop
mov rdx, qword [rbp + 0xe0]
mov rax, qword [rdx]
movsxd rax, dword [rax + 4]
mov rcx, qword [0x205728b0]
add rcx, rdx
mov rax, qword [rax + rcx + 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]
nop
mov dword [rsp + 0x20], 0x922105a3
lea r12, [rbp + 0x30]
mov r8, r12
call fcn.2026a6c0
mov r14, rax
mov rcx, qword [rbp + 0x38]
test rcx, rcx
je 0x2026b78a
nop
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [case.0x200c7fcc.0]
test rax, rax
je 0x2026b796
nop
mov rcx, qword [rax]
mov r8, qword [rcx]
mov rcx, rax
mov edx, 1
mov rax, r8
call qword [case.0x200c7fcc.0]
jmp 0x2026b796
test dword [rbp + 0x160], 0x100
jne 0x2026b7da
nop
mov rdx, qword [rbp + 0xe0]
mov rax, qword [rdx]
movsxd rax, dword [rax + 4]
mov ecx, 0x1c0
and ecx, dword [rdx + rax + 0x18]
xor r12d, r12d
cmp ecx, 0x40
je 0x2026c64a
test r15, r15
jg 0x2026c570
jmp 0x2026c64a
mov r12d, 4
mov rdx, qword [rbp + 0xe0]
jmp 0x2026c7b2
nop
mov rsi, qword [rdi + 0x18]
cmp rsi, qword [rbp + 0xe0]
je 0x2026ca1b
jae 0x2026bf0f
mov eax, dword [rbp + 0x160]
test al, 0x20
mov rbx, qword [rbp + 0xd0]
jne 0x2026c178
lea rbx, [rbp + 0x30]
jmp 0x2026c124
mov r15, rbx
shr r15, 1
movabs rcx, 0x7ffffffffffffffe
sub rcx, r15
cmp rcx, rbx
jb 0x2026c2b2
add r15, rbx
cmp rax, r15
cmova r15, rax
mov rax, r15
inc rax
js 0x2026c2da
test dword [rbp + 0x160], 0x100
jne 0x2026c2b7
lea rcx, [rax + rax]
cmp rax, 0x800
jb 0x2026bc92
movabs rdx, 0x7fffffffffffffed
cmp rax, rdx
jae 0x2026c2b2
add rcx, 0x27
call fcn.20077cb0
lea rsi, [rax + 0x27]
and rsi, 0xffffffffffffffe0
mov qword [rsi - 8], rax
jmp 0x2026bc9a
test rdi, rdi
je 0x2026bdeb
mov rcx, rdi
call fcn.20077cb0
mov rbx, rax
jmp 0x2026bded
call fcn.20077cb0
mov rcx, rax
mov eax, dword [rbp + 0x160]
test al, 0x40
jne 0x2026ba1c
mov rdx, rcx
nop
mov rcx, qword [rbp + 0xd8]
lea rsi, [rcx + 8]
mov qword [rcx], rdx
mov qword [rcx + 8], rdx
lea rax, [rdi + rdi*4]
lea rax, [rdx + rax*8]
mov qword [rcx + 0x10], rax
mov qword [rbp + 0x30], rcx
mov rax, rdx
mov qword [rbp + 0xd8], rdx
mov r12, rdx
jmp 0x2026c919
test dword [rbp + 0x160], 0x200
je 0x2026c2df
nop
mov rax, qword [rbp + 0xe0]
mov word [rax + 0x58], bx
cmp qword [r15], 0
je 0x2026ba05
lea rdi, [rbp + 0x98]
lea rax, [rbp - 0x20]
mov qword [rbp + 0xd0], rax
xor ecx, ecx
xor r14d, r14d
mov qword [rbp + 0xe8], r13
mov r15, r13
mov rbx, qword [rbp + 0xd8]
mov eax, dword [rbp + 0x160]
test al, al
jns 0x2026ba1c
add rcx, 0x27
call fcn.20077cb0
lea rsi, [rax + 0x27]
and rsi, 0xffffffffffffffe0
mov qword [rsi - 8], rax
mov r13, qword [rbp + 0xe8]
nop
mov qword [rdi], r15
mov rax, qword [rbp + 0xd0]
mov qword [rax], r14
cmp r13, 0x10
jb 0x2026b9db
nop
mov rdi, qword [r12]
inc rbx
mov rcx, rdi
mov rdx, rsi
mov r8, rbx
mov r9d, 0x7c8069a1
call fcn.2026e860
lea rcx, [r13 + 1]
cmp rcx, 0x1000
jb 0x2026b9cb
nop
mov rax, qword [rdi - 8]
add rdi, 0xfffffffffffffff8
sub rdi, rax
cmp rdi, 0x20
jae 0x2026c2e4
add r13, 0x28
mov rcx, r13
mov rdi, rax
mov rdx, rdi
mov r9d, 0xe5672a6d
call fcn.2026e860
jmp 0x2026b9f2
inc rbx
mov rcx, r12
mov rdx, rsi
mov r8, rbx
mov r9d, 0x7c8069a1
call fcn.2026e860
mov rax, r12
mov qword [rbp + 0xe8], r12
mov qword [r12], rsi
jmp 0x2026ca24
nop
mov ebx, dword [r14]
and ebx, 0x13
or ebx, 4
mov dword [r14], ebx
mov esi, dword [rsi]
and ebx, esi
jne 0x2026c4e8
test byte [rbp + 0xd8], 1
je 0x2026ca1b
jmp 0x2026bae0
nop
mov r9, qword [rcx + rax + 0x50]
test r9, r9
je 0x2026bd34
cmp r9, rcx
je 0x2026bd34
nop
mov dword [rsp + 0x20], 0x1d00ec2e
call fcn.2026a6c0
nop
mov rcx, qword [rbp + 0xe0]
mov rax, qword [rcx]
movsxd rax, dword [rax + 4]
cmp dword [rcx + rax + 0x10], 0
sete byte [rbp + 0xc0]
jmp 0x2026bd3c
mov rcx, r13
mov rdx, rbx
mov r8, r14
mov r9d, 0x7c8069a1
call fcn.2026e860
add r14, rbx
mov rcx, qword [rbp + 0xd8]
mov rdx, r14
mov r8, r12
mov r9d, 0x7c8069a1
call fcn.2026e860
mov byte [r12 + r14], 0
jmp 0x2026c124
nop
movzx eax, byte [0x20536e30]
cmp al, 0x40
je 0x2026badb
test dword [rbp + 0x160], 0x100
jne 0x2026bae0
mov cl, 0x9a
mov al, 0x9c
lock cmpxchg byte [0x20536e30], cl
je 0x2026bea3
cmp al, 0x40
jne 0x2026bac7
call fcn.2026a0a0
nop
mov rcx, qword [rbp + 0xe0]
call fcn.2026a5d0
mov eax, dword [rbp + 0x160]
test al, 0x20
jne 0x2026ca1b
mov rax, qword [rbp + 0xd8]
add r13, 0x28
mov rcx, r13
mov rdx, rax
mov r9d, 0x8241b36d
call fcn.2026e860
lea rax, [0x20411848]
mov rcx, qword [rbp + 0xd8]
mov qword [rcx], rax
nop
mov qword [rbp + 0xe8], rcx
jmp 0x2026ca24
mov rcx, r12
mov rdx, rsi
mov r8, r14
mov r9d, 0x7c8069a1
call fcn.2026e860
mov rax, qword [rbp + 0xe0]
mov byte [rsi + r14], al
mov byte [rsi + r14 + 1], 0
mov rax, r12
mov qword [rbp + 0xe8], r12
mov qword [r12], rsi
jmp 0x2026ca24
mov rcx, rdi
or rcx, 0xf
add rax, r15
cmp rcx, rax
mov rsi, rax
cmova rsi, rcx
lea rcx, [rsi + 1]
cmp rcx, 0xfff
jbe 0x2026c040
test dword [rbp + 0x160], 0x400
jne 0x2026c1a1
lea rsi, [rbp + 0x30]
xor ecx, ecx
xor edi, edi
jmp 0x2026b9cb
add rdx, r9
cmp rcx, rdx
mov r15, rdx
cmova r15, rcx
lea rcx, [r15 + 1]
cmp rcx, 0x1000
jb 0x2026c074
cmp rcx, 0xffffffffffffffd9
jb 0x2026b438
mov ecx, dword [rbp + 0x160]
test cl, 0x20
jne 0x2026c4e3
lea r14, [rbp + 0xb8]
lea rcx, [rbp - 0x30]
lea rdx, [rbp + 0x98]
mov rsi, r13
mov rbx, qword [rbp + 0xd8]
mov r8d, eax
mov qword [rbp + 0xe8], r8
jmp 0x2026c5a3
xor eax, eax
jmp 0x2026bf07
nop
mov r8, qword [rbp + 0xe0]
lea r9, [r8 + 0x70]
mov qword [rbp - 0x10], r9
lea r9, [r8 + 0x40]
mov qword [rbp + 0xb0], r9
lea r9, [r8 + 0x58]
lea rax, [rax + rdx*2]
lea rdx, [r8 + 0x18]
mov qword [rbp + 0x28], rdx
mov rdx, qword [r8 + 0x18]
mov rdi, qword [rdx]
sub rax, rdi
sar rax, 1
xor ebx, ebx
test cl, 1
cmovne rbx, rax
cmp rbx, 0x20
jae 0x2026c08a
mov esi, 0x20
mov ecx, 0x40
mov qword [rbp + 0xa8], rdi
mov r12, r9
jmp 0x2026c102
test rcx, rcx
je 0x2026c16a
call fcn.20077cb0
mov rsi, rax
jmp 0x2026b967
call fcn.20077cb0
mov rsi, rax
mov r13, r12
mov qword [r12 + 0x10], rdi
mov qword [r14], r15
lea r8, [rdi + rdi]
mov rcx, qword [rbp + 0xd8]
mov rdx, rsi
mov r9d, 0x7c8069a1
call fcn.2026e860
mov word [rsi + rdi*2], 0
cmp rbx, 8
jb 0x2026bd21
nop
mov rdx, qword [r13]
lea rcx, [rbx*2 + 2]
cmp rcx, 0x1000
jb 0x2026bd03
nop
mov rax, qword [rdx - 8]
add rdx, 0xfffffffffffffff8
sub rdx, rax
cmp rdx, 0x20
jae 0x2026c422
add rbx, rbx
add rbx, 0x29
mov rcx, rbx
mov rdx, rax
mov r9d, 0xc1c3206d
call fcn.2026e860
test dword [rbp + 0x160], 0x400
mov r13, r12
jne 0x2026ca1b
mov rax, r13
mov qword [rbp + 0xe8], r13
mov qword [r13], rsi
jmp 0x2026ca24
nop
mov byte [rbp + 0xc0], 1
nop
cmp byte [rbp + 0xc0], 0
je 0x2026bd9f
nop
mov rax, qword [rdi]
mov rax, qword [rax + 0x68]
mov rcx, rdi
call qword [case.0x200c7fcc.0]
cmp eax, 0xffffffff
jne 0x2026bd9f
nop
mov rcx, qword [rbp + 0xe0]
mov rax, qword [rcx]
movsxd rax, dword [rax + 4]
mov ebx, dword [rcx + rax + 0x10]
and ebx, 0x13
or ebx, 4
mov dword [rcx + rax + 0x10], ebx
mov edi, dword [rcx + rax + 0x14]
and ebx, edi
jne 0x2026c2ee
mov eax, 2
mov qword [rbp + 0xe8], rax
mov eax, dword [rbp + 0x160]
test al, 0x40
jne 0x2026ca24
call fcn.2007ba10
test al, al
jne 0x2026bdbe
nop
mov rdx, qword [rbp + 0xb8]
nop
mov dword [rsp + 0x20], 0x2a0c6d20
call fcn.2026a6c0
nop
mov rax, qword [rbp + 0xb8]
mov rcx, qword [rax]
movsxd rcx, dword [rcx + 4]
mov rcx, qword [rax + rcx + 0x48]
test rcx, rcx
je 0x2026bde6
nop
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
nop
call qword [case.0x200c7fcc.0]
jmp 0x2026c831
xor ebx, ebx
sub rsi, r14
lea rcx, [rbx + rsi]
mov r8, qword [rbp + 0xd8]
sub r8, rsi
xor edx, edx
call fcn.203f1830
mov rcx, qword [r13]
mov rdx, qword [r13 + 8]
sub rdx, rcx
mov r8, rbx
mov r9d, 0xa00b8d84
call fcn.2026e860
mov rdx, qword [r13]
test rdx, rdx
je 0x2026be7b
nop
mov rcx, qword [r13 + 0x10]
sub rcx, rdx
cmp rcx, 0x1000
jb 0x2026be70
nop
mov rax, qword [rdx - 8]
add rdx, 0xfffffffffffffff8
sub rdx, rax
cmp rdx, 0x20
jae 0x2026c2e9
mov edx, 2
mov qword [rbp + 0xe8], rdx
mov edx, dword [rbp + 0x160]
test dl, 0x20
jne 0x2026ca24
add rcx, 0x27
mov rdx, rax
mov r9d, 0x2b65c14d
call fcn.2026e860
nop
mov qword [r13], rbx
mov rax, qword [rbp + 0xd8]
add rax, rbx
mov qword [r13 + 8], rax
add rdi, rbx
mov qword [r13 + 0x10], rdi
xor eax, eax
mov qword [rbp + 0xe8], rax
jmp 0x2026ca24
mov eax, dword [rbp + 0x160]
test al, 0x20
jne 0x2026c3b3
xor esi, esi
xor eax, eax
mov qword [rbp + 0xd8], rax
xor eax, eax
mov qword [rbp + 0xe0], rax
xor r12d, r12d
jmp 0x2026c919
mov rdx, qword [rbp + 0xa8]
mov rcx, r14
mov r9d, 0x6336c0ed
call fcn.2026e860
nop
or byte [rsi], 1
mov rax, qword [r12]
dec dword [rax]
mov rax, qword [rbp + 0xb0]
mov rax, qword [rax]
mov rcx, qword [rax]
lea rdx, [rcx + 2]
mov qword [rax], rdx
mov word [rcx], r13w
mov rax, r13
movzx eax, ax
jmp 0x2026ca1d
cmp qword [rbp + 0xe0], 0xf
mov r8, qword [rbp + 0xd0]
ja 0x2026ca1b
cmp rsi, 0x10
mov eax, 0
mov qword [rbp + 0xe8], rax
jb 0x2026ca24
nop
mov rbx, qword [rdi]
inc r8
mov rcx, rbx
mov rdx, rdi
mov r9d, 0x7c8069a1
call fcn.2026e860
mov rax, qword [rdi + 0x18]
lea rcx, [rax + 1]
cmp rcx, 0x1000
jb 0x2026bf83
nop
mov rdx, qword [rbx - 8]
add rbx, 0xfffffffffffffff8
sub rbx, rdx
cmp rbx, 0x20
jae 0x2026c29a
add rax, 0x28
mov rcx, rax
mov rbx, rdx
mov rdx, rbx
mov r9d, 0x3ec26aad
call fcn.2026e860
mov qword [rdi + 0x18], 0xf
xor eax, eax
mov qword [rbp + 0xe8], rax
jmp 0x2026ca24
lea rax, [0x204118f8]
nop
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0x4b7188e7
lea r9, [rbp + 0x30]
call fcn.2026a6c0
nop
mov rsi, qword [rbp + 0xe8]
mov dword [rsi + 8], 0
lea rax, [0x20411908]
mov qword [rsi], rax
lea rcx, [rbp - 8]
call fcn.20077e20
lea rdx, [rsi + 0x10]
lea rcx, [rbp - 8]
mov r8d, 0x20
mov r9d, 0x7c8069a1
call fcn.2026e860
lea rcx, [rbp - 8]
call fcn.20077e40
mov rdx, rsi
add rdx, 0x30
lea rcx, [rbp - 8]
mov r8d, 0x2c
mov r9d, 0x7c8069a1
call fcn.2026e860
mov qword [rdi], rsi
lea r9, [rbp + 0x30]
mov ecx, 0xa8060099
call fcn.2026d330
mov eax, 2
jmp 0x2026ca1d
mov r8, rdx
lea rax, [rbp + 0x30]
mov qword [rbp - 0x10], rax
lea rax, [rbp + 0x98]
mov qword [rbp + 0xb0], rax
lea r9, [rbp + 0x98]
lea rax, [rbp + 0x30]
mov qword [rbp + 0x28], rax
mov qword [rbp + 0xa8], rax
mov rbx, rsi
jmp 0x2026c0b6
test rcx, rcx
je 0x2026c27e
call fcn.20077cb0
mov rsi, rax
jmp 0x2026b44d
lea rax, [rbp - 8]
mov qword [rbp + 0xe8], rax
mov qword [rbp + 0xd0], rax
mov r14, qword [rbp + 0xd8]
mov rcx, r14
mov rsi, r14
mov r15, r13
mov r8, rdi
mov qword [rbp + 0xa8], rdi
mov eax, dword [rbp + 0x160]
test al, 0x40
jne 0x2026c0d6
test rcx, rcx
je 0x2026c28c
call fcn.20077cb0
mov rbx, rax
jmp 0x2026b028
cmp rbx, 0x3fffffff
jae 0x2026c1b0
lea rsi, [rbx + rbx]
lea rcx, [rbx*4]
cmp rbx, 0x400
mov r12, r9
mov rdi, r8
jae 0x2026c1d2
call fcn.20077cb0
mov r15, rax
jmp 0x2026c1e7
add r15, 0x28
mov rcx, r15
mov rdx, rdi
mov r9d, 0xaefc8cad
call fcn.2026e860
nop
mov qword [r13], rbx
nop
mov qword [rbp + 0xe8], r13
jmp 0x2026ca24
nop
mov rax, qword [r13]
movsxd rax, dword [rax + 4]
mov edi, dword [r13 + rax + 0x10]
and edi, 0x13
or edi, 4
mov dword [r13 + rax + 0x10], edi
mov esi, dword [r13 + rax + 0x14]
and edi, esi
jne 0x2026c427
xor eax, eax
mov qword [rbp + 0xe8], rax
jmp 0x2026ca24
mov r14, 0xffffffffffffffff
xor esi, esi
jmp 0x2026b967
nop
mov rdx, qword [rbp + 0xe0]
sub rdx, rbx
mov qword [rsp + 0x28], rdi
mov dword [rsp + 0x20], 0xfb6799ca
xor r8d, r8d
call fcn.2026a6c0
mov qword [r12], rbx
jmp 0x2026a7bd
cmp rcx, 0xffffffffffffffd9
jb 0x2026b013
call fcn.20067d20
mov eax, 0xffff
cmp rbx, 0x7fffffff
jae 0x2026bf07
mov r12, r9
mov rdi, r8
mov esi, 0x7fffffff
mov ecx, 0xfffffffe
add rcx, 0x27
call fcn.20077cb0
lea r15, [rax + 0x27]
and r15, 0xffffffffffffffe0
mov qword [r15 - 8], rax
lea r14, [rbx + rbx]
mov rcx, qword [rbp + 0xa8]
mov rdx, r15
mov r8, r14
mov r9d, 0x7c8069a1
call fcn.2026e860
lea rax, [r15 + rbx*2]
lea rcx, [r15 + rbx*2]
add rcx, 2
mov r8, qword [rbp + 0xe0]
mov qword [r8 + 0x68], rcx
lea rcx, [r15 + rsi*2]
mov rdx, qword [r8 + 0x20]
mov qword [rdx], r15
mov rdx, qword [rbp + 0xb0]
mov rdx, qword [rdx]
mov qword [rdx], rax
sub rcx, rax
shr rcx, 1
mov rax, qword [r12]
mov dword [rax], ecx
mov rsi, qword [rbp - 0x10]
test byte [rsi], 4
jne 0x2026c275
nop
mov rax, qword [r8 + 0x38]
mov rcx, qword [r8 + 0x68]
mov rax, qword [rax]
sub rax, rdi
add rax, r15
mov rdx, qword [rbp + 0x28]
mov rdx, qword [rdx]
mov qword [rdx], r15
mov rdx, qword [r8 + 0x38]
mov qword [rdx], rax
sub rcx, rax
mov r15, rcx
jmp 0x2026aba5
mov rcx, qword [rbp + 0x28]
jmp 0x2026ab7e
mov r15, 0xffffffffffffffff
xor esi, esi
jmp 0x2026b44d
mov rsi, 0xffffffffffffffff
xor ebx, ebx
jmp 0x2026b028
lea rbx, [rbp + 0xb8]
lea rdx, [rbp - 0x50]
mov r15, r13
jmp 0x2026b094
call fcn.200688b0
call fcn.20067d20
call fcn.20069bc0
call fcn.20176510
call fcn.200688b0
call fcn.2023fa80
call fcn.20077cd0
call fcn.200688b0
call fcn.20067d20
call fcn.20067d20
call fcn.20067d20
call fcn.20077cd0
call fcn.20077cd0
mov ecx, 0xf007e20f
xor rcx, rsi
mov r9d, 0x107f1fd4
call fcn.2026e860
mov rdx, rsi
xor rdx, 0x3fae8393
mov r9d, 0xbc166c02
call fcn.2026e860
test bl, 2
lea rax, [0x20536dc0]
lea rbx, [0x20536da0]
cmove rbx, rax
xor esi, 0xda484b92
mov rcx, rsi
mov r9d, 0x32ac75e0
call fcn.2026e860
test dil, 4
lea rsi, [0x20536d80]
cmove rsi, rbx
lea rdi, [rbp + 0x98]
mov rcx, rdi
mov edx, 1
call fcn.200693e0
lea rbx, [rbp - 8]
mov r8d, 0x10
mov rcx, rdi
mov rdx, rbx
mov r9d, 0x7c8069a1
call fcn.2026e860
nop
mov dword [rsp + 0x20], 0xeb55d44d
lea r8, [rbp + 0x30]
mov rcx, rbx
mov r9, rsi
call fcn.2026a6c0
lea rax, [0x204116e8]
mov qword [rbp + 0x30], rax
lea rcx, [rbp + 0x30]
call fcn.201920e0
call fcn.20077cd0
call fcn.20077cd0
mov eax, 6
lea rcx, [0x20536e20]
lea rdx, [0x20421ff0]
mov r8d, eax
neg r8d
and r8d, 0xe
movzx r9d, byte [rax + rcx - 6]
xor r9b, byte [r8 + rdx]
movzx r8d, byte [rax + rcx - 5]
xor r9b, 0x26
mov byte [rax + rcx - 6], r9b
mov r9d, eax
and r9d, 0xe
xor r9, 0xf
xor r8b, byte [r9 + rdx]
xor r8b, 0x26
mov byte [rax + rcx - 5], r8b
add rax, 2
cmp rax, 0x16
jne 0x2026c3c6
mov al, 0x40
xchg byte [0x20536e30], al
jmp 0x2026badb
call fcn.20077cd0
call fcn.20077cd0
call fcn.20077cd0
mov rcx, rbx
xor rcx, 0x20e649d4
mov r9d, 0x107f1fd4
call fcn.2026e860
mov edx, 0xef4f2848
xor rdx, rbx
mov r9d, 0xee6c6182
call fcn.2026e860
test dil, 2
lea rax, [0x20536dc0]
lea rdi, [0x20536da0]
cmove rdi, rax
xor ebx, 0xaa9e049
mov rcx, rbx
mov r9d, 0x32ac75e0
call fcn.2026e860
test sil, 4
lea rsi, [0x20536d80]
cmove rsi, rdi
lea rdi, [rbp + 0x98]
mov rcx, rdi
mov edx, 1
call fcn.200693e0
lea rbx, [rbp - 8]
mov r8d, 0x10
mov rcx, rdi
mov rdx, rbx
mov r9d, 0x7c8069a1
call fcn.2026e860
nop
mov dword [rsp + 0x20], 0xeb55d44d
lea r8, [rbp + 0x30]
mov rcx, rbx
mov r9, rsi
call fcn.2026a6c0
lea rax, [0x204116e8]
mov qword [rbp + 0x30], rax
lea rcx, [rbp + 0x30]
call fcn.201920e0
call fcn.20067d20
mov ecx, edi
xor ecx, 0xd5e2424a
call fcn.2026a660
mov edx, edi
xor edx, 0x1a4b23d6
mov r9d, 0x91b7dac2
call fcn.2026e860
test bl, 2
lea rax, [0x20536dc0]
lea rbx, [0x20536da0]
cmove rbx, rax
xor edi, 0xffadebd7
mov ecx, edi
call fcn.2026a590
test sil, 4
lea rsi, [0x20536d80]
cmove rsi, rbx
lea rdi, [rbp - 8]
mov rcx, rdi
mov edx, 1
call fcn.200693e0
lea rbx, [rbp + 0x30]
mov rcx, rbx
mov rdx, rsi
mov r8, rdi
call fcn.20079be0
lea r8, [0x2046c8b8]
mov edx, 0xbb541b2b
mov r9, rbx
call fcn.2026f360
nop
mov rdx, qword [rbp + 0xe0]
mov rax, qword [rdx]
movsxd rax, dword [rax + 4]
mov rcx, qword [rdx + rax + 0x48]
movzx r13d, word [rdx + rax + 0x58]
mov rax, qword [rcx + 0x40]
cmp qword [rax], 0
je 0x2026c5ba
nop
mov rdx, qword [rcx + 0x58]
mov eax, dword [rdx]
test eax, eax
jle 0x2026c5ba
add rcx, 0x40
dec eax
mov dword [rdx], eax
mov rax, qword [rcx]
mov rcx, qword [rax]
lea rdx, [rcx + 2]
mov qword [rax], rdx
mov word [rcx], r13w
jmp 0x2026c5e9
nop
mov rax, qword [rcx]
mov rax, qword [rax + 0x18]
mov r8, qword [case.0x200c7fcc.0]
mov rdx, qword [rbp + 0xe8]
mov dword [rbp + 0xcc], edx
mov dword [rbp + 0xc8], 0
mov edx, r13d
call r8
mov r13d, eax
cmp r13w, 0xffff
je 0x2026c602
lea rax, [rsi - 1]
cmp rsi, 1
jle 0x2026c60d
mov rsi, rax
jmp 0x2026c570
mov r12d, 4
mov r15, rsi
jmp 0x2026c64a
xor r12d, r12d
xor r15d, r15d
jmp 0x2026c64a
dec edx
mov dword [rcx], edx
mov rcx, qword [rsi + 0x40]
mov rdx, qword [rcx]
lea r8, [rdx + 2]
mov qword [rcx], r8
mov word [rdx], ax
xor r12d, r12d
cmp ax, 0xffff
sete r12b
shl r12d, 2
dec rbx
inc rdi
test r12d, r12d
jne 0x2026c6ee
test rbx, rbx
jle 0x2026c6ee
nop
mov rcx, qword [rbp + 0xe0]
mov rax, qword [rcx]
movsxd rax, dword [rax + 4]
mov rsi, qword [rcx + rax + 0x48]
movzx edx, byte [rdi]
mov rax, qword [r14]
mov rax, qword [rax + 0x60]
mov r8, qword [case.0x200c7fcc.0]
mov rcx, qword [rbp + 0xe8]
mov dword [rbp + 0xcc], ecx
mov dword [rbp + 0xc8], 0
mov rcx, r14
call r8
nop
mov rcx, qword [rsi + 0x40]
cmp qword [rcx], 0
je 0x2026c6b8
nop
mov rcx, qword [rsi + 0x58]
mov edx, dword [rcx]
test edx, edx
jg 0x2026c620
nop
mov rcx, qword [rsi]
mov r8, qword [rcx + 0x18]
mov r9, qword [case.0x200c7fcc.0]
mov rcx, qword [rbp + 0xe8]
mov dword [rbp + 0xcc], ecx
mov dword [rbp + 0xc8], 0
mov rcx, rsi
mov edx, eax
mov rax, r8
call r9
jmp 0x2026c635
test r12d, r12d
jne 0x2026c79a
test r15, r15
jle 0x2026c79a
nop
mov rdx, qword [rbp + 0xe0]
mov rax, qword [rdx]
movsxd rax, dword [rax + 4]
mov rcx, qword [rdx + rax + 0x48]
movzx eax, word [rdx + rax + 0x58]
mov rdx, qword [rcx + 0x40]
cmp qword [rdx], 0
je 0x2026c750
nop
mov rdx, qword [rcx + 0x58]
mov r8d, dword [rdx]
test r8d, r8d
jle 0x2026c750
dec r8d
mov dword [rdx], r8d
mov rcx, qword [rcx + 0x40]
mov rdx, qword [rcx]
lea r8, [rdx + 2]
mov qword [rcx], r8
mov word [rdx], ax
jmp 0x2026c77b
nop
mov rdx, qword [rcx]
mov r8, qword [rdx + 0x18]
mov r9, qword [case.0x200c7fcc.0]
mov rdx, qword [rbp + 0xe8]
mov dword [rbp + 0xcc], edx
mov dword [rbp + 0xc8], r12d
mov edx, eax
mov rax, r8
call r9
cmp ax, 0xffff
je 0x2026c794
lea rax, [r15 - 1]
cmp r15, 1
mov r15, rax
jg 0x2026c700
jmp 0x2026c79a
mov r12d, 4
nop
mov rdx, qword [rbp + 0xe0]
mov rax, qword [rdx]
movsxd rax, dword [rax + 4]
mov qword [rdx + rax + 0x28], 0
nop
mov rax, qword [rdx]
movsxd rax, dword [rax + 4]
or r12d, dword [rdx + rax + 0x10]
cmp qword [rdx + rax + 0x48], 0
sete cl
or cl, byte [0x20572614]
movzx ecx, cl
and ecx, 1
shl ecx, 2
and r12d, 0x17
or r12d, ecx
mov dword [rdx + rax + 0x10], r12d
and r12d, dword [rdx + rax + 0x14]
jne 0x2026c83d
call fcn.2007ba10
test al, al
jne 0x2026c809
nop
mov rdx, qword [rbp + 0xb8]
nop
mov dword [rsp + 0x20], 0x2a0c6d20
call fcn.2026a6c0
nop
mov rax, qword [rbp + 0xb8]
mov rcx, qword [rax]
movsxd rcx, dword [rcx + 4]
mov rcx, qword [rax + rcx + 0x48]
test rcx, rcx
je 0x2026c831
nop
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
nop
call qword [case.0x200c7fcc.0]
mov rax, qword [rbp + 0xe0]
jmp 0x2026ca1d
nop
mov rsi, qword [rbp + 0xe8]
mov ecx, esi
xor ecx, 0xd5e2424a
mov r9d, 0x107f1fd4
call fcn.2026e860
mov edx, esi
xor edx, 0x1a4b23d6
mov r9d, 0x239a6682
call fcn.2026e860
test r12b, 2
lea rax, [0x20536dc0]
lea rdi, [0x20536da0]
cmove rdi, rax
xor esi, 0xffadebd7
mov rcx, rsi
mov r9d, 0x32ac75e0
call fcn.2026e860
test r12b, 4
lea rsi, [0x20536d80]
cmove rsi, rdi
lea rdi, [rbp + 0x98]
mov rcx, rdi
mov edx, 1
call fcn.200693e0
lea rbx, [rbp - 8]
mov r8d, 0x10
mov rcx, rdi
mov rdx, rbx
mov r9d, 0x7c8069a1
call fcn.2026e860
nop
mov dword [rsp + 0x20], 0xeb55d44d
lea r8, [rbp + 0x30]
mov rcx, rbx
mov r9, rsi
call fcn.2026a6c0
lea rax, [0x204116e8]
mov qword [rbp + 0x30], rax
lea rcx, [rbp + 0x30]
call fcn.201920e0
nop
mov eax, dword [rbp + 0xcc]
mov qword [rbp + 0xe8], rax
mov r12d, dword [rbp + 0xc8]
jmp 0x2026b7ce
lea rdi, [r12 + 8]
mov rax, qword [rbp + 0xe0]
lea rbx, [rax + 8]
xorps xmm0, xmm0
movups xmmword [r12 + 0x18], xmm0
mov r14, qword [rax + 0x18]
cmp qword [rax + 0x20], 0x10
jb 0x2026c948
mov rax, qword [rbp + 0xe0]
mov rbx, qword [rax + 8]
cmp r14, 0xf
ja 0x2026c96d
mov r8d, 0x10
mov rcx, rbx
mov rdx, rdi
mov r9d, 0x7c8069a1
call fcn.2026e860
mov r15d, 0xf
jmp 0x2026c9d9
nop
mov qword [rbp + 0xe8], r12
mov rax, r14
or rax, 0xf
movabs r15, 0x7fffffffffffffff
cmp rax, r15
cmovb r15, rax
cmp rax, 0xfff
jb 0x2026c9af
lea rcx, [r15 + 0x28]
call fcn.20077cb0
mov rdx, rax
add rdx, 0x27
and rdx, 0xffffffffffffffe0
mov qword [rdx - 8], rax
jmp 0x2026c9bb
lea rcx, [r15 + 1]
call fcn.20077cb0
mov rdx, rax
nop
mov qword [rdi], rdx
lea r8, [r14 + 1]
mov rcx, rbx
mov r9d, 0x7c8069a1
call fcn.2026e860
nop
mov r12, qword [rbp + 0xe8]
nop
mov qword [r12 + 0x18], r14
mov qword [r12 + 0x20], r15
lea rax, [0x20411008]
mov qword [r12], rax
add r12, 0x28
mov rcx, qword [rbp + 0xe0]
add rcx, 0x28
mov rax, rcx
mov qword [rbp + 0xe0], rcx
cmp rcx, r13
je 0x2026ca3f
mov eax, dword [rbp + 0x160]
test al, al
js 0x2026c919
xor eax, eax
mov qword [rbp + 0xe8], rax
mov rax, qword [rbp + 0xe8]
add rsp, 0x178
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
nop
mov qword [rsi], r12
xor eax, eax
mov qword [rbp + 0xe8], rax
jmp 0x2026ca24
add byte [rbx - 0x72b71c40], al
or eax, 0x1b4f45
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
dec dword [rdi]
test ah, ch
or dword [rax], eax
add byte [rax - 0x77], cl
stc
call fcn.20077cc0
jmp 0x2026e2f6
adc dword [rdi + 8], eax
add rbx, 8
mov rcx, rbx
call fcn.20077d00
jmp 0x2026e2f6
add byte [rax], al
nop
mov rsi, qword [r15]
test rsi, rsi
jne 0x2026dfb2
jmp 0x2026e218
call fcn.2026e860
lea rax, [0x204116e8]
mov qword [rdi], rax
jmp 0x2026e2f6
cmp al, byte [rsi]
add byte [rax], al
mov rcx, rsi
call fcn.20077cc0
mov rdi, rsi
jmp 0x2026e2f6
nop
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
nop
call qword [case.0x200c7fcc.0]
jmp 0x2026e218
add rax, rcx
mov rcx, rsi
call qword [case.0x200c7fcc.0]
mov rdi, rsi
jmp 0x2026e2f6
call fcn.2026e860
lea rax, [0x20411848]
mov qword [rbx], rax
jmp 0x2026dfa5
mov rdi, rbx
jmp 0x2026e2f6
test r14d, 0x100
jne 0x2026e2f6
nop
mov rdi, qword [r15 + 8]
cmp rsi, rdi
je 0x2026dfeb
nop dword [rax]
nop
mov rax, qword [rsi]
mov rax, qword [rax]
mov rcx, rsi
xor edx, edx
call qword [case.0x200c7fcc.0]
add rsi, 0x28
cmp rsi, rdi
jne 0x2026dfd0
nop
mov rdx, qword [r15]
mov rcx, qword [r15 + 0x10]
sub rcx, rdx
cmp rcx, 0x1000
jb 0x2026e01c
nop
mov rax, qword [rdx - 8]
add rdx, 0xfffffffffffffff8
sub rdx, rax
cmp rdx, 0x20
jae 0x2026e32a
add rcx, 0x27
mov rdx, rax
mov r9d, 0xd083192d
call fcn.2026e860
xorps xmm0, xmm0
movups xmmword [r15], xmm0
mov qword [r15 + 0x10], 0
xor edi, edi
jmp 0x2026e2f6
xor edi, edi
jmp 0x2026e2f6
mov rax, rdi
add rsp, 0x48
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
int3