Function at 0x200fb300
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x478
lea rbp, [rsp + 0x80]
movaps xmmword [rbp + 0x3e0], xmm6
mov qword [rbp + 0x3d8], 0xfffffffffffffffe
mov r14, rdx
mov rdi, rcx
call fcn.2010ee10
mov rcx, qword [0x203bc028]
mov edx, dword [0x203bbf6c]
mov r8d, 0xffffdb02
sub r8d, eax
mov dword [rbp + 0x3d4], r8d
sub edx, r8d
movsxd rax, edx
add rax, rcx
call qword [case.0x200b73a7.0]
mov r15d, eax
cmp qword [0x20403bc8], 0
mov esi, eax
mov dword [rbp + 0x3d0], eax
jne 0x200fb3d2
mov rax, rsi
shl rax, 0x20
or rax, rsi
movabs rcx, 0xc7105b0ec710520e
xor rcx, rax
mov rdx, qword [0x203bbfb0]
mov eax, dword [0x203bbf64]
sub eax, dword [rbp + 0x3d4]
cdqe
add rax, rdx
call qword [case.0x200b73a7.0]
mov qword [rbp + 0x390], rax
mov rcx, rax
call fcn.2006b720
mov rax, qword [rbp + 0x390]
mov qword [0x20403bc8], rax
mov r15d, dword [rbp + 0x3d0]
mov r13, rsi
shl r13, 0x22
or r13, rsi
mov rax, rsi
shl rax, 0x1f
xor rax, rsi
mov r9, rax
mov qword [rbp + 0x370], rax
mov rax, rsi
shl rax, 0x21
or rax, rsi
mov rbx, rax
mov rax, rsi
shl rax, 0x1b
xor rax, rsi
mov rdx, rax
mov qword [rbp + 0x398], rax
mov rax, rsi
shl rax, 0x1d
xor rax, rsi
mov qword [rbp + 0x3a8], rax
mov qword [rbp + 0x2f8], r14
mov rax, rsi
shl rax, 0x1e
xor rax, rsi
mov qword [rbp + 0x378], rax
mov r12, rsi
shl r12, 0x24
or r12, rsi
mov r14, rsi
shl r14, 0x23
or r14, rsi
mov r11, rsi
shl r11, 0x1c
xor r11, rsi
movabs rcx, 0xc60958f67eca1d0a
xor rcx, rdx
movabs rdx, 0x892bc5c462e75b1a
mov qword [rbp + 0x388], r13
xor rdx, r13
movabs rax, 0xe4b5e01f9d18a4e5
xor rax, rbx
add rax, rdx
movabs rdx, 0x351d272da74db6a
xor rdx, r9
add rax, rcx
movabs rcx, 0x935705bac58b2495
xor rcx, r11
add rcx, rdx
mov r10, rsi
shl r10, 0x20
or r10, rsi
movabs rdx, 0xb1ee93cdf135e2f5
xor rdx, rbx
movabs r8, 0x141de1efc7870448
xor r8, r10
add r8, rdx
movabs rdx, 0x5df7f5fe3878fbb7
xor rdx, r12
movabs r9, 0xa6a69c1d914bf47c
xor r9, r13
add r9, rdx
add r9, rcx
add r9, rax
movabs rax, 0x49690a6a8eb40b83
xor rax, r11
add r9, r8
add rax, r9
add rax, 6
mov qword [rbp + 0x238], rax
movabs rcx, 0xf9c77d2748efa4f6
xor rcx, qword [rbp + 0x398]
movabs rax, 0x686e57b86b127ddb
xor rax, r10
add rax, rcx
movabs rcx, 0x864a548bcbae7233
xor rcx, r11
movabs rdx, 0x22eb855f69227909
xor rdx, r14
add rdx, rcx
movabs rcx, 0x4400b80754518dcc
mov rsi, qword [rbp + 0x378]
xor rcx, rsi
add rdx, rcx
movabs rcx, 0x6145e58a14ed8224
xor rcx, rsi
movabs r8, 0xfc9fee8e99198885
xor r8, r11
add r8, rcx
movabs rcx, 0xfaabd0a2b5deadc5
mov r13, qword [rbp + 0x370]
xor rcx, r13
movabs r9, 0xd1e0d18e0f18cdf6
xor r9, r10
add r9, rcx
add r9, r8
add r9, rdx
movabs rcx, 0xb83f421ae1fee52
xor rcx, rbx
add rcx, rax
movabs rax, 0x4b98ab01d1e011ad
xor rax, rsi
add rax, rcx
add rax, r9
movabs rcx, 0x2286f9de96dd86f6
xor rcx, r10
movabs rdx, 0x23ec7b7af9deae99
mov r9, rbx
xor rdx, rbx
add rdx, rcx
movabs rcx, 0x6ab1eae906215166
xor rcx, r14
add rcx, rdx
movabs rdx, 0x3793ccb186e6777a
xor rdx, r14
add rdx, rcx
movabs rcx, 0xe8fcb4c64a21523a
xor rcx, rbx
add rcx, rdx
add rcx, rax
movabs rax, 0xef37f7a780e73209
mov r8, qword [rbp + 0x398]
xor rax, r8
add rax, rcx
add rax, 8
mov qword [rbp + 0x248], rax
movabs rax, 0xabd025239e73ff2b
xor rax, rsi
movabs rcx, 0x7105b0e0c7105b26
xor rcx, r12
add rcx, rax
movabs rax, 0x14ee7cffe18c00d4
xor rax, r12
add rax, rcx
inc rax
mov qword [rbp + 0x250], rax
movabs rbx, 0x1c416c38c7105b06
mov rdx, qword [rbp + 0x388]
xor rbx, rdx
movabs rcx, 0x63882d87c7105b16
xor rcx, r13
mov qword [rbp + 0x268], rcx
movabs rcx, 0x1c416c38c7105b2e
xor rcx, rdx
mov qword [rbp + 0x308], rcx
mov ecx, r15d
xor ecx, 0xc7135b0e
mov dword [rbp + 0x2a8], ecx
mov ecx, r15d
xor ecx, 0xc7115b0e
mov dword [rbp + 0x3a4], ecx
mov ecx, r15d
xor ecx, 0x3d270e9a
mov dword [rbp + 0x2b0], ecx
movabs rcx, 0x8e20b61cc7105c0e
xor rcx, r9
mov qword [rbp + 0x220], rcx
movabs rcx, 0x1c416c38c7105b0d
xor rcx, rdx
mov qword [rbp + 0x1b0], rcx
movabs rcx, 0x63882d8b7105b96
xor rcx, r8
mov qword [rbp + 0x210], rcx
mov ecx, r15d
xor ecx, 0xc7125b0e
mov dword [rbp + 0x36c], ecx
movabs rcx, 0x18e20b6107105c0e
mov rax, qword [rbp + 0x3a8]
xor rcx, rax
mov qword [rbp + 0x200], rcx
movabs rcx, 0xce3be93cb8efa4f2
xor rcx, rsi
mov qword [rbp + 0x1b8], rcx
mov ecx, r15d
xor ecx, 0x463b8ed8
mov dword [rbp + 0x344], ecx
movabs rdx, 0x63882d8b7105b0a
xor rdx, r8
mov r13, r8
movabs rcx, 0x76fa4f1f38efa4f1
xor rcx, r12
mov qword [rbp + 0x390], rcx
movabs rcx, 0x8e20b61cc7105b2e
mov qword [rbp + 0x360], r9
xor rcx, r9
mov qword [rbp + 0x2c0], rcx
mov ecx, r15d
xor ecx, 0x5b06
mov dword [rbp + 0x2b8], ecx
movabs rcx, 0x18e20b6107105b01
xor rcx, rax
mov qword [rbp + 0x338], rcx
movabs rcx, 0x3882d870c7105b01
xor rcx, r14
mov qword [rbp + 0x300], rcx
mov ecx, r15d
xor cl, 0x2f
mov byte [rbp + 0x3c5], cl
mov ecx, r15d
xor cl, 0xc8
mov byte [rbp + 0x3c6], cl
mov ecx, r15d
xor cl, 0x83
mov byte [rbp + 0x3c7], cl
mov r8d, r15d
xor r8d, 0xc7105b21
movabs rcx, 0x7105b0e0c7105b20
xor rcx, r12
mov qword [rbp + 0x218], rcx
movabs rcx, 0xc7105b027105b01
xor rcx, r11
mov qword [rbp + 0x2d8], rcx
movabs rcx, 0x63882d87c71054f1
xor rcx, qword [rbp + 0x370]
mov qword [rbp + 0x240], rcx
movabs rcx, 0x7105b0e0c7105b2e
mov qword [rbp + 0x3b0], r12
xor rcx, r12
mov qword [rbp + 0x358], rcx
movabs rcx, 0xc7105b027105b96
mov qword [rbp + 0x350], r11
xor rcx, r11
mov qword [rbp + 0x1c8], rcx
mov ecx, r15d
xor ecx, 0x38efa4f5
mov dword [rbp + 0x2b4], ecx
movabs rcx, 0xc7105b0ec71054f1
xor rcx, r10
mov qword [rbp + 0x1d8], rcx
movabs rcx, 0x3882d870c7105b02
xor rcx, r14
mov qword [rbp + 0x1e0], rcx
movabs rcx, 0x3882d870c7105b1f
mov qword [rbp + 0x318], r14
xor rcx, r14
mov qword [rbp + 0x230], rcx
movabs rcx, 0x31c416c347105b01
xor rcx, rsi
mov qword [rbp + 0x208], rcx
mov r9, qword [rbp + 0x2f8]
movabs rcx, 0xf9c77d2748efa4fe
xor rcx, r13
mov qword [rbp + 0x228], rcx
mov ecx, r15d
xor ecx, 0x4a0f
mov dword [rbp + 0x294], ecx
movabs rcx, 0xa64130cec7105c8e
xor rcx, r10
mov qword [rbp + 0x1a0], rcx
movabs rcx, 0xc7105b0ec7105b1e
mov qword [rbp + 0x380], r10
xor rcx, r10
mov qword [rbp + 0x1a8], rcx
mov ecx, r15d
xor ecx, 0xcfedfc04
mov dword [rbp + 0x298], ecx
mov ecx, r15d
xor ecx, 0x5b09
mov dword [rbp + 0x29c], ecx
mov ecx, r15d
xor ecx, 0x5b1e
mov dword [rbp + 0x2ac], ecx
mov ecx, r15d
xor ecx, 0x5bc5
mov dword [rbp + 0x2bc], ecx
mov ecx, r15d
xor ecx, 0xc7105b04
mov dword [rbp + 0x2a0], ecx
xor r15d, 0xc71051c6
mov dword [rbp + 0x2a4], r15d
cmp r8d, 2
mov ecx, 1
cmovl r8d, ecx
lea rax, [rbx + rbp]
add rax, 0xffffffffffffffb8
mov qword [rbp + 0x270], rax
mov eax, r8d
and eax, 0x7fffffe0
mov qword [rbp + 0x288], rax
mov qword [rbp + 0x2e0], r8
and r8d, 0x7ffffff8
mov qword [rbp + 0x258], r8
add rdx, 0xc
mov qword [rbp + 0x1f8], rdx
xorps xmm6, xmm6
mov rax, qword [0x20403bc8]
mov qword [rbp + 0x2f0], rax
lea rax, [rdi + 8]
mov qword [rbp + 0x310], rax
lea rax, [rdi + 0x2e8]
mov qword [rbp + 0x1e8], rax
lea rax, [rdi + 0x68]
mov qword [rbp + 0x1c0], rax
lea rax, [rdi + 0x28]
mov qword [rbp + 0x1d0], rax
lea rax, [rdi + 0x128]
mov qword [rbp + 0x2c8], rax
lea rax, [rdi + 0x130]
mov qword [rbp + 0x2e8], rax
lea rax, [rdi + 0x308]
mov qword [rbp + 0x3c8], rax
lea rax, [rdi + 0xa8]
mov qword [rbp + 0x1f0], rax
lea rax, [rdi + 0xe8]
mov qword [rbp + 0x280], rax
lea rax, [rdi + 0xf0]
mov qword [rbp + 0x278], rax
lea rbx, [rbp + 0x320]
xor r13d, r13d
xor esi, esi
mov qword [rbp + 0x330], rdi
jmp 0x200fbaa9
mov eax, dword [rdx + 4]
mov dword [rdi + 0x2f4], eax
nop dword [rax]
inc esi
movzx eax, word [rdx + 2]
add r13d, eax
mov r14, qword [r9 + 0x10]
cmp r13d, r14d
jge 0x200fc942
test r14, r14
je 0x200fbabf
mov r14, qword [r9 + 8]
mov r12d, r13d
lea rdx, [r14 + r12]
movzx eax, word [r14 + r12]
cmp eax, 0x101
jle 0x200fbb10
cmp eax, 0x4003
jg 0x200fbc30
cmp eax, 0x102
je 0x200fbf9b
cmp eax, 0x104
je 0x200fba94
cmp eax, 0x108
jne case.0x200fbb25.2
mov eax, dword [rdx + 4]
mov dword [rdi + 0x2f0], eax
jmp case.0x200fbb25.1
dec eax
cmp eax, 0xb
ja case.0x200fbb25.2
lea rcx, [0x200fea9c]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
mov eax, dword [rbp + 0x29c]
cmp word [rdx + 4], ax
jae 0x200fbb4f
mov eax, dword [rbp + 0x2ac]
cmp word [rdx + 6], ax
jae 0x200fbb4f
mov eax, dword [rbp + 0x2bc]
cmp word [rdx + 8], ax
jb 0x200fd5eb
mov dword [rbp + 0x3b8], r13d
mov r13, r9
movzx r9d, word [rdx + 8]
movzx r8d, word [rdx + 6]
mov rdi, rdx
movzx edx, word [rdx + 4]
mov rcx, qword [0x203bbfb8]
mov eax, dword [0x203bbf88]
sub eax, dword [rbp + 0x3d4]
cdqe
add rax, rcx
mov dword [rsp + 0x20], 0
lea r12, [rbp - 0x48]
mov rcx, r12
call qword [case.0x200b73a7.0]
mov dword [rsp + 0x20], 0
mov rcx, rbx
mov edx, dword [rbp + 0x2a0]
mov r8d, edx
mov r9d, dword [rbp + 0x2a4]
call fcn.2010ed30
mov r14d, esi
mov rcx, r12
mov rdx, rbx
call fcn.2010ed40
mov r15d, eax
mov rcx, qword [0x203bbfd0]
mov eax, dword [0x203bbf78]
mov esi, dword [rbp + 0x3d4]
sub eax, esi
cdqe
add rax, rcx
mov rcx, rbx
call qword [case.0x200b73a7.0]
mov rcx, qword [0x203bbfd0]
mov eax, dword [0x203bbf78]
sub eax, esi
cdqe
add rax, rcx
mov rcx, r12
call qword [case.0x200b73a7.0]
mov rax, qword [rbp + 0x330]
mov byte [rax + 0x2cc], r15b
mov esi, r14d
inc esi
mov rdx, rdi
mov rdi, rax
mov r9, r13
mov r13d, dword [rbp + 0x3b8]
jmp case.0x200fbb25.2
cmp eax, 0x4004
je 0x200fc129
cmp eax, 0x4008
je 0x200fbe8d
cmp eax, 0x4009
jne case.0x200fbb25.2
mov r12, r9
mov r8, qword [rdi + 0x78]
mov rcx, r8
test r8, r8
je 0x200fbc64
mov rcx, qword [rdi + 0x70]
mov r15, rdx
add rdx, 4
call fcn.202d5100
mov eax, dword [rdi + 0x10]
and eax, dword [rbp + 0x2a8]
cmp eax, dword [rbp + 0x3a4]
je 0x200fbdea
mov r8, qword [rdi + 0x78]
mov rdx, r8
test r8, r8
je 0x200fbc95
mov rdx, qword [rdi + 0x70]
mov rcx, qword [rdi + 8]
mov r9, qword [0x203bc008]
mov eax, dword [0x203bbf68]
sub eax, dword [rbp + 0x3d4]
cdqe
add rax, r9
mov r9d, dword [rbp + 0x2b0]
mov dword [rsp + 0x28], r9d
mov byte [rsp + 0x20], 0
mov r9, qword [rbp + 0x1e8]
call qword [case.0x200b73a7.0]
test al, al
je 0x200fcde9
mov dword [rbp + 0x3b8], esi
cmp qword [0x204018c8], 0
jne 0x200fbd29
mov rcx, qword [0x203bbfb0]
mov eax, dword [0x203bbf64]
sub eax, dword [rbp + 0x3d4]
cdqe
add rax, rcx
mov rcx, qword [rbp + 0x220]
call qword [case.0x200b73a7.0]
mov qword [rbp + 0x348], rax
mov rcx, rax
call fcn.20077ed0
mov rax, qword [rbp + 0x348]
mov qword [0x204018c8], rax
mov rsi, qword [0x204018c8]
mov rax, qword [rbp + 0x310]
mov rbx, qword [rax]
mov eax, dword [rsi + 8]
mov dword [rbx + 8], eax
movzx eax, word [rsi + 0xc]
mov word [rbx + 0xc], ax
mov eax, dword [rsi + 0x10]
mov dword [rbx + 0x10], eax
mov eax, dword [rsi + 0x14]
mov dword [rbx + 0x14], eax
lea rdx, [rsi + 0x18]
lea rcx, [rbx + 0x18]
mov r8, qword [0x203bbfd8]
mov eax, dword [0x203bbf98]
mov r14d, dword [rbp + 0x3d4]
sub eax, r14d
cdqe
add rax, r8
call qword [case.0x200b73a7.0]
lea rdx, [rsi + 0x40]
lea rcx, [rbx + 0x40]
mov r8, qword [0x203bbfd8]
mov eax, dword [0x203bbf98]
sub eax, r14d
cdqe
add rax, r8
call qword [case.0x200b73a7.0]
lea rdx, [rsi + 0x68]
lea rcx, [rbx + 0x68]
mov r8, qword [0x203bbfd8]
mov eax, dword [0x203bbf98]
sub eax, r14d
cdqe
add rax, r8
call qword [case.0x200b73a7.0]
movzx eax, byte [rsi + 0x90]
mov byte [rbx + 0x90], al
mov eax, dword [rsi + 0x94]
mov dword [rbx + 0x94], eax
mov esi, dword [rbp + 0x3b8]
lea rbx, [rbp + 0x320]
inc esi
mov rdx, r15
jmp 0x200fc4f3
mov r14, r9
mov eax, dword [rdx + 4]
mov dword [rbp - 0x48], eax
mov eax, dword [rdx + 8]
mov dword [rbp - 0x44], eax
mov rdi, rdx
mov rax, qword [rdx + 0xc]
mov qword [rbp - 0x40], rax
mov eax, dword [rbp + 0x36c]
mov dword [rbp + 0x320], eax
mov word [rbp + 0x324], 0
mov eax, dword [rbp + 0x294]
mov word [rbp + 0x326], ax
mov rax, qword [rbp + 0x1a0]
mov qword [rbp + 0x328], rax
mov rcx, qword [0x203bbfe0]
mov eax, dword [0x203bbf74]
sub eax, dword [rbp + 0x3d4]
cdqe
add rax, rcx
mov rcx, rbx
lea rdx, [rbp - 0x48]
mov r8, qword [rbp + 0x1a8]
mov r9d, dword [rbp + 0x298]
call qword [case.0x200b73a7.0]
test eax, eax
jne 0x200fd5ce
inc esi
mov rdx, rdi
mov rdi, qword [rbp + 0x330]
mov r9, r14
jmp case.0x200fbb25.2
mov r15, r9
mov ebx, esi
lea rax, [rdx + 4]
mov ecx, dword [rdx + 4]
mov dword [rdi + 0x2e8], ecx
mov ecx, dword [rdx + 8]
mov dword [rdi + 0x2ec], ecx
mov rcx, qword [rbp + 0x1b0]
mov r14, rdx
test byte [rdx + rcx*4 + 4], 1
je 0x200fbec2
mov ecx, dword [rbp + 0x3a4]
or dword [rdi + 0x10], ecx
mov edx, dword [rax + 8]
mov rcx, qword [0x203bc030]
mov eax, dword [0x203bbf94]
mov esi, dword [rbp + 0x3d4]
sub eax, esi
cdqe
add rax, rcx
mov rcx, qword [rbp + 0x1c0]
call qword [case.0x200b73a7.0]
inc ebx
mov eax, dword [rbp + 0x3a4]
test dword [rdi + 0x10], eax
je 0x200fc2fe
cmp qword [0x20401a88], 0
mov esi, ebx
lea rbx, [rbp + 0x320]
jne 0x200fbf52
mov rcx, qword [0x203bbfb0]
mov eax, dword [0x203bbf64]
sub eax, dword [rbp + 0x3d4]
cdqe
add rax, rcx
mov rcx, qword [rbp + 0x210]
call qword [case.0x200b73a7.0]
mov qword [rbp + 0x3b8], rax
mov rcx, rax
call fcn.200f8a70
mov rax, qword [rbp + 0x3b8]
mov qword [0x20401a88], rax
mov rcx, qword [0x20401a88]
mov rdx, qword [0x203bbfc8]
mov eax, dword [0x203bbf54]
sub eax, dword [rbp + 0x3d4]
cdqe
add rax, rdx
mov rdx, qword [rbp + 0x1d0]
mov r8, qword [rbp + 0x310]
call qword [case.0x200b73a7.0]
test al, al
je 0x200fc348
mov eax, dword [rbp + 0x36c]
or dword [rdi + 0x10], eax
jmp 0x200fc348
mov r12, r9
mov r15, rdx
mov edx, dword [rdx + 4]
mov qword [rbp + 0x320], 0
mov rax, qword [rbp + 0x2f0]
mov rax, qword [rax + 0x5c8]
mov rcx, qword [rdi + 0x18]
mov r8, rbx
xor r9d, r9d
call qword [case.0x200b73a7.0]
mov rdx, r15
mov rax, qword [rbp + 0x320]
mov qword [rdi + 0x2e0], rax
mov eax, dword [rbp + 0x320]
cmp eax, dword [r15 + 4]
jne 0x200fc4f1
mov dword [rbp + 0x290], 0
mov eax, dword [rdi + 0x2f8]
mov ecx, eax
not ecx
and ecx, dword [rbp + 0x2b4]
xor eax, dword [rbp + 0x3d0]
xor eax, 0xc7105b0a
or eax, ecx
mov ecx, dword [rdx + 8]
cmp ecx, 0x1000
mov edx, 0x1000
cmovb edx, ecx
cmp eax, 0xffffffff
cmove edx, ecx
mov rcx, qword [0x203bc030]
mov eax, dword [0x203bbf94]
sub eax, dword [rbp + 0x3d4]
cdqe
add rax, rcx
mov rcx, qword [rbp + 0x1f0]
call qword [case.0x200b73a7.0]
mov rax, r15
mov r8d, dword [r15 + 8]
mov qword [rdi + 0x2d0], r8
add r8, qword [rbp + 0x1d8]
mov rcx, qword [rbp + 0x1e0]
shr r8, cl
cmp qword [rdi + 0x100], r8
jae 0x200fc41a
mov r14d, esi
mov rbx, qword [rdi + 0xf8]
test rbx, rbx
je 0x200fc426
mov rsi, qword [rdi + 0xf0]
mov rax, qword [rbp + 0x278]
movups xmmword [rax], xmm6
mov qword [rax + 0x10], 0
mov byte [rdi + 0x108], 1
mov rcx, qword [0x203bc010]
mov eax, dword [0x203bbf8c]
sub eax, dword [rbp + 0x3d4]
cdqe
add rax, rcx
mov rcx, qword [rbp + 0x280]
xor edx, edx
call qword [case.0x200b73a7.0]
test rsi, rsi
je 0x200fc44d
mov rax, qword [rbp + 0x278]
mov rcx, qword [rax]
imul rbx, qword [rbp + 0x230]
mov rdx, rsi
mov r8, rbx
call fcn.202d5100
mov rcx, qword [0x203bc038]
mov eax, dword [0x203bbf84]
sub eax, dword [rbp + 0x3d4]
cdqe
add rax, rcx
mov rcx, rsi
mov edx, dword [rbp + 0x344]
call qword [case.0x200b73a7.0]
jmp 0x200fc44d
mov dword [rbp + 0x3b8], esi
movzx esi, word [rdx + 2]
add rsi, qword [rbp + 0x1b8]
mov rax, qword [rbp + 0x2e8]
mov rcx, qword [rax]
test rcx, rcx
je 0x200fc1aa
cmp dword [rdi + 0x14c], 1
jne 0x200fc179
mov r8, qword [rdi + 0x138]
mov rdi, rdx
xor edx, edx
call fcn.202d57b0
mov rdx, rdi
mov rdi, qword [rbp + 0x330]
mov rcx, qword [rdi + 0x130]
test rcx, rcx
je 0x200fc1aa
mov rdi, rdx
mov rdx, qword [0x203bc038]
mov eax, dword [0x203bbf84]
sub eax, dword [rbp + 0x3d4]
cdqe
add rax, rdx
mov edx, dword [rbp + 0x344]
call qword [case.0x200b73a7.0]
mov rdx, rdi
mov rdi, qword [rbp + 0x330]
mov qword [rbp + 0x348], rdx
lea rbx, [rdx + 4]
mov rax, qword [rbp + 0x2e8]
movups xmmword [rax], xmm6
mov qword [rax + 0x10], 0
mov byte [rdi + 0x148], 1
test rsi, rsi
je 0x200fc217
mov rcx, qword [0x203bbfa8]
mov eax, dword [0x203bbf60]
sub eax, dword [rbp + 0x3d4]
cdqe
add rax, rcx
mov rcx, rsi
call qword [case.0x200b73a7.0]
mov qword [rdi + 0x130], rax
mov qword [rdi + 0x140], rsi
mov qword [rdi + 0x138], rsi
mov rcx, rax
mov rdx, rbx
mov r8, rsi
call fcn.202d5100
mov rsi, qword [rdi + 0x150]
jmp 0x200fc224
add rsi, 8
cmp rsi, qword [rdi + 0x158]
je 0x200fc249
mov rcx, qword [rsi]
test rcx, rcx
je 0x200fc220
mov rax, qword [rcx]
mov rax, qword [rax + 8]
mov edx, 1
call qword [case.0x200b73a7.0]
jmp 0x200fc220
mov esi, dword [rbx]
test esi, esi
je 0x200fc353
jle 0x200fc920
add r14, qword [rbp + 0x1f8]
add r14, r12
nop word cs:[rax + rax]
mov rax, qword [rbp + 0x390]
cmp qword [rdi + 0x170], rax
je 0x200fe3c4
mov r12d, dword [r14]
mov rbx, qword [rdi + 0x168]
mov r15, qword [r14 - 8]
mov rcx, qword [0x203bbfb0]
mov eax, dword [0x203bbf64]
sub eax, dword [rbp + 0x3d4]
cdqe
add rax, rcx
mov rcx, qword [rbp + 0x2c0]
call qword [case.0x200b73a7.0]
mov qword [rax + 0x10], r15
mov dword [rax + 0x18], r12d
mov rcx, qword [rdi + 0x170]
mov rdx, rcx
xor rdx, 1
and ecx, 1
lea rcx, [rdx + rcx*2]
mov qword [rdi + 0x170], rcx
mov rcx, qword [rbx + 8]
mov qword [rax], rbx
mov qword [rax + 8], rcx
mov qword [rbx + 8], rax
mov qword [rcx], rax
add r14, 0xc
dec esi
jne 0x200fc270
jmp 0x200fc920
mov rcx, qword [0x203bbfb0]
mov eax, dword [0x203bbf64]
sub eax, esi
cdqe
add rax, rcx
mov rcx, qword [rbp + 0x200]
call qword [case.0x200b73a7.0]
mov qword [rbp + 0x3b8], rax
mov rcx, rax
call fcn.20077ed0
mov rax, qword [rbp + 0x310]
mov rcx, qword [rbp + 0x3b8]
mov qword [rax], rcx
mov esi, ebx
lea rbx, [rbp + 0x320]
mov rdx, r14
mov r9, r15
jmp case.0x200fbb25.2
mov eax, dword [rbp + 0x2b8]
mov rcx, qword [rbp + 0x348]
cmp word [rcx + 2], ax
jbe 0x200fc920
mov rax, qword [rbp + 0x3c8]
mov rcx, qword [rbp + 0x338]
cmp qword [rdi + 0x320], rcx
jbe 0x200fc388
mov rax, qword [rdi + 0x308]
mov qword [rdi + 0x318], 0
mov byte [rax], 0
mov rax, qword [rbp + 0x268]
mov qword [rbp + rax - 0x48], 0
mov rax, qword [rbp + 0x300]
mov rsi, qword [rbp + 0x308]
mov qword [rbp + rsi - 0x48], rax
mov r14, qword [rbp + 0x270]
mov byte [r14], 0
movzx eax, byte [0x203bb72f]
movzx edx, byte [rbp + 0x3c5]
cmp al, dl
mov r15, qword [rbp + 0x2d8]
movzx ecx, byte [rbp + 0x3c6]
movzx r8d, byte [rbp + 0x3c7]
lea r9, [0x203bb700]
lea r10, [0x202f78e0]
je 0x200fc5c9
nop
mov eax, ecx
lock cmpxchg byte [0x203bb72f], r8b
je 0x200fc4fb
cmp al, dl
jne 0x200fc400
jmp 0x200fc5c9
mov r14d, esi
mov qword [rdi + 0xf8], r8
jmp 0x200fc44d
mov rcx, qword [0x203bc010]
mov eax, dword [0x203bbf8c]
sub eax, dword [rbp + 0x3d4]
cdqe
add rax, rcx
mov rcx, qword [rbp + 0x280]
xor edx, edx
call qword [case.0x200b73a7.0]
mov rcx, qword [rdi + 0x18]
mov rdx, qword [rdi + 0xb8]
cmp rdx, 0x1000
mov esi, 0x1000
cmovb rsi, rdx
mov rax, qword [rbp + 0x2f0]
mov rax, qword [rax + 0x5b8]
test rdx, rdx
je 0x200fc482
mov rdx, qword [rdi + 0xb0]
mov qword [rsp + 0x20], 0
mov r8d, esi
lea r9, [rbp + 0x290]
call qword [case.0x200b73a7.0]
test eax, eax
lea rbx, [rbp + 0x320]
je 0x200fcf1a
cmp qword [rdi + 0xf8], 0
je 0x200fc4eb
mov rax, qword [rdi + 0xf0]
mov byte [rax], 1
mov rax, qword [rbp + 0x208]
cmp qword [rdi + 0xb8], rax
jbe 0x200fc4eb
mov rax, qword [rdi + 0xb0]
mov rcx, qword [rdi + 0xf0]
add rsi, qword [rbp + 0x228]
movups xmm0, xmmword [rax + rsi]
movups xmmword [rcx + 1], xmm0
mov esi, r14d
mov rdx, r15
inc esi
mov r9, r12
jmp case.0x200fbb25.2
mov r8, qword [rbp + 0x2e0]
cmp r8d, 8
jae 0x200fc50f
xor eax, eax
jmp 0x200fc5b0
cmp r8d, 0x20
jae 0x200fc519
xor ecx, ecx
jmp 0x200fc576
xor eax, eax
mov rcx, qword [rbp + 0x288]
nop word cs:[rax + rax]
movaps xmm0, xmmword [rax + r10]
movaps xmm1, xmmword [rax + r10 + 0x10]
xorps xmm0, xmmword [rax + r9]
xorps xmm1, xmmword [rax + r9 + 0x10]
movaps xmmword [rax + r9], xmm0
movaps xmmword [rax + r9 + 0x10], xmm1
add rax, 0x20
cmp rcx, rax
jne 0x200fc530
mov r8, qword [rbp + 0x2e0]
cmp rcx, r8
je 0x200fc5c1
mov rax, qword [rbp + 0x288]
mov rcx, rax
test r8b, 0x18
je 0x200fc5b0
mov r8, qword [rbp + 0x258]
nop dword [rax]
mov rax, qword [rcx + r10]
xor qword [rcx + r9], rax
add rcx, 8
cmp r8, rcx
jne 0x200fc580
mov rax, r8
mov rcx, r8
mov r8, qword [rbp + 0x2e0]
cmp rcx, r8
je 0x200fc5c1
nop word cs:[rax + rax]
movzx ecx, byte [rax + r10]
xor byte [rax + r9], cl
inc rax
cmp r8, rax
jne 0x200fc5b0
mov eax, edx
xchg byte [0x203bb72f], al
mov rcx, qword [0x203bbfc0]
mov eax, dword [0x203bbf70]
sub eax, dword [rbp + 0x3d4]
cdqe
add rax, rcx
mov rcx, r14
mov rdx, qword [rbp + 0x218]
call qword [case.0x200b73a7.0]
lea rax, [0x202f2f78]
mov qword [rbp - 0x48], rax
mov rax, qword [rbp + 0x268]
mov r8, qword [rbp + rax - 0x48]
mov r9, r14
mov rax, qword [rbp + 0x300]
cmp qword [rbp + rsi - 0x48], rax
jbe 0x200fc61c
mov r9, qword [r14]
mov rcx, qword [rdi + 0x318]
mov rax, qword [rdi + 0x320]
mov rdx, rax
sub rdx, rcx
cmp rdx, r8
jae 0x200fc64b
mov qword [rsp + 0x20], r8
mov rcx, qword [rbp + 0x3c8]
mov rdx, r8
call fcn.2006ff40
jmp 0x200fc687
lea rsi, [rcx + r8]
mov qword [rdi + 0x318], rsi
mov r14, qword [rbp + 0x3c8]
cmp rax, r15
jbe 0x200fc669
mov r14, qword [rdi + 0x308]
add rcx, r14
mov rdx, r9
call fcn.202d5100
mov byte [r14 + rsi], 0
mov rsi, qword [rbp + 0x308]
mov r14, qword [rbp + 0x270]
mov rax, qword [rbp + rsi - 0x48]
cmp rax, r15
lea rsi, [rbp - 0x48]
jbe 0x200fc6f1
mov rcx, qword [r14]
mov rdx, qword [rbp + 0x238]
add rdx, rax
cmp rdx, qword [rbp + 0x240]
jbe 0x200fc6d3
mov r8, qword [rcx - 8]
add rcx, qword [rbp + 0x248]
sub rcx, r8
cmp rcx, qword [rbp + 0x358]
jae 0x200fe3bf
add rax, qword [rbp + 0x250]
mov rdx, rax
mov rcx, r8
mov r8, qword [0x203bbfe8]
mov eax, dword [0x203bbf80]
sub eax, dword [rbp + 0x3d4]
cdqe
add rax, r8
call qword [case.0x200b73a7.0]
mov eax, dword [rbx + 4]
mov dword [rbp + 0x2d0], eax
add rbx, 8
xor r14d, r14d
cmp r14d, dword [rbp + 0x2d0]
jge 0x200fc8fb
nop
mov rcx, qword [0x203bc020]
mov eax, dword [0x203bbf90]
sub eax, dword [rbp + 0x3d4]
cdqe
add rax, rcx
mov rcx, rsi
call qword [case.0x200b73a7.0]
lea rax, [rbp + 0x160]
cmp qword [rbp + 0x2c8], rax
je 0x200fc860
mov rsi, qword [rdi + 0x138]
mov r12, rsi
test rsi, rsi
je 0x200fc75b
mov r12, qword [rdi + 0x130]
mov rcx, qword [rbp + 0x168]
test rcx, rcx
je 0x200fc7ae
cmp dword [rbp + 0x184], 1
jne 0x200fc78a
mov r8, qword [rbp + 0x170]
xor edx, edx
call fcn.202d57b0
mov rcx, qword [rbp + 0x168]
test rcx, rcx
je 0x200fc7ae
mov rdx, qword [0x203bc038]
mov eax, dword [0x203bbf84]
sub eax, dword [rbp + 0x3d4]
cdqe
add rax, rdx
mov edx, dword [rbp + 0x344]
call qword [case.0x200b73a7.0]
lea rax, [rbp + 0x160]
movups xmmword [rax + 8], xmm6
mov qword [rax + 0x18], 0
mov byte [rbp + 0x180], 1
test rsi, rsi
je 0x200fc820
mov rcx, rsi
call fcn.20080da0
mov qword [rbp + 0x168], rax
mov qword [rbp + 0x178], rsi
mov qword [rbp + 0x170], rsi
test r12, r12
je 0x200fc7ff
mov rcx, rax
mov rdx, r12
mov r8, rsi
call fcn.202d5100
jmp 0x200fc820
cmp dword [rbp + 0x184], 1
jne 0x200fc820
mov rcx, rax
xor edx, edx
mov r8, rsi
call fcn.202d57b0
nop word cs:[rax + rax]
mov rsi, qword [rbp + 0x188]
jmp 0x200fc834
add rsi, 8
cmp rsi, qword [rbp + 0x190]
je 0x200fc860
mov rcx, qword [rsi]
test rcx, rcx
je 0x200fc830
mov rax, qword [rcx]
mov rax, qword [rax + 8]
mov edx, 1
call qword [case.0x200b73a7.0]
jmp 0x200fc830
lea rcx, [rbp - 0x48]
mov rdx, rbx
call fcn.200f9db0
test al, al
je 0x200fccac
movsxd rsi, dword [rbp - 0x48]
cmp qword [0x20401a88], 0
jne 0x200fc8ab
mov rcx, qword [rbp + 0x1c8]
call fcn.20080910
mov qword [rbp + 0x260], rax
mov rcx, rax
call fcn.200f8a70
mov rax, qword [rbp + 0x260]
mov qword [0x20401a88], rax
mov rcx, qword [0x20401a88]
lea rdx, [rbp - 0x48]
call fcn.201002c0
test al, al
je 0x200fccac
add rbx, rsi
mov rcx, qword [0x203bbff0]
mov eax, dword [0x203bbf50]
sub eax, dword [rbp + 0x3d4]
cdqe
add rax, rcx
lea rsi, [rbp - 0x48]
mov rcx, rsi
call qword [case.0x200b73a7.0]
inc r14d
cmp r14d, dword [rbp + 0x2d0]
jl 0x200fc710
mov rax, qword [rbp + 0x3c8]
cmp qword [rdi + 0x320], r15
jbe 0x200fc912
mov rax, qword [rdi + 0x308]
mov qword [rdi + 0x318], 0
mov byte [rax], 0
mov esi, dword [rbp + 0x3b8]
inc esi
mov r9, qword [rbp + 0x2f8]
lea rbx, [rbp + 0x320]
mov rdx, qword [rbp + 0x348]
jmp case.0x200fbb25.2
mov r10d, dword [rbp + 0x3d0]
mov ecx, r10d
xor ecx, 0xc7105b05
mov eax, r10d
xor eax, 0x78d8dd55
cmp dword [0x203bb9c0], eax
mov rax, qword [0x203bb9c8]
jne 0x200fc97f
movabs rdx, 0x38efa4f138efa4f5
xor rdx, qword [rbp + 0x380]
mov eax, dword [rax + rdx*4]
jmp 0x200fc9b8
movsxd rdx, dword [rax]
movabs r8, 0x699e3f3d42f7cff
xor r8, qword [rbp + 0x3b0]
movabs r9, 0x4f73f7e22bd08300
xor r9, qword [rbp + 0x380]
add r9, r8
add r9, rax
lea rax, [rdx + r9]
inc rax
mov qword [rbp + 0x2c0], rax
mov al, 1
mov edx, dword [0x202f7c0c]
mov dword [rbp + 0x390], edx
cmp esi, ecx
je 0x200fd5d0
mov eax, dword [rdi + 0x10]
mov ecx, eax
not ecx
mov edx, r10d
xor edx, 0xc7105b2e
mov r8d, r10d
xor r8d, 0x38efa4d1
mov r9d, eax
xor r9d, edx
and eax, r8d
and r8d, ecx
or r8d, r9d
not r8d
and edx, ecx
or edx, eax
or edx, r8d
mov dword [rdi + 0x10], edx
mov rax, qword [rdi + 0x320]
mov qword [rbp + 0x2d0], rax
movabs rax, 0x8e20b61cc7105b01
xor rax, qword [rbp + 0x360]
mov qword [rbp + 0x310], rax
mov rax, qword [rdi + 0x308]
mov qword [rbp + 0x2f0], rax
mov r8d, dword [0x203bb99c]
mov eax, r10d
xor eax, 0xfbfaaa84
mov ecx, r8d
sub ecx, eax
lea edx, [rcx + 1]
xor edx, eax
mov eax, 0x7ffffffe
sub eax, ecx
mov ecx, r10d
xor ecx, 0x405557b
and ecx, eax
or ecx, edx
not ecx
lea eax, [rdx + rcx*2]
mov dword [0x203bb99c], eax
xor r15d, r15d
mov dword [rbp + 0x2f8], r8d
mov dword [rbp + 0x36c], eax
test eax, r8d
jne 0x200fcce1
mov ebx, 0
cmp dword [rbp + 0x390], 0
jle 0x200fcce3
mov eax, dword [0x203bb9a8]
mov dword [rbp + 0x330], eax
mov r8d, dword [rbp + 0x3d0]
mov eax, r8d
xor eax, 0xa829ddcb
mov dword [rbp + 0x3a4], eax
mov rax, qword [0x20401900]
mov qword [rbp + 0x3b8], rax
mov rax, rdi
neg rax
mov qword [rbp + 0x2e8], rax
movabs r12, 0xf9c77d2748efa4f5
xor r12, qword [rbp + 0x398]
mov ecx, r8d
xor ecx, 0x9bbc97f
mov eax, r8d
xor eax, 0xf6443680
mov edx, r8d
xor edx, 0x4d15ff57
add edx, ecx
mov ecx, r8d
xor ecx, 0xb2ea00a8
xor r8d, 0xc7105b1e
mov dword [rbp + 0x2c8], r8d
add ecx, r8d
add ecx, edx
add ecx, eax
add ecx, 2
mov dword [rbp + 0x348], ecx
xor r9d, r9d
shl r12, 4
xor r8d, r8d
xor r10d, r10d
xor r13d, r13d
jmp 0x200fcbba
mov r11, rcx
not r11
mov rbx, r11
mov r15, rcx
and r15, r10
and r11, r10
not r10
mov rdx, r14
not rdx
and rbx, r10
mov rsi, rdx
or r15, rbx
mov rbx, r14
and rbx, r13
and rdx, r13
not r13
and rsi, r13
or rbx, rsi
mov rsi, r14
and rsi, r13
xor r13, r14
mov r14, rcx
and r14, r10
xor r10, rcx
or rdx, r13
or r11, r10
not r15
and r15, r11
or r15, r14
not rbx
and rbx, rdx
or rbx, rsi
add r8d, dword [rbp + 0x348]
mov r10, r15
mov r13, rbx
cmp r8d, dword [rbp + 0x390]
jge 0x200fcce3
movsxd rcx, r8d
add rcx, qword [rbp + 0x2c0]
lea rdx, [rcx + r12]
mov r11d, dword [rbp + 0x3a4]
cmp dword [rbp + 0x330], r11d
cmovne rdx, rcx
mov rcx, qword [rdx]
mov r14, qword [rdx + 8]
mov rdx, qword [rbp + 0x2e8]
cmp qword [rbp + 0x3b8], rdx
jne 0x200fcb40
mov r15, r10
shl r15, cl
test cl, 0x40
cmovne r15, r9
mov r11, r13
mov ecx, r15d
shld r11, r10, cl
mov rdx, r10
shl rdx, cl
test r15b, 0x40
cmovne r11, rdx
cmovne rdx, r9
mov rsi, r10
mov ecx, edx
shl rsi, cl
test dl, 0x40
mov rbx, rsi
cmovne rbx, r9
mov r14, rbx
shl r14, cl
test dl, 0x40
mov r15, r14
cmovne r15, r9
mov ecx, edx
shld r13, r10, cl
test dl, 0x40
cmovne r13, rsi
shld r13, rbx, cl
test dl, 0x40
cmovne r13, r14
mov ebx, r8d
mov ecx, eax
shl ebx, cl
xor r13, r11
xor r15, rdx
mov edx, ebx
sub edx, r8d
mov ecx, ebx
shl edx, cl
sub edx, ebx
mov ecx, dword [rbp + 0x2c8]
sub ecx, edx
mov r8d, edx
sub r8d, ecx
imul r8d, ecx
add r8d, edx
mov ecx, r8d
sub ecx, eax
imul ecx, eax
sub r8d, ecx
inc r8d
imul r8d, ecx
mov r10, r15
mov rbx, r13
cmp dword [rbp + 0x390], r8d
jg 0x200fcbba
jmp 0x200fcce3
mov eax, dword [rbp + 0x3d0]
xor eax, 0xc7105b2e
or dword [rdi + 0x10], eax
mov rcx, qword [0x203bbff0]
mov eax, dword [0x203bbf50]
sub eax, dword [rbp + 0x3d4]
cdqe
add rax, rcx
lea rcx, [rbp - 0x48]
call qword [case.0x200b73a7.0]
jmp 0x200fd5ce
xor ebx, ebx
mov rax, qword [rbp + 0x310]
cmp qword [rbp + 0x2d0], rax
mov rax, qword [rbp + 0x2f0]
cmovbe rax, qword [rbp + 0x3c8]
mov qword [rdi + 0x318], 0
mov byte [rax], 0
movabs rax, 0x18e20b6107105b06
mov rcx, qword [rbp + 0x3a8]
xor rax, rcx
lea rsi, [rax + rbp]
add rsi, 0xffffffffffffffb8
movabs r14, 0x18e20b6107105b16
xor r14, rcx
movabs r12, 0xc7105b027105b2e
xor r12, qword [rbp + 0x350]
mov qword [rbp + r14 - 0x48], 0
movabs rcx, 0x63882d8b7105b01
xor rcx, qword [rbp + 0x398]
mov qword [rbp + r12 - 0x48], rcx
mov byte [rbp + rax - 0x48], 0
movzx eax, byte [0x203bb7a1]
mov ecx, dword [rbp + 0x3d0]
mov edx, ecx
xor dl, 0x68
cmp al, dl
mov r13, qword [rbp + 0x380]
je 0x200fd0e7
mov eax, dword [rbp + 0x3d0]
mov ecx, eax
xor cl, 0xee
mov r8d, eax
xor r8b, 0xbc
nop
mov eax, ecx
lock cmpxchg byte [0x203bb7a1], r8b
je 0x200fcdb6
cmp al, dl
jne 0x200fcda0
jmp 0x200fd0e7
mov ecx, dword [rbp + 0x3d0]
xor ecx, 0xc7105b3f
cmp ecx, 2
mov eax, 1
cmovge eax, ecx
cmp eax, 8
jae 0x200fcdd9
xor ecx, ecx
jmp 0x200fd0b6
cmp eax, 0x20
jae 0x200fd02a
xor ecx, ecx
jmp 0x200fd083
mov eax, dword [rdi + 0x10]
mov ecx, eax
not ecx
mov r10d, dword [rbp + 0x3d0]
mov edx, r10d
xor edx, 0xc7105b2e
mov r8d, r10d
xor r8d, 0x38efa4d1
mov r9d, edx
and r9d, ecx
xor ecx, r8d
and ecx, edx
or ecx, eax
and eax, r8d
or eax, r9d
mov edx, ecx
xor edx, eax
or ecx, r8d
and ecx, edx
or ecx, eax
mov dword [rdi + 0x10], ecx
movabs rax, 0xc7105b0ec7105b01
mov rcx, qword [rbp + 0x380]
xor rcx, rax
mov rax, qword [rbp + 0x3c8]
cmp qword [rdi + 0x320], rcx
jbe 0x200fce56
mov rax, qword [rdi + 0x308]
mov qword [rdi + 0x318], 0
mov byte [rax], 0
movabs rax, 0x7105b0e0c7105b06
mov rcx, qword [rbp + 0x3b0]
xor rax, rcx
lea rsi, [rax + rbp]
add rsi, 0xffffffffffffffb8
movabs rbx, 0xc7105b027105b16
xor rbx, qword [rbp + 0x350]
mov qword [rbp + rbx - 0x48], 0
movabs r14, 0x7105b0e0c7105b01
xor r14, rcx
mov rcx, qword [rbp + 0x308]
mov qword [rbp + rcx - 0x48], r14
mov byte [rbp + rax - 0x48], 0
movzx eax, byte [0x203bb76d]
mov edx, r10d
xor dl, 0x99
cmp al, dl
mov r15, qword [rbp + 0x370]
mov r12, qword [rbp + 0x318]
mov r13, qword [rbp + 0x378]
je 0x200fd726
mov eax, dword [rbp + 0x3d0]
mov ecx, eax
xor cl, 0xce
mov r8d, eax
xor r8b, 0x8a
nop word cs:[rax + rax]
mov eax, ecx
lock cmpxchg byte [0x203bb76d], r8b
je 0x200fd6da
cmp al, dl
jne 0x200fcf00
jmp 0x200fd726
mov eax, dword [rbp + 0x3d0]
xor eax, 0xc7105b2e
or dword [rdi + 0x10], eax
movabs rax, 0x8d48cc7613b90591
xor rax, qword [rbp + 0x388]
movabs rcx, 0x567487c1ec46fa6e
mov r13, qword [rbp + 0x318]
xor rcx, r13
add rcx, rax
add rcx, qword [rdi + 0x320]
mov rax, qword [0x20401ab8]
add rcx, rax
inc rcx
mov rax, qword [rbp + 0x3c8]
cmp rcx, qword [rbp + 0x338]
jbe 0x200fcf7b
mov rax, qword [rdi + 0x308]
mov qword [rdi + 0x318], 0
mov byte [rax], 0
movabs rax, 0x3882d870c7105b06
xor rax, r13
lea rsi, [rax + rbp]
add rsi, 0xffffffffffffffb8
movabs rbx, 0x8e20b61cc7105b16
xor rbx, qword [rbp + 0x360]
mov qword [rbp + rbx - 0x48], 0
movabs r14, 0x63882d8b7105b01
xor r14, qword [rbp + 0x398]
mov rcx, qword [rbp + 0x358]
mov qword [rbp + rcx - 0x48], r14
mov byte [rbp + rax - 0x48], 0
movzx eax, byte [0x203bb6f0]
mov ecx, dword [rbp + 0x3d0]
mov edx, ecx
xor dl, 0xfc
cmp al, dl
mov r15, qword [rbp + 0x370]
je 0x200fdaa6
mov eax, dword [rbp + 0x3d0]
mov ecx, eax
xor cl, 0xd9
mov r8d, eax
xor r8b, 0x8e
nop dword [rax]
mov eax, ecx
lock cmpxchg byte [0x203bb6f0], r8b
je 0x200fd9a7
cmp al, dl
jne 0x200fd010
jmp 0x200fdaa6
mov ecx, eax
and ecx, 0x7fffffe0
xor r8d, r8d
lea r9, [0x203bb770]
lea r10, [0x202f7950]
nop word cs:[rax + rax]
movaps xmm0, xmmword [r8 + r10]
movaps xmm1, xmmword [r8 + r10 + 0x10]
xorps xmm0, xmmword [r8 + r9]
xorps xmm1, xmmword [r8 + r9 + 0x10]
movaps xmmword [r8 + r9], xmm0
movaps xmmword [r8 + r9 + 0x10], xmm1
add r8, 0x20
cmp rcx, r8
jne 0x200fd050
cmp rcx, rax
je 0x200fd0e1
test al, 0x18
je 0x200fd0b6
mov r8, rcx
mov ecx, eax
and ecx, 0x7ffffff8
lea r9, [0x203bb770]
lea r10, [0x202f7950]
nop dword [rax]
mov r11, qword [r8 + r10]
xor qword [r8 + r9], r11
add r8, 8
cmp rcx, r8
jne 0x200fd0a0
cmp rcx, rax
je 0x200fd0e1
lea r8, [0x203bb770]
lea r9, [0x202f7950]
nop word cs:[rax + rax]
movzx r10d, byte [rcx + r9]
xor byte [rcx + r8], r10b
inc rcx
cmp rax, rcx
jne 0x200fd0d0
xchg byte [0x203bb7a1], dl
movabs rdx, 0x63882d87c7105b3e
xor rdx, qword [rbp + 0x370]
mov rcx, qword [0x203bbfc0]
mov eax, dword [0x203bbf70]
sub eax, dword [rbp + 0x3d4]
cdqe
add rax, rcx
lea r9, [0x203bb770]
mov rcx, rsi
call qword [case.0x200b73a7.0]
lea rax, [0x202f2f78]
mov qword [rbp - 0x48], rax
mov r8, qword [rbp + r14 - 0x48]
mov r9, rsi
mov rax, qword [rbp + 0x338]
cmp qword [rbp + r12 - 0x48], rax
jbe 0x200fd144
mov r9, qword [rsi]
mov rcx, qword [rdi + 0x318]
mov rax, qword [rdi + 0x320]
movabs rdx, 0x7fe06f96f5ba742f
mov r11, qword [rbp + 0x360]
xor rdx, r11
movabs r10, 0xcd8ec6f1e59e4632
xor r10, qword [rbp + 0x3a8]
add r10, rdx
movabs rdx, 0x36bdfe050a458bd0
xor rdx, qword [rbp + 0x318]
add rdx, r10
sub rdx, rcx
add rdx, rax
inc rdx
movabs r10, 0xa1b73cd28e739b78
xor r10, r11
xor r10, rdx
movabs r11, 0x6887d1c08e739b78
xor r11, r13
and r11, rdx
movabs rdx, 0x1b5724ac5a61b9cd
xor rdx, qword [rbp + 0x378]
movabs r14, 0xa16dc5d1718c6487
mov r13, qword [rbp + 0x3b0]
xor r14, r13
add r14, rdx
add r14, r10
lea rdx, [r14 + r11*2]
add rdx, 2
cmp rdx, r8
jae 0x200fd205
mov qword [rsp + 0x20], r8
mov rcx, qword [rbp + 0x3c8]
mov rdx, r8
call fcn.2006ff40
jmp 0x200fd24d
lea r14, [rcx + r8]
mov qword [rdi + 0x318], r14
movabs rdx, 0x7105b0e0c7105b01
xor rdx, r13
cmp byte [0x20401ab0], 0
mov r10, qword [rdi + 0x308]
mov rdi, qword [rbp + 0x3c8]
cmovne rdi, r10
cmp rax, rdx
cmova rdi, r10
add rcx, rdi
mov rdx, r9
call fcn.202d5100
mov byte [rdi + r14], 0
mov rax, qword [rbp + r12 - 0x48]
movabs rcx, 0x63882d87c7105b01
xor rcx, qword [rbp + 0x370]
cmp rax, rcx
mov rdi, qword [rbp + 0x3a8]
mov r13, qword [rbp + 0x350]
jbe 0x200fd5ce
mov rcx, qword [rsi]
mov r8, qword [0x202f7ab8]
mov rdx, qword [0x202f7ab0]
sub rdx, r15
sbb r8, rbx
xor r9d, r9d
mov r10d, dword [rbp + 0x36c]
test dword [rbp + 0x2f8], r10d
cmovne r8, r9
cmovne rdx, r9
mov r9, rdx
not r9
mov r10, rdx
xor r10, r9
mov r11, r10
and r11, r8
xor r11, r10
and r9, r8
or r9, r11
not r9
xor rdx, r8
or rdx, r9
mov r8, qword [0x20401ab8]
mov r9, rdx
xor r9, r8
and rdx, r8
add rdx, rdx
mov r8, rdx
xor r8, r9
and rdx, r9
lea rdx, [r8 + rdx*2]
mov qword [0x20401ab8], rdx
movabs rdx, 0xcb890651862bd1f3
mov rbx, qword [rbp + 0x318]
xor rdx, rbx
movabs r8, 0x90c7e9c3412f499c
xor r8, qword [rbp + 0x380]
movabs r9, 0xd92dfdd2bed0b663
xor r9, qword [rbp + 0x3b0]
add r9, rdx
movabs rdx, 0x1b0ff9401e372d0
xor rdx, rbx
movabs r10, 0xacca30609d42e0c
xor r10, qword [rbp + 0x398]
add r10, rdx
movabs rdx, 0xde2fd37a3e1c8d2f
xor rdx, rdi
add rdx, r8
add rdx, r9
add rdx, r10
mov r8, rax
xor r8, 1
add rdx, r8
mov r8d, eax
and r8d, 1
lea rdx, [rdx + r8*2]
add rdx, 3
movabs r8, 0x31c416c3471054f1
xor r8, qword [rbp + 0x378]
cmp rdx, r8
jbe 0x200fd5b0
mov r8, qword [rcx - 8]
mov rdx, rbx
xor rdx, rcx
movabs r9, 0xc77d278f38efa4f6
xor r9, rdx
movabs rdx, 0x671df49ef8efa4f6
xor rdx, rdi
and rdx, rcx
lea rcx, [r9 + rdx*2]
sub rcx, r8
cmp rcx, r12
jae 0x200fe3ba
movabs rcx, 0x231b098114102a8a
mov r14, qword [rbp + 0x378]
xor rcx, r14
movabs r9, 0xc466e06f478ff394
xor r9, r13
add r9, rcx
movabs rdx, 0x5555e2ca269fe322
mov r12, qword [rbp + 0x398]
xor rdx, r12
add rdx, r9
movabs r9, 0x6bef3507c314918d
xor r9, r13
movabs rcx, 0x3dbd2730168500a3
xor rcx, r12
add rcx, r9
movabs r9, 0xdd972f0da9601cdd
mov r11, qword [rbp + 0x3b0]
xor r9, r11
add rcx, r9
movabs r9, 0xf1618c856befd575
mov r15, qword [rbp + 0x388]
xor r9, r15
add rcx, r9
movabs r9, 0x31d098f828700c6b
xor r9, r12
add rcx, r9
movabs r10, 0x8083c4291ceb6e72
xor r10, rdi
movabs r9, 0xe6985ee555612dbf
xor r9, rdi
add r9, r10
movabs r10, 0x36a0119997aff5c
mov rdi, qword [rbp + 0x380]
xor r10, rdi
add r9, r10
movabs r10, 0x8e20b61cc7105b26
mov rsi, qword [rbp + 0x360]
xor r10, rsi
add r9, r10
movabs r10, 0x6f94859a09d0932
xor r10, r11
movabs r11, 0xb081df365f62f6cd
xor r11, rbx
add r10, r11
movabs r11, 0x93d7f05209790940
xor r11, r14
add r11, rdx
movabs rdx, 0x851ce9682ad38fab
mov r14, qword [rbp + 0x370]
xor rdx, r14
add rdx, r11
movabs r11, 0x974b8d0cd52c7054
xor r11, rsi
movabs rsi, 0x1dc4c6436a9ed240
xor rsi, r15
add r11, rsi
movabs rsi, 0x656ec11e7686f6bf
xor rsi, rbx
add r11, rsi
add r11, r10
add r11, r9
add r11, rcx
add r11, rdx
lea rdx, [rax + r11]
add rdx, 9
mov rax, qword [0x20401aa8]
mov rcx, rax
xor rcx, rdx
and rax, rdx
movabs rdx, 0xd7cd29b6613ecfaf
xor rdx, r15
movabs r9, 0x324b38a9eec13050
xor r9, r12
movabs r10, 0x955f1b86d5f59c0a
xor r10, rbx
movabs r11, 0x1f4edf6a24c00317
xor r11, r14
add r11, rdx
add r11, r10
movabs rdx, 0x953267072a0a63f5
xor rdx, rdi
add rdx, r9
add rdx, r11
movabs r9, 0x4429561cdb3ffce8
xor r9, rdi
add r9, rdx
add r9, rcx
lea rdx, [r9 + rax*2]
add rdx, 3
mov rcx, r8
mov r8, qword [0x203bbfe8]
mov eax, dword [0x203bbf80]
sub eax, dword [rbp + 0x3d4]
cdqe
add rax, r8
call qword [case.0x200b73a7.0]
xor eax, eax
movaps xmm6, xmmword [rbp + 0x3e0]
add rsp, 0x478
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
mov r8d, dword [rbp + 0x3d0]
mov eax, r8d
xor eax, 0xc7105b2e
or dword [rdi + 0x10], eax
movabs rcx, 0x1c416c38c7105b01
xor rcx, qword [rbp + 0x388]
mov rax, qword [rbp + 0x3c8]
cmp qword [rdi + 0x320], rcx
jbe 0x200fd625
mov rax, qword [rdi + 0x308]
mov qword [rdi + 0x318], 0
mov byte [rax], 0
movabs rax, 0x18e20b6107105b06
xor rax, qword [rbp + 0x3a8]
lea rsi, [rax + rbp]
add rsi, 0xffffffffffffffb8
movabs rcx, 0x63882d8b7105b16
mov rdx, qword [rbp + 0x398]
xor rdx, rcx
mov rbx, rdx
mov qword [rbp + rdx - 0x48], 0
mov rcx, qword [rbp + 0x358]
mov rdx, qword [rbp + 0x300]
mov qword [rbp + rcx - 0x48], rdx
mov byte [rbp + rax - 0x48], 0
movzx eax, byte [0x203bb6bd]
mov edx, r8d
xor dl, 0x7f
cmp al, dl
mov r14, qword [rbp + 0x370]
mov r15, qword [rbp + 0x318]
mov r12, qword [rbp + 0x378]
je 0x200fe017
mov eax, dword [rbp + 0x3d0]
mov ecx, eax
xor cl, 0x81
mov r8d, eax
xor r8b, 0x58
mov eax, ecx
lock cmpxchg byte [0x203bb6bd], r8b
je 0x200fd9ca
cmp al, dl
jne 0x200fd6c0
jmp 0x200fe017
mov r10d, dword [rbp + 0x3d0]
xor r10d, 0xc7105b33
xor r8d, r8d
lea rax, [0x203bb730]
lea rcx, [0x202f7910]
nop dword [rax]
movsxd r8, r8d
movzx r9d, byte [r8 + rcx]
add byte [r8 + rax], r9b
mov r9d, r8d
xor r9d, 1
and r8d, 1
lea r8d, [r9 + r8*2]
cmp r8d, r10d
jl 0x200fd700
xchg byte [0x203bb76d], dl
movabs rax, 0x1c416c38c7105b32
mov rdx, qword [rbp + 0x388]
xor rdx, rax
mov rcx, qword [0x203bbfc0]
mov eax, dword [0x203bbf70]
sub eax, dword [rbp + 0x3d4]
cdqe
add rax, rcx
lea r9, [0x203bb730]
mov rcx, rsi
call qword [case.0x200b73a7.0]
lea rax, [0x202f2f78]
mov qword [rbp - 0x48], rax
mov r8, qword [rbp + rbx - 0x48]
mov r9, rsi
mov rax, qword [rbp + 0x308]
cmp qword [rbp + rax - 0x48], r14
mov r14, rax
jbe 0x200fd789
mov r9, qword [rsi]
mov rcx, qword [rdi + 0x318]
mov rax, qword [rdi + 0x320]
mov rdx, rax
sub rdx, rcx
cmp rdx, r8
jae 0x200fd7b8
mov qword [rsp + 0x20], r8
mov rcx, qword [rbp + 0x3c8]
mov rdx, r8
call fcn.2006ff40
jmp 0x200fd81b
movabs rdx, 0xf257d2e94d9566ad
xor rdx, qword [rbp + 0x3b0]
movabs rbx, 0x4d698b35326a9952
xor rbx, r13
add rbx, rdx
add rbx, r8
lea rdx, [rcx + rbx]
inc rdx
add rbx, rcx
mov qword [rdi + 0x318], rdx
cmp rax, qword [rbp + 0x338]
jbe 0x200fd804
mov rax, qword [rdi + 0x308]
mov qword [rbp + 0x3c8], rax
mov rdi, qword [rbp + 0x3c8]
add rcx, rdi
mov rdx, r9
call fcn.202d5100
mov byte [rdi + rbx + 1], 0
mov r8, qword [rbp + r14 - 0x48]
cmp r8, qword [rbp + 0x338]
mov r11, qword [rbp + 0x3a8]
mov r10, qword [rbp + 0x360]
mov rdi, qword [rbp + 0x3b0]
jbe 0x200fd5ce
mov rcx, qword [rsi]
mov rax, qword [0x20401ac8]
movabs rdx, 0x8ffe21c991eb8b24
xor rdx, r12
movabs r9, 0x50610d27ae1474db
xor r9, r11
add r9, rdx
add r9, r8
lea rdx, [rax + r9]
add rdx, 2
movabs rax, 0xc7105b0271054f1
mov rsi, qword [rbp + 0x350]
xor rax, rsi
cmp rdx, rax
jbe 0x200fd5b0
mov rax, qword [rcx - 8]
movabs rdx, 0x2fc1c5a403a22268
xor r10, rdx
movabs rdx, 0xcc08aa6c07e1d3e
mov rbx, qword [rbp + 0x398]
xor rdx, rbx
add rdx, r10
movabs r9, 0x58260e9f8c5ddd97
xor r9, rbx
movabs r10, 0xf38efa4fd8efa4f6
xor rsi, r10
movabs r10, 0x840247614f81e2c1
xor rdi, r10
add rdi, r9
add rdi, rdx
add rdi, rsi
add rdi, rcx
sub rdi, rax
add rdi, 2
movabs rcx, 0x63882d87c7105b2e
xor rcx, r15
cmp rdi, rcx
jae 0x200fe3f2
movabs rcx, 0x74ac177e1aa9ade3
xor rcx, r11
movabs rdx, 0x671c270f79ef433c
xor rdx, r13
movabs r9, 0xab333b902556521c
xor r12, r9
add r12, rcx
add r8, r12
lea rcx, [rdx + r8]
inc rcx
movabs rdx, 0x31c416c347105b26
xor rdx, r13
movabs r8, 0xf9c77d2748efa4d9
xor rbx, r8
xor rbx, rdx
and rbx, rcx
xor rbx, rdx
movabs rdx, 0x63882d87c7105b26
xor r15, rdx
and r15, rcx
add r15, r15
mov rcx, rbx
xor rcx, r15
and r15, rbx
add r15, r15
mov rdx, r15
xor rdx, rcx
and r15, rcx
movabs rcx, 0xb1c5c552c610bcc3
xor rcx, r11
add rcx, rdx
lea rdx, [rcx + r15*2]
inc rdx
mov rcx, rax
jmp 0x200fd5b0
mov ecx, dword [rbp + 0x3d0]
xor ecx, 0xc7105b3e
cmp ecx, 2
mov eax, 1
cmovge eax, ecx
cmp eax, 8
jae 0x200fd9ed
xor ecx, ecx
jmp 0x200fda81
mov ecx, dword [rbp + 0x3d0]
xor ecx, 0xc7105b33
cmp ecx, 2
mov eax, 1
cmovge eax, ecx
cmp eax, 8
jae 0x200fd9f6
xor ecx, ecx
jmp 0x200fdff2
cmp eax, 0x20
jae 0x200fda06
xor ecx, ecx
jmp 0x200fda52
cmp eax, 0x20
jae 0x200fdf77
xor ecx, ecx
jmp 0x200fdfc3
mov ecx, eax
and ecx, 0x7fffffe0
xor r8d, r8d
lea r9, [0x203bb6c0]
lea r10, [0x202f78b0]
movaps xmm0, xmmword [r8 + r10]
movaps xmm1, xmmword [r8 + r10 + 0x10]
xorps xmm0, xmmword [r8 + r9]
xorps xmm1, xmmword [r8 + r9 + 0x10]
movaps xmmword [r8 + r9], xmm0
movaps xmmword [r8 + r9 + 0x10], xmm1
add r8, 0x20
cmp rcx, r8
jne 0x200fda1f
cmp rcx, rax
je 0x200fdaa0
test al, 0x18
je 0x200fda81
mov r8, rcx
mov ecx, eax
and ecx, 0x7ffffff8
lea r9, [0x203bb6c0]
lea r10, [0x202f78b0]
mov r11, qword [r8 + r10]
xor qword [r8 + r9], r11
add r8, 8
cmp rcx, r8
jne 0x200fda6b
cmp rcx, rax
je 0x200fdaa0
lea r8, [0x203bb6c0]
lea r9, [0x202f78b0]
movzx r10d, byte [rcx + r9]
xor byte [rcx + r8], r10b
inc rcx
cmp rax, rcx
jne 0x200fda8f
xchg byte [0x203bb6f0], dl
movabs rdx, 0x18e20b6107105b21
xor rdx, qword [rbp + 0x3a8]
mov rcx, qword [0x203bbfc0]
mov eax, dword [0x203bbf70]
sub eax, dword [rbp + 0x3d4]
cdqe
add rax, rcx
lea r9, [0x203bb6c0]
mov rcx, rsi
call qword [case.0x200b73a7.0]
lea rax, [0x202f2f78]
mov qword [rbp - 0x48], rax
mov r8, qword [rbp + rbx - 0x48]
mov r9, rsi
mov rax, qword [rbp + 0x358]
cmp qword [rbp + rax - 0x48], r14
jbe 0x200fdb03
mov r9, qword [rsi]
mov rax, qword [rdi + 0x320]
movabs rcx, 0xa485f980e7c5fa19
mov r12, qword [rbp + 0x350]
xor rcx, r12
add rcx, rax
inc rcx
movabs rdx, 0x76e13ae092a54277
mov r14, qword [rbp + 0x3b0]
xor rdx, r14
mov r10, rcx
xor r10, rdx
and rdx, rcx
movabs rcx, 0x7edd1c1d2823275f
xor rcx, r15
movabs r11, 0x93af7e85d7dcd8a0
xor r11, r14
add r11, rcx
movabs rcx, 0xe45a19c76d5abd88
xor rcx, qword [rbp + 0x388]
movabs rbx, 0x260eb32ff83a05e6
xor rbx, r14
add rbx, r11
movabs r11, 0x18a6c646a72f616c
xor r11, qword [rbp + 0x3a8]
movabs r14, 0xce7f241b18d09e93
xor r14, qword [rbp + 0x378]
add r14, rcx
movabs r15, 0x43e52c28b58b3e7e
xor r15, qword [rbp + 0x360]
add r15, r11
movabs rcx, 0x3e4b607baa74c181
xor rcx, r12
add r15, rcx
add r15, r14
add r15, rbx
mov rcx, qword [rdi + 0x318]
sub r15, rcx
add r15, r10
lea rdx, [r15 + rdx*2]
add rdx, 4
cmp rdx, r8
jae 0x200fdc05
mov qword [rsp + 0x20], r8
mov rcx, qword [rbp + 0x3c8]
mov rdx, r8
call fcn.2006ff40
mov r14, qword [rbp + 0x2d8]
jmp 0x200fdc44
lea rbx, [rcx + r8]
mov qword [rdi + 0x318], rbx
cmp rax, qword [rbp + 0x338]
mov r14, qword [rbp + 0x2d8]
jbe 0x200fdc2e
mov rax, qword [rdi + 0x308]
mov qword [rbp + 0x3c8], rax
mov rdi, qword [rbp + 0x3c8]
add rcx, rdi
mov rdx, r9
call fcn.202d5100
mov byte [rdi + rbx], 0
mov rax, qword [rbp + 0x358]
mov rax, qword [rbp + rax - 0x48]
cmp rax, r14
mov rdi, qword [rbp + 0x3a8]
mov r11, qword [rbp + 0x398]
jbe 0x200fd5ce
mov rcx, qword [rsi]
lea edx, [rax + rax]
and edx, 2
mov r8, rax
xor r8, rdx
xor r8, 1
or rdx, rax
movabs r9, 0x7ffffffffffffffe
xor r9, rdx
or r9, r8
not r9
lea rdx, [r8 + r9*2]
movabs r8, 0x8e20b61cc71054f1
mov r14, qword [rbp + 0x360]
xor r8, r14
cmp rdx, r8
jbe 0x200fd5b0
movabs rdx, 0xbe9716b059f0a866
xor rdx, r13
movabs r8, 0xbefa6a31a60f5799
mov r15, qword [rbp + 0x380]
xor r8, r15
add r8, rdx
movabs r9, 0xbfbe4c1b8dbb6dbd
xor r9, qword [rbp + 0x378]
movabs r10, 0x28864c365049974a
mov rbx, qword [rbp + 0x3b0]
xor r10, rbx
movabs rdx, 0xa04481f1dfb668b5
xor r11, rdx
add r11, r8
movabs rdx, 0x120d88a0f2449242
mov r12, qword [rbp + 0x370]
xor rdx, r12
add rdx, r11
movabs r8, 0x3fae12f14c53e04e
xor r8, r15
add r8, r10
add r8, r9
movabs r9, 0x76e35ba82f750471
xor r9, rdi
movabs r10, 0xf27682b1108afb8e
xor r10, r12
movabs r11, 0x764406e0b3ac1fb1
xor r11, rbx
add r11, r10
movabs r10, 0x48d33c130229af53
xor r10, r12
add r10, r9
movabs r9, 0x2b6585d0103d4ee3
xor r9, qword [rbp + 0x388]
movabs rsi, 0xf059ce67efc2b11c
xor rsi, r13
add rsi, r11
movabs r11, 0xec26361bfdd650ac
xor r11, r13
add r11, rsi
movabs rsi, 0xc507a14b80919fc0
xor rsi, rbx
add rsi, r9
add rsi, r10
add rsi, r8
add rsi, rdx
movabs rdx, 0x478cebe49f6e603f
mov rdi, qword [rbp + 0x350]
xor rdx, rdi
add rdx, r11
add rdx, rsi
add rdx, qword [rcx - 8]
mov r8, qword [0x20401900]
add r8, rdx
add r8, 8
movabs rdx, 0xd578ab61d4d8788c
xor rdx, r12
movabs r9, 0x404ae76786bbcea0
xor r9, rbx
movabs r10, 0x718da1692b278773
xor r10, r13
add r10, rdx
movabs rdx, 0xc77d278f38efa4f6
xor rdx, r13
movabs r11, 0x40901e647944315f
xor r11, r14
add r11, rdx
movabs rdx, 0x80398ed9d7cb3858
mov rsi, r15
xor rdx, r15
add rdx, r9
add rdx, r10
movabs r9, 0x9db1922fe211209e
xor r9, rbx
add r9, r11
add r9, rdx
add r9, rcx
add r9, 3
movabs rcx, 0xb4a72f98c834c7a7
xor rcx, rdi
xor rcx, r9
movabs rdx, 0x9123ceba834c7a7
mov r15, qword [rbp + 0x378]
xor rdx, r15
and rdx, r9
movabs r9, 0x93047b418ffa3cc7
xor r9, rbx
movabs r10, 0x118f31ee9005c338
xor r10, rdi
add r10, r9
movabs r9, 0x38bf8b838e97cf84
xor r9, rsi
movabs r11, 0x1c11434a7168307b
xor r11, qword [rbp + 0x388]
movabs rsi, 0x7de6b6461d5ed7bb
xor rsi, rdi
mov rbx, qword [rbp + 0x3a8]
movabs rdi, 0x70c3f0b71deedf61
xor rdi, r12
add rdi, r9
add rdi, rsi
add rdi, r10
movabs r9, 0xb6ea947902a12844
xor r9, r13
add r9, r11
add r9, rdi
add r9, rcx
lea rcx, [r9 + rdx*2]
sub rcx, r8
add rcx, 4
movabs rdx, 0x31c416c347105b2e
xor rdx, r15
cmp rcx, rdx
jae 0x200fe3f7
movabs rcx, 0x6f304995ea68407e
xor r14, rcx
movabs rcx, 0x60d0b17d597bf81
xor rcx, rbx
add rcx, r14
movabs rdx, 0x2a14b4ec2d6ff449
xor r15, rdx
movabs rdx, 0x63882d87c7105b26
xor r12, rdx
movabs rdx, 0xfccd56b192900bb6
xor rdx, rbx
add rdx, r12
add rdx, r15
add rdx, rcx
add rdx, rax
add rdx, 2
jmp 0x200fd5ad
mov ecx, eax
and ecx, 0x7fffffe0
xor r8d, r8d
lea r9, [0x203bb680]
lea r10, [0x202f7870]
movaps xmm0, xmmword [r8 + r10]
movaps xmm1, xmmword [r8 + r10 + 0x10]
xorps xmm0, xmmword [r8 + r9]
xorps xmm1, xmmword [r8 + r9 + 0x10]
movaps xmmword [r8 + r9], xmm0
movaps xmmword [r8 + r9 + 0x10], xmm1
add r8, 0x20
cmp rcx, r8
jne 0x200fdf90
cmp rcx, rax
je 0x200fe011
test al, 0x18
je 0x200fdff2
mov r8, rcx
mov ecx, eax
and ecx, 0x7ffffff8
lea r9, [0x203bb680]
lea r10, [0x202f7870]
mov r11, qword [r8 + r10]
xor qword [r8 + r9], r11
add r8, 8
cmp rcx, r8
jne 0x200fdfdc
cmp rcx, rax
je 0x200fe011
lea r8, [0x203bb680]
lea r9, [0x202f7870]
movzx r10d, byte [rcx + r9]
xor byte [rcx + r8], r10b
inc rcx
cmp rax, rcx
jne 0x200fe000
xchg byte [0x203bb6bd], dl
movabs rdx, 0x3882d870c7105b32
xor rdx, r15
mov rcx, qword [0x203bbfc0]
mov eax, dword [0x203bbf70]
sub eax, dword [rbp + 0x3d4]
cdqe
add rax, rcx
lea r9, [0x203bb680]
mov rcx, rsi
call qword [case.0x200b73a7.0]
lea rax, [0x202f2f78]
mov qword [rbp - 0x48], rax
mov r8, qword [rbp + rbx - 0x48]
movabs rax, 0x7105b0e0c7105b01
xor rax, qword [rbp + 0x3b0]
mov r9, rsi
mov rcx, qword [rbp + 0x358]
cmp qword [rbp + rcx - 0x48], rax
jbe 0x200fe081
mov r9, qword [rsi]
mov rcx, qword [rdi + 0x318]
movabs rax, 0xc46cb44b5e666cf3
mov r13, r15
xor rax, r15
movabs rdx, 0x1bf398a56199930c
mov rbx, qword [rbp + 0x3a8]
xor rdx, rbx
movabs r10, 0xf0a1cdacbe7a3315
xor r10, r12
movabs r11, 0x4f9f9470c185ccea
xor r11, qword [rbp + 0x3b0]
add r11, rdx
movabs rdx, 0x107aa4a29eda232d
xor rdx, rbx
add rdx, r10
movabs r10, 0x94ef7dbba125dcd2
mov r15, r14
xor r10, r14
add r10, rax
mov rax, qword [rdi + 0x320]
add r10, r11
movabs r11, 0xfdfd87c691b2a872
xor r11, r12
add r10, rdx
sub r10, r11
sub r10, rcx
lea rdx, [r10 + rax]
add rdx, 3
movabs r10, 0xb29ca0b11b2a872
mov r14, qword [rbp + 0x380]
xor r10, r14
xor r10, rdx
and r11, rdx
lea rdx, [r10 + r11*2]
cmp rdx, r8
jae 0x200fe151
mov qword [rsp + 0x20], r8
mov rcx, qword [rbp + 0x3c8]
mov rdx, r8
call fcn.2006ff40
jmp 0x200fe192
lea rbx, [rcx + r8]
mov qword [rdi + 0x318], rbx
movabs rdx, 0xc7105b0ec7105b01
xor rdx, r14
cmp rax, rdx
jbe 0x200fe17c
mov rax, qword [rdi + 0x308]
mov qword [rbp + 0x3c8], rax
mov rdi, qword [rbp + 0x3c8]
add rcx, rdi
mov rdx, r9
call fcn.202d5100
mov byte [rdi + rbx], 0
mov rax, qword [rbp + 0x358]
mov rax, qword [rbp + rax - 0x48]
cmp rax, qword [rbp + 0x300]
mov rdi, qword [rbp + 0x3a8]
jbe 0x200fd5ce
mov r11, r12
mov rcx, qword [rsi]
mov rbx, qword [rbp + 0x3b0]
mov rdx, rbx
xor rdx, rax
movabs r8, 0x8b12e5f9ae1b89c1
xor r8, rdx
movabs rdx, 0xbc81cfa51e4763e
mov rsi, qword [rbp + 0x360]
xor rdx, rsi
and rdx, rax
add rdx, rdx
sub r8, rdx
movabs rdx, 0x138f53fbb09d8ba1
xor rdx, rdi
movabs r9, 0x971a8ae28f62745e
xor r9, r15
movabs r10, 0xc2958d69ae1b89c1
mov r12, r13
xor r10, r13
add r10, rdx
add r10, r9
lea rdx, [r8 + r10]
inc rdx
add r8, r8
add r8, 2
sub rdx, r8
add rdx, 3
movabs r8, 0xc7105b0271054f1
mov r13, qword [rbp + 0x350]
xor r8, r13
cmp rdx, r8
jbe 0x200fd5b0
mov rdx, qword [rcx - 8]
mov qword [rbp + 0x390], rdx
neg rcx
movabs rdx, 0x7105b0e0c7105b09
xor rdx, rbx
inc rdx
mov r9, rdx
xor r9, rcx
and rdx, rcx
movabs rcx, 0xa32e337b8b302b60
mov r14, qword [rbp + 0x380]
xor rcx, r14
movabs r10, 0xaa058149f4cfd49f
xor r11, r10
movabs r10, 0x611fcaf9e7518e41
xor r10, rsi
add r11, r10
movabs r10, 0xc81ef2218ae71be
mov r8, r13
mov r13, qword [rbp + 0x388]
xor r13, r10
add r13, rcx
movabs rcx, 0x3674abb96a0ea9cc
xor rcx, r12
movabs r10, 0x7f293a2a95f15633
xor r10, rsi
add r10, r11
movabs r11, 0xaa971b5aaae864c2
xor r11, r15
add r11, rcx
movabs rcx, 0xf1f0922c55179b3d
xor rcx, r14
add r11, rcx
add r11, r13
add r11, r10
lea rcx, [r9 + rdx*2]
mov r9, qword [rbp + 0x390]
add rcx, r9
sub r11, rcx
movabs rcx, 0xc7105b027105b2e
xor r8, rcx
add r11, 4
cmp r11, r8
jae 0x200fe46b
mov rcx, rax
not rcx
movabs rdx, 0x8efa4f1f38efa4d9
xor rbx, rdx
movabs rdx, 0x63882d87c7105b26
xor r15, rdx
and r15, rcx
and rbx, rax
movabs rcx, 0xe20b61cc7105b26
xor rcx, rsi
and rcx, rax
movabs rax, 0x44a3b430024ce5c8
xor r14, rax
movabs rax, 0xd3c5a3d09ebdee74
xor r12, rax
movabs rax, 0x64ae1ba03db31a37
xor rdi, rax
add rdi, r12
add rdi, r14
movabs rax, 0x9a9832436142118b
xor rax, rsi
add rax, rdi
add rax, rbx
add rax, r15
lea rdx, [rax + rcx*2]
add rdx, 2
mov rcx, r9
jmp 0x200fd5b0
call fcn.20080930
call fcn.20080930
movzx eax, byte [0x203bb91e]
cmp al, 0x4b
je 0x200fe43a
mov cl, 0xf7
nop word cs:[rax + rax]
mov al, 0xb3
lock cmpxchg byte [0x203bb91e], cl
je 0x200fe3fc
cmp al, 0x4b
jne 0x200fe3e0
jmp 0x200fe43a
call fcn.20080930
call fcn.20080930
movabs rax, 0xb77b2a4a66045357
xor qword [0x203bb910], rax
movsd xmm0, qword [0x203bb918]
xorps xmm0, xmmword [0x202f77b0]
movss dword [0x203bb918], xmm0
xor byte [0x203bb91c], 0x1b
xor byte [0x203bb91d], 0xba
mov al, 0x4b
xchg byte [0x203bb91e], al
mov edx, dword [rbp + 0x3d0]
xor edx, 0x82498e5c
mov rcx, qword [0x203bbff8]
mov eax, dword [0x203bbf58]
sub eax, dword [rbp + 0x3d4]
cdqe
add rax, rcx
lea rcx, [0x203bb910]
call qword [case.0x200b73a7.0]
call fcn.20080930
int3