Function at 0x14001dc0d
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x418
movdqa xmmword [rsp + 0x400], xmm9
movdqa xmmword [rsp + 0x3f0], xmm8
movdqa xmmword [rsp + 0x3e0], xmm7
movaps xmmword [rsp + 0x3d0], xmm6
mov rsi, r9
mov qword [rsp + 0x78], r8
mov rbp, rdx
mov qword [rsp + 0x98], rcx
mov rax, qword [rdx + 0x10]
mov rcx, qword [rax + 0xc8]
test rcx, rcx
je 0x14001dc8e
mov rdx, qword [rax + 0xb8]
add rdx, 0x20
xor r9d, r9d
xor r8d, r8d
cmp byte [rdx], 4
sete r8b
add r9, r8
add rdx, 0x28
dec rcx
jne 0x14001dc76
jmp 0x14001dc91
xor r9d, r9d
mov rcx, qword [rax + 0xa0]
imul rax, qword [rax + 0xb0], 0x268
mov rdx, rax
test rax, rax
je 0x14001dcc2
test byte [rcx + 0x261], 0x40
lea rcx, [rcx + 0x268]
lea rax, [rdx - 0x268]
je 0x14001dca3
mov rcx, qword [rsi + 0x10]
mov rax, qword [rsi + 0x18]
mov qword [rsp + 0xa0], rcx
cmp rax, rcx
jae 0x14001fec0
mov qword [rsp + 0x2c0], rdx
mov qword [rsp + 0xc8], r9
lea rcx, [rbp + 0x18]
mov qword [rsp + 0x2b0], rcx
xorps xmm6, xmm6
pcmpeqd xmm7, xmm7
mov ecx, 1
mov qword [rsp + 0x80], rcx
mov dword [rsp + 0xb0], 0
xor ecx, ecx
mov qword [rsp + 0x68], rcx
xor ecx, ecx
mov qword [rsp + 0x90], rcx
mov qword [rsp + 0x88], rbp
mov qword [rsp + 0xf8], rsi
mov rcx, qword [rsi]
lea rdx, [rax + 1]
mov qword [rsp + 0x58], rdx
mov qword [rsi + 0x18], rdx
shl rax, 5
mov r15, qword [rcx + rax]
mov qword [rsp + 0xa8], rcx
mov r13, qword [rcx + rax + 0x10]
mov rbx, qword [rbp + 0x10]
cmp qword [rbx + 0x100], 0
je 0x14001e1ba
mov rax, qword [rbx + 0x108]
mov rcx, qword [rbx + 0x110]
mov rdx, rax
movabs r8, 0x736f6d6570736575
xor rdx, r8
mov r8, rcx
movabs r9, 0x646f72616e646f6d
xor r8, r9
mov r9, rax
movabs r10, 0x6c7967656e657261
xor r9, r10
mov r10, rcx
movabs r11, 0x7465646279746573
xor r10, r11
mov qword [rsp + 0x100], rdx
mov qword [rsp + 0x108], r9
mov qword [rsp + 0x110], r8
mov qword [rsp + 0x118], r10
mov qword [rsp + 0x120], rax
mov qword [rsp + 0x128], rcx
lea rax, [rsp + 0x130]
movups xmmword [rax], xmm6
mov qword [rax + 0x10], 0
mov qword [rsp + 0x210], r13
mov r8d, 8
lea rsi, [rsp + 0x100]
mov rcx, rsi
lea rdx, [rsp + 0x210]
call fcn.14000ca67
mov rcx, rsi
mov rdx, r15
mov r8, r13
call fcn.14000ca67
mov rax, qword [rsp + 0x110]
mov r9, qword [rsp + 0x130]
shl r9, 0x38
or r9, qword [rsp + 0x138]
mov rcx, qword [rsp + 0x118]
mov r8, qword [rsp + 0x100]
add r8, rax
rol rax, 0xd
xor rcx, r9
xor rax, r8
rol r8, 0x20
mov rdx, qword [rsp + 0x108]
add rdx, rcx
rol rcx, 0x10
xor rcx, rdx
add r8, rcx
rol rcx, 0x15
add rdx, rax
rol rax, 0x11
xor rcx, r8
xor rax, rdx
rol rdx, 0x20
xor r8, r9
add r8, rax
rol rax, 0xd
xor rax, r8
rol r8, 0x20
xor rdx, 0xff
add rdx, rcx
rol rcx, 0x10
xor rcx, rdx
add r8, rcx
rol rcx, 0x15
add rdx, rax
rol rax, 0x11
xor rax, rdx
rol rdx, 0x20
xor rcx, r8
add r8, rax
rol rax, 0xd
xor rax, r8
rol r8, 0x20
add rdx, rcx
rol rcx, 0x10
xor rcx, rdx
add r8, rcx
rol rcx, 0x15
add rdx, rax
rol rax, 0x11
xor rax, rdx
rol rdx, 0x20
xor rcx, r8
add r8, rax
rol rax, 0xd
add rdx, rcx
rol rcx, 0x10
xor rcx, rdx
rol rcx, 0x15
xor rax, r8
add rdx, rax
rol rax, 0x11
mov r8, rdx
rol r8, 0x20
xor r8, rax
xor r8, rcx
xor r8, rdx
mov rdi, qword [rbx + 0xe8]
mov rbx, qword [rbx + 0xf0]
mov r12, rbx
and r12, r8
shr r8, 0x39
movd xmm0, r8d
punpcklbw xmm0, xmm0
pshuflw xmm0, xmm0, 0
pshufd xmm8, xmm0, 0
xor ebp, ebp
movdqu xmm9, xmmword [rdi + r12]
movdqa xmm0, xmm9
pcmpeqb xmm0, xmm8
pmovmskb esi, xmm0
test si, si
je 0x14001dfaf
mov eax, esi
lea esi, [rax - 1]
and esi, eax
bsf eax, eax
add rax, r12
and rax, rbx
shl rax, 5
mov r14, rdi
sub r14, rax
cmp r13, qword [r14 - 0x18]
jne 0x14001df75
mov rdx, qword [r14 - 0x20]
mov rcx, r15
mov r8, r13
call sub.msvcrt.dll_memcmp
test eax, eax
jne 0x14001df75
jmp 0x14001dfd1
pcmpeqb xmm9, xmm7
pmovmskb eax, xmm9
test eax, eax
jne 0x14001e1ba
add r12, rbp
add r12, 0x10
add rbp, 0x10
and r12, rbx
jmp 0x14001df61
mov rax, qword [rsp + 0xf8]
mov r12, qword [rax + 0x10]
mov rcx, qword [rax + 0x18]
cmp r12, rcx
jb 0x140022829
mov rsi, qword [r14 - 0x10]
mov rbp, qword [r14 - 8]
mov qword [rax + 0x10], rcx
mov rdx, qword [rax]
mov qword [rsp + 0x58], rcx
shl rcx, 5
mov qword [rsp + 0xa8], rcx
lea rax, [rdx + rcx]
mov r15, r12
shl r15, 5
mov qword [rsp + 0xa0], rdx
lea r14, [rdx + r15]
mov rbx, r14
sub rbx, rax
shr rbx, 5
add rbx, rbp
mov rcx, rbx
call fcn.1400100d3
mov qword [rsp + 0x210], rax
mov qword [rsp + 0x218], rdx
mov qword [rsp + 0x220], 0
cmp rdx, rbx
jb 0x14001e6f9
mov rdi, rax
xor r13d, r13d
test rbp, rbp
je 0x14001e0de
mov qword [rsp + 0x50], r12
mov qword [rsp + 0x70], r15
mov qword [rsp + 0x60], r14
mov rbx, r13
shl rbx, 5
add rbx, rdi
neg rbp
xor r15d, r15d
xor r14d, r14d
lea r12, [rsp + 0x100]
mov rdx, qword [rsi + r15]
mov r8, qword [rsi + r15 + 8]
mov rcx, r12
call fcn.140073a20
movdqu xmm0, xmmword [rsp + 0x100]
movupd xmm1, xmmword [rsp + 0x110]
movupd xmmword [rbx + r15*2 + 0x10], xmm1
movdqu xmmword [rbx + r15*2], xmm0
dec r14
add r15, 0x10
cmp rbp, r14
jne 0x14001e090
sub r13, r14
mov r14, qword [rsp + 0x60]
mov r15, qword [rsp + 0x70]
mov r12, qword [rsp + 0x50]
cmp qword [rsp + 0x58], r12
mov rbp, qword [rsp + 0x88]
je 0x14001e145
mov rax, qword [rsp + 0xa8]
mov rcx, qword [rsp + 0xa0]
add rcx, rax
add rcx, 0x20
sub r15, rax
mov rax, r13
shl rax, 5
add rdi, rax
xor eax, eax
cmp byte [rcx - 8], 2
je 0x14001e405
lea rdx, [rcx - 0x20]
movdqu xmm0, xmmword [rdx]
movupd xmm1, xmmword [rdx + 0x10]
movupd xmmword [rdi + rax + 0x10], xmm1
movdqu xmmword [rdi + rax], xmm0
inc r13
add rcx, 0x20
add rax, 0x20
cmp r15, rax
jne 0x14001e113
mov qword [rsp + 0x220], r13
mov rax, qword [rsp + 0x220]
mov qword [rsp + 0x110], rax
movups xmm0, xmmword [rsp + 0x210]
movaps xmmword [rsp + 0x100], xmm0
mov rsi, qword [rsp + 0xf8]
mov rcx, rsi
call fcn.1400133af
mov rax, qword [rsp + 0x110]
mov qword [rsi + 0x10], rax
movdqa xmm0, xmmword [rsp + 0x100]
movdqu xmmword [rsi], xmm0
mov qword [rsi + 0x18], 0
xor eax, eax
mov rcx, qword [rsi + 0x10]
mov qword [rsp + 0xa0], rcx
cmp rax, rcx
jb 0x14001dd37
jmp 0x14001fed2
lea rcx, [rsp + 0x100]
mov rdx, r15
mov r8, r13
call fcn.1400417f1
mov rsi, qword [rsp + 0x80]
lea r12, [rsi + 1]
mov rbp, qword [rsp + 0x88]
mov rcx, qword [rbp + 0x10]
mov r15, qword [rsp + 0xc8]
cmp r12, r15
jne 0x14001e25a
mov rax, qword [rcx + 0xb0]
test rax, rax
je 0x14001e25a
mov rdx, qword [rcx + 0xa0]
imul r8, rax, 0x268
xor r9d, r9d
cmp qword [rdx + r9 + 0x218], 0
jne 0x14001e24e
cmp dword [rdx + r9 + 0x258], 0x110000
jne 0x14001e24e
test dword [rdx + r9 + 0x260], 0x100002
je 0x14001e24e
mov r10, qword [rdx + r9 + 0x40]
test r10, r10
je 0x14001e245
mov r10, qword [rdx + r9 + 0x48]
cmp r15, r10
jne 0x14001e720
add r9, 0x268
cmp r8, r9
jne 0x14001e20f
xor r8d, r8d
mov r14, qword [rsp + 0x58]
shl r14, 5
add r14, qword [rsp + 0xa8]
mov rdi, qword [rsp + 0x100]
mov r13, qword [rsp + 0x108]
mov rax, qword [rsp + 0x110]
mov qword [rsp + 0x60], rax
cmp r12, r15
setne r10b
mov rdx, qword [rcx + 0x238]
mov rax, qword [rcx + 0x240]
mov r9d, edx
or r9d, eax
bt r9d, 0x1f
setae r11b
test r8b, r8b
mov qword [rsp + 0x50], rdi
mov qword [rsp + 0x70], r13
jne 0x14001e2ea
or r10b, byte [rsp + 0xb0]
or r10b, r11b
test r10b, 1
je 0x14001e2ea
test byte [rsp + 0xb0], 1
jne 0x14001e427
mov qword [rsp + 0xc0], r14
jmp 0x14001e383
mov rax, r14
mov rdx, qword [rsp + 0x58]
cmp qword [rsp + 0xa0], rdx
mov edx, 0
cmove rax, rdx
je 0x14001e356
mov rdx, qword [rcx + 0xb0]
test rdx, rdx
je 0x14001e356
mov rbx, qword [rcx + 0xa0]
imul rcx, rdx, 0x268
cmp qword [rbx + 0x218], 0
jne 0x14001e346
cmp dword [rbx + 0x258], 0x110000
jne 0x14001e346
cmp qword [rbx + 0x40], 0
je 0x14001e346
cmp qword [rbx + 0x48], rsi
je 0x14001e77c
add rbx, 0x268
add rcx, 0xfffffffffffffd98
jne 0x14001e31f
mov rsi, r12
mov rcx, qword [rbp + 0x10]
mov bl, 1
test byte [rsp + 0xb0], 1
jne 0x14001faa1
mov qword [rsp + 0xc0], r14
mov rdx, qword [rcx + 0x238]
mov rax, qword [rcx + 0x240]
movabs rcx, 0x10000000000
test rdx, rcx
jne 0x14001e3a5
and rax, rcx
jne 0x14001e3a5
mov rax, qword [rsp + 0x68]
dec rax
cmp rax, 2
jb 0x14001e3d1
test rdi, rdi
mov rdx, rdi
cmove rdx, r13
cmp byte [rsp + 0x90], 0
setne r9b
mov rcx, rbp
mov r8, qword [rsp + 0x60]
call fcn.14002331e
test rax, rax
jne 0x14002034f
test rdi, rdi
mov r15, rdi
cmove r15, r13
mov rbx, qword [rsp + 0x60]
cmp rbx, 2
jae 0x14001e446
mov r12, rsi
test rdi, rdi
mov rsi, rdi
cmove rsi, r13
test rbx, rbx
jne 0x14001e462
mov r15, qword [rsp + 0xc8]
jmp 0x14001e678
mov qword [rsp + 0x220], r13
sub r14, rcx
je 0x14001e14d
shr r14, 5
mov rdx, r14
call fcn.14000f308
jmp 0x14001e14d
shr r9d, 0x1f
test r9b, r9b
cmovne rsi, r15
cmp qword [rsp + 0x2c0], 0
cmovne rsi, r15
mov bl, 1
jmp 0x14001faa1
movzx eax, word [r15]
cmp eax, 0x2d2d
je 0x14001e680
mov r12, rsi
test rdi, rdi
mov rsi, rdi
cmove rsi, r13
cmp byte [rsi], 0x2d
mov r15, qword [rsp + 0xc8]
jne 0x14001e678
lea r14, [rbx - 1]
inc rsi
lea rcx, [rsp + 0xd0]
mov rdx, rsi
mov r8, r14
call fcn.140007750
mov rcx, qword [rbp + 0x10]
mov r8, qword [rcx + 0x238]
mov r9, qword [rcx + 0x240]
mov eax, r8d
or eax, r9d
bt eax, 0x19
jae 0x14001e4f5
mov rdx, qword [rsp + 0xd0]
test rdx, rdx
jne 0x14001e4c0
mov rdx, qword [rsp + 0xd8]
mov r8, qword [rsp + 0xe0]
lea rcx, [rsp + 0x100]
call fcn.14003bc60
cmp byte [rsp + 0x100], 0
je 0x14001eb4b
mov rcx, qword [rbp + 0x10]
mov r8, qword [rcx + 0x238]
mov r9, qword [rcx + 0x240]
mov eax, r8d
or eax, r9d
bt eax, 0x10
jae 0x14001e613
mov rax, qword [rsp + 0xd0]
test rax, rax
jne 0x14001e51a
mov rax, qword [rsp + 0xd8]
mov rdx, qword [rsp + 0xe0]
test rdx, rdx
je 0x14001e613
add rdx, rax
or r8, r9
bt r8, 0x21
setae r8b
movzx r9d, byte [rax]
test r9b, r9b
js 0x14001e548
inc rax
jmp 0x14001e5be
mov r10d, r9d
and r10d, 0x1f
movzx ebx, byte [rax + 1]
and ebx, 0x3f
cmp r9b, 0xdf
jbe 0x14001e5a0
movzx r11d, byte [rax + 2]
shl ebx, 6
and r11d, 0x3f
or r11d, ebx
cmp r9b, 0xf0
jb 0x14001e5b0
movzx r9d, byte [rax + 3]
and r10d, 7
shl r10d, 0x12
shl r11d, 6
and r9d, 0x3f
or r9d, r11d
or r9d, r10d
cmp r9d, 0x110000
mov rbx, qword [rsp + 0x60]
je 0x14001e613
add rax, 4
jmp 0x14001e5be
add rax, 2
shl r10d, 6
or r10d, ebx
mov r9d, r10d
jmp 0x14001e5be
add rax, 3
shl r10d, 0xc
or r11d, r10d
mov r9d, r11d
test r8b, r8b
jne 0x14002296a
mov r11, qword [rcx + 0xc8]
test r11, r11
je 0x14001e766
mov r10, qword [rcx + 0xb8]
shl r11, 3
lea r11, [r11 + r11*4]
xor ebx, ebx
cmp byte [r10 + rbx + 0x20], 2
jne 0x14001e5f7
cmp dword [r10 + rbx + 8], r9d
je 0x14001e605
add rbx, 0x28
cmp r11, rbx
jne 0x14001e5e8
jmp 0x14001e766
cmp rax, rdx
mov rbx, qword [rsp + 0x60]
jne 0x14001e53a
mov rax, qword [rsp + 0x68]
cmp rax, 1
je 0x14001ead2
cmp rax, 2
jne 0x14001eb23
mov rax, qword [rcx + 0xa0]
mov rdx, 0xfffffffffffffd98
add rax, rdx
imul rdx, qword [rcx + 0xb0], 0x268
test rdx, rdx
je 0x140022816
lea r8, [rax + 0x268]
add rdx, 0xfffffffffffffd98
mov r9, qword [rsp + 0xb8]
cmp qword [rax + 0x458], r9
mov rax, r8
jne 0x14001e648
jmp 0x14001eb19
mov rsi, r12
jmp 0x14001fa8f
mov qword [rsp + 0x280], rbp
mov rax, qword [rsp + 0x68]
cmp rax, 2
mov qword [rsp + 0x80], rsi
je 0x14001e7b9
cmp rax, 1
jne 0x14001e811
mov rcx, qword [rbp + 0x10]
mov rax, qword [rcx + 0xa0]
mov rdx, 0xfffffffffffffd98
add rax, rdx
imul rcx, qword [rcx + 0xb0], 0x268
test rcx, rcx
je 0x140022803
lea rdx, [rax + 0x268]
add rcx, 0xfffffffffffffd98
mov r8, qword [rsp + 0xb8]
cmp qword [rax + 0x458], r8
mov rax, rdx
jne 0x14001e6c9
jmp 0x14001e804
lea rcx, [rsp + 0x210]
xor edx, edx
mov r8, rbx
call fcn.140010130
mov rdi, qword [rsp + 0x210]
mov r13, qword [rsp + 0x220]
jmp 0x14001e061
xor r8d, r8d
mov r9, r8
cmp dword [rdx + 0x258], 0x110000
cmove r8, rdx
cmp qword [rdx + 0x218], 0
cmovne r8, r9
add rdx, 0x268
dec rax
jne 0x14001e723
test r8, r8
je 0x14001e25a
test byte [r8 + 0x261], 0x40
sete r8b
jmp 0x14001e25d
mov qword [rsp + 0x1b0], 5
mov rbx, qword [rsp + 0x60]
jmp 0x14001eb57
mov qword [rsp + 0xc0], r14
mov rdx, qword [rax]
mov r8, qword [rax + 0x10]
lea rcx, [rsp + 0x100]
call fcn.1400417f1
mov r14, qword [rsp + 0x100]
test r14, r14
je 0x14001f1b7
mov r13, qword [rsp + 0x108]
mov rdx, r14
jmp 0x14001f1c5
mov rcx, qword [rbp + 0x10]
mov rax, qword [rcx + 0xa0]
mov rdx, 0xfffffffffffffd98
add rax, rdx
imul rcx, qword [rcx + 0xb0], 0x268
test rcx, rcx
je 0x140022803
lea rdx, [rax + 0x268]
add rcx, 0xfffffffffffffd98
mov r8, qword [rsp + 0xb8]
cmp qword [rax + 0x458], r8
mov rax, rdx
jne 0x14001e7d9
test byte [rdx + 0x261], 0x10
jne 0x14001fa7a
lea r12, [rbx - 2]
inc qword [rbp + 0x50]
test r12, r12
je 0x14001fe1b
add r15, 2
cmp r12, 0x40
jae 0x14001e84c
mov r9d, 1
mov rcx, r15
mov rdx, r12
lea r8, [0x140080aa2]
call fcn.14003f373
mov rbx, rax
mov r13, rdx
jmp 0x14001e8a9
mov r8d, 1
lea rsi, [rsp + 0x100]
mov rcx, rsi
lea rdx, [0x140080aa2]
call fcn.1400402de
mov rcx, rsi
mov rdx, r15
mov r8, r12
call fcn.14003ff6a
mov rbx, rax
mov r13, rdx
cmp qword [rsp + 0x100], 0
je 0x14001e8a9
cmp qword [rsp + 0x110], 0
je 0x14001e8a9
mov r8, qword [rsp + 0x108]
mov rcx, qword [0x140095150]
xor edx, edx
call fcn.1400798d4
cmp rbx, 1
jne 0x14001e8db
cmp r12, r13
jbe 0x14001e8c2
mov al, byte [r15 + r13]
and al, 0xc0
cmp al, 0x80
je 0x1400229fe
sub r12, r13
jb 0x1400229b0
mov rax, r13
add rax, r15
mov qword [rsp + 0x208], rax
jmp 0x14001e8e8
mov r13, r12
xor eax, eax
mov qword [rsp + 0x208], rax
mov rdi, qword [rbp + 0x10]
lea rcx, [rsp + 0x100]
mov rdx, r15
mov r8, r13
call fcn.140041658
mov al, byte [rsp + 0x118]
mov rsi, qword [rsp + 0x100]
cmp al, 3
je 0x140022924
mov rbx, qword [rsp + 0x108]
mov qword [rsp + 0x2a8], rbx
mov byte [rsp + 0x1a8], al
cmp al, 2
je 0x14001e939
mov rbx, qword [rsp + 0x110]
mov r14, qword [rdi + 0xb8]
mov rax, qword [rdi + 0xc8]
shl rax, 3
lea rbp, [rax + rax*4]
mov qword [rsp + 0x2b8], rsi
test rbp, rbp
je 0x14001e991
mov al, byte [r14 + 0x20]
add al, 0xfe
cmp al, 2
ja 0x14001e96a
cmp al, 1
jne 0x14001e987
cmp qword [r14 + 0x18], rbx
jne 0x14001e987
mov rcx, qword [r14 + 8]
mov rdx, rsi
mov r8, rbx
call sub.msvcrt.dll_memcmp
test eax, eax
je 0x14001f364
add r14, 0x28
add rbp, 0xffffffffffffffd8
jmp 0x14001e957
mov rbp, qword [rsp + 0x88]
mov rax, qword [rbp + 0x10]
mov rcx, qword [rax + 0x238]
or rcx, qword [rax + 0x240]
bt rcx, 0x2b
jae 0x14001f03e
lea rcx, [rsp + 0x100]
mov rdx, r15
mov r8, r13
call fcn.140007750
mov rax, qword [rbp + 0x10]
mov rcx, qword [rax + 0xb0]
mov r8, qword [rsp + 0x100]
test rcx, rcx
mov rbx, qword [rsp + 0x60]
je 0x14001f3d8
mov rdi, r8
mov qword [rsp + 0x308], r8
test r8, r8
jne 0x14001ea02
mov rdi, qword [rsp + 0x108]
mov rsi, qword [rax + 0xa0]
imul rax, rcx, 0x268
add rax, rsi
mov qword [rsp + 0x370], rax
mov r14, qword [rsp + 0x110]
mov qword [rsp + 0x330], r12
mov rdx, qword [rsi + 0x218]
test rdx, rdx
je 0x14001ea53
cmp qword [rsi + 0x220], r14
jb 0x14001ea53
mov rcx, rdi
mov r8, r14
call sub.msvcrt.dll_memcmp
test eax, eax
je 0x14001f35a
mov rax, rsi
add rsi, 0x268
mov rbp, qword [rax + 0x148]
mov qword [rsp + 0x58], rax
mov rax, qword [rax + 0x158]
shl rax, 3
lea rbx, [rax + rax*2]
xor r12d, r12d
cmp rbx, r12
je 0x14001eaa5
cmp qword [rbp + r12 + 8], r14
jb 0x14001ea9f
mov rdx, qword [rbp + r12]
mov rcx, rdi
mov r8, r14
call sub.msvcrt.dll_memcmp
test eax, eax
je 0x14001f340
add r12, 0x18
jmp 0x14001ea7b
mov rax, rsi
cmp rsi, qword [rsp + 0x370]
mov rbp, qword [rsp + 0x88]
mov rbx, qword [rsp + 0x60]
mov r12, qword [rsp + 0x330]
jne 0x14001ea2b
xor esi, esi
jmp 0x14001f35a
mov rax, qword [rcx + 0xa0]
mov rdx, 0xfffffffffffffd98
add rax, rdx
imul rdx, qword [rcx + 0xb0], 0x268
test rdx, rdx
je 0x140022816
lea r8, [rax + 0x268]
add rdx, 0xfffffffffffffd98
mov r9, qword [rsp + 0xb8]
cmp qword [rax + 0x458], r9
mov rax, r8
jne 0x14001eaee
test byte [r8 + 0x261], 0x10
jne 0x14001eb4b
add rcx, 0xa0
mov rdx, r12
call fcn.140023634
test rax, rax
je 0x14001ebaa
mov eax, dword [rax + 0x260]
mov ecx, 0x5000
and eax, ecx
cmp eax, 0x1000
jne 0x14001ebaa
mov qword [rsp + 0x1b0], 5
mov rsi, r12
mov r8, qword [rsp + 0xd0]
test r8, r8
je case.default.0x14001eb96
cmp qword [rsp + 0xd8], 0
je case.default.0x14001eb96
mov rcx, qword [0x140095150]
xor edx, edx
call fcn.1400798d4
mov rax, qword [rsp + 0x1b0]
lea rcx, [0x14007d260]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
lea rcx, [rsp + 0x1b0]
call fcn.140023bec
jmp 0x14001fa8f
mov qword [rsp + 0x58], r14
mov qword [rsp + 0x210], 8
mov rax, qword [rbp + 0x58]
mov qword [rbp + 0x58], 0
mov r8, qword [rsp + 0xd0]
mov r11, qword [rsp + 0xd8]
test r8, r8
mov r13, r8
cmove r13, r11
mov r14, qword [rsp + 0xe0]
add r14, r13
test rax, rax
je 0x14001ec89
inc rax
dec rax
je 0x14001ecea
cmp r13, r14
je 0x14001f045
movzx ecx, byte [r13]
test cl, cl
js 0x14001ec18
inc r13
jmp 0x14001ec78
mov edx, ecx
and edx, 0x1f
movzx r9d, byte [r13 + 1]
and r9d, 0x3f
cmp cl, 0xdf
jbe 0x14001ec5d
movzx r10d, byte [r13 + 2]
shl r9d, 6
and r10d, 0x3f
or r10d, r9d
cmp cl, 0xf0
jb 0x14001ec6b
movzx ecx, byte [r13 + 3]
add r13, 4
and edx, 7
shl edx, 0x12
shl r10d, 6
and ecx, 0x3f
or ecx, r10d
or ecx, edx
jmp 0x14001ec78
add r13, 2
shl edx, 6
or edx, r9d
mov ecx, edx
jmp 0x14001ec78
add r13, 3
shl edx, 0xc
or r10d, edx
mov ecx, r10d
cmp ecx, 0x110000
jne 0x14001ebf8
jmp 0x14001f045
cmp r13, r14
je 0x14001f045
movzx ebx, byte [r13]
test bl, bl
jns 0x14001ecfc
mov eax, ebx
and eax, 0x1f
movzx edx, byte [r13 + 1]
and edx, 0x3f
cmp bl, 0xdf
jbe 0x14001ed32
movzx ecx, byte [r13 + 2]
shl edx, 6
and ecx, 0x3f
or ecx, edx
cmp bl, 0xef
jbe 0x14001ed25
movzx ebx, byte [r13 + 3]
and eax, 7
shl eax, 0x12
shl ecx, 6
and ebx, 0x3f
or ebx, ecx
or ebx, eax
cmp ebx, 0x110000
je 0x14001f045
add r13, 4
jmp 0x14001ed3d
cmp r13, r14
je 0x14001f045
movzx ebx, byte [r13]
test bl, bl
js 0x14001ed01
inc r13
jmp 0x14001ed3d
mov eax, ebx
and eax, 0x1f
movzx edx, byte [r13 + 1]
and edx, 0x3f
cmp bl, 0xdf
jbe 0x14001ed32
movzx ecx, byte [r13 + 2]
shl edx, 6
and ecx, 0x3f
or ecx, edx
cmp bl, 0xf0
jae 0x14001ecc3
add r13, 3
shl eax, 0xc
or ecx, eax
mov ebx, ecx
jmp 0x14001ed3d
add r13, 2
shl eax, 6
or eax, edx
mov ebx, eax
inc qword [rbp + 0x50]
mov dword [rsp + 0x280], ebx
mov rax, qword [rbp + 0x10]
mov rdx, qword [rax + 0xc8]
test rdx, rdx
je 0x14001f0be
mov rcx, qword [rax + 0xb8]
shl rdx, 3
lea rdx, [rdx + rdx*4]
cmp byte [rcx + 0x20], 2
jne 0x14001ed76
cmp dword [rcx + 8], ebx
je 0x14001ed85
add rcx, 0x28
add rdx, 0xffffffffffffffd8
jne 0x14001ed6b
jmp 0x14001f0be
mov rcx, qword [rcx]
mov rdx, qword [rax + 0xb0]
cmp rdx, rcx
jbe 0x1400227f7
mov rdi, qword [rax + 0xa0]
imul r15, rcx, 0x268
mov rcx, qword [rdi + r15 + 0x1f0]
mov rbp, qword [rsp + 0x88]
mov rdx, qword [rbp + 0x28]
cmp rdx, qword [rbp + 0x20]
mov qword [rsp + 0xa0], r8
mov qword [rsp + 0xc0], r11
jne 0x14001edf1
mov qword [rsp + 0xa8], rcx
mov rcx, qword [rsp + 0x2b0]
call fcn.14000c029
mov rcx, qword [rsp + 0xa8]
mov rdx, qword [rbp + 0x28]
mov rax, qword [rbp + 0x18]
mov qword [rax + rdx*8], rcx
inc qword [rbp + 0x28]
lea rax, [rdi + r15]
mov qword [rsp + 0xa8], rax
test byte [rdi + r15 + 0x260], 0x20
jne 0x14001ef77
lea rax, [rdi + r15]
add rax, 0x1f0
mov qword [rsp + 0x90], rax
mov rax, qword [rbp + 0x10]
mov rcx, qword [rax + 0xa0]
mov rdx, 0xfffffffffffffd98
add rcx, rdx
imul rdx, qword [rax + 0xb0], 0x268
mov r8, rdx
mov r9, rcx
mov rdi, qword [rsp + 0x50]
mov r15, qword [rsp + 0xc8]
test r8, r8
je 0x14001eec5
lea r10, [r9 + 0x268]
add r8, 0xfffffffffffffd98
movabs r11, 0x59636393cffbfe5f
cmp qword [r9 + 0x458], r11
mov r9, r10
jne 0x14001ee5d
mov r8d, dword [r10 + 0x258]
cmp r8d, 0x110000
je 0x14001eec5
cmp r8d, ebx
jne 0x14001eec5
mov r8, qword [rax + 0x238]
bt r8d, 8
jb 0x14001eec5
mov r9, qword [rax + 0x240]
bt r9d, 8
jb 0x14001eec5
or r8, r9
bt r8, 0x29
jae 0x14001fe83
test rdx, rdx
je 0x14001ef27
lea r8, [rcx + 0x268]
add rdx, 0xfffffffffffffd98
movabs r9, 0x30ff0b7c4d079478
cmp qword [rcx + 0x458], r9
mov rcx, r8
jne 0x14001eec5
mov ecx, dword [r8 + 0x258]
cmp ecx, 0x110000
je 0x14001ef27
cmp ecx, ebx
jne 0x14001ef27
mov rcx, qword [rax + 0x238]
bt ecx, 9
jb 0x14001ef27
mov rax, qword [rax + 0x240]
bt eax, 9
jb 0x14001ef27
or ecx, eax
bt ecx, 0xa
jae 0x14001fe8a
mov rcx, rbp
mov rbx, qword [rsp + 0x78]
mov rdx, rbx
mov r8, qword [rsp + 0xa8]
call fcn.140023f7b
mov r8, qword [rbp + 0x50]
mov rax, qword [rsp + 0x90]
mov rdx, qword [rax]
mov rcx, rbx
mov r9b, 2
call fcn.140024326
lea rcx, [rsp + 0x210]
call fcn.140023bec
mov qword [rsp + 0x210], 2
jmp 0x14001f01d
lea rdi, [rsp + 0x2e0]
mov rcx, rdi
mov edx, ebx
call fcn.140041cbc
lea rcx, [rsp + 0x100]
mov rdx, rsi
mov r8, qword [rsp + 0x58]
mov r9, rdi
call fcn.140013183
cmp qword [rsp + 0x100], 0
mov r15, qword [rsp + 0xc8]
je 0x140022a32
mov r9, qword [rsp + 0x118]
mov r8, r9
test r9, r9
mov rbp, qword [rsp + 0x88]
mov rdi, qword [rsp + 0x50]
je 0x14001efdd
mov r8, qword [rsp + 0x110]
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0xa8]
mov qword [rsp + 0x20], rax
lea rbx, [rsp + 0x100]
mov rcx, rbx
mov rdx, rbp
call fcn.140023c6d
cmp dword [rsp + 0x100], 3
jne 0x14001fe57
mov rcx, rbx
call fcn.140023bec
mov al, 1
mov qword [rsp + 0x90], rax
xor eax, eax
mov r8, qword [rsp + 0xa0]
mov r11, qword [rsp + 0xc0]
jmp 0x14001ebec
xor esi, esi
jmp 0x14001f38d
mov ecx, 0xa
lea rdi, [rsp + 0x1b0]
lea rsi, [rsp + 0x210]
rep movsq qword [rdi], qword [rsi]
test r8, r8
je 0x14001f075
test r11, r11
je 0x14001f075
mov rcx, qword [0x140095150]
xor edx, edx
call fcn.1400798d4
mov rax, qword [rsp + 0x1b0]
lea rcx, [0x14007d260]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
mov rdi, qword [rsp + 0x50]
mov r13, qword [rsp + 0x70]
mov rbx, qword [rsp + 0x60]
mov rsi, r12
jmp rax
mov eax, 1
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x1b8]
mov qword [rsp + 0xb8], rax
jmp 0x14001fde7
mov rcx, qword [rax + 0xe0]
test rcx, rcx
mov r13, qword [rsp + 0x70]
mov rsi, r12
je 0x14001f132
mov rax, qword [rax + 0xd0]
lea rcx, [rcx + rcx*4]
shl rcx, 7
add rcx, rax
mov edx, dword [rax + 0x278]
cmp edx, 0x110000
je 0x14001f0fa
cmp edx, ebx
je 0x14001f399
lea rdx, [rax + 0x280]
mov r8, qword [rax + 0x70]
mov r9, qword [rax + 0x80]
shl r9, 3
xor r10d, r10d
cmp r9, r10
je 0x14001f12a
lea r11, [r10 + 8]
cmp dword [r8 + r10], ebx
mov r10, r11
jne 0x14001f113
jmp 0x14001f399
mov rax, rdx
cmp rdx, rcx
jne 0x14001f0e4
lea rax, [rsp + 0x280]
mov qword [rsp + 0x2e0], rax
lea rax, [fcn.14003af30]
mov qword [rsp + 0x2e8], rax
lea rax, str.A_b_
mov qword [rsp + 0x100], rax
mov eax, 1
mov qword [rsp + 0x108], rax
mov qword [rsp + 0x120], 0
lea rcx, [rsp + 0x2e0]
mov qword [rsp + 0x110], rcx
mov qword [rsp + 0x118], rax
lea rcx, [rsp + 0x1b8]
lea rdx, [rsp + 0x100]
call fcn.140007990
mov qword [rsp + 0x1b0], 7
jmp 0x14001f9e0
mov r13, qword [rsp + 0x108]
xor r14d, r14d
mov rdx, r13
mov r15, qword [rsp + 0x110]
mov r9, qword [rbp + 0x10]
mov rax, qword [r9 + 0x238]
mov rcx, qword [r9 + 0x240]
mov r8d, eax
or r8d, ecx
bt r8d, 0x10
jb 0x14001f2de
mov r11, qword [rbx + 0x1f0]
mov r8, qword [r9 + 0xa0]
mov r10, 0xfffffffffffffd98
add r8, r10
imul r9, qword [r9 + 0xb0], 0x268
test r9, r9
je 0x1400228ca
lea r10, [r8 + 0x268]
add r9, 0xfffffffffffffd98
cmp qword [r8 + 0x458], r11
mov r8, r10
jne 0x14001f213
test byte [r10 + 0x261], 0x10
jne 0x14001f2de
or eax, ecx
bt eax, 0x19
jae 0x14001f2d4
lea rcx, [rsp + 0x100]
mov qword [rsp + 0x1a8], rdx
mov r8, r15
call fcn.140007750
mov rbx, qword [rsp + 0x100]
mov rdi, qword [rsp + 0x108]
test rbx, rbx
mov rdx, rbx
cmove rdx, rdi
mov r8, qword [rsp + 0x110]
lea rcx, [rsp + 0x210]
call fcn.14003bc60
mov sil, byte [rsp + 0x210]
test rbx, rbx
je 0x14001f2ba
test rdi, rdi
je 0x14001f2ba
mov rcx, qword [0x140095150]
xor edx, edx
mov r8, rbx
call fcn.1400798d4
test sil, sil
mov rdi, qword [rsp + 0x50]
mov rsi, qword [rsp + 0x80]
mov rdx, qword [rsp + 0x1a8]
je 0x14001f2de
cmp r15, 2
jae 0x14001fd7e
test r14, r14
mov rdx, r14
cmove rdx, r13
cmp byte [rsp + 0x90], 0
setne r9b
mov rcx, rbp
mov r8, r15
call fcn.14002331e
mov rbx, rax
test r14, r14
je 0x14001f31d
test r13, r13
je 0x14001f31d
mov rcx, qword [0x140095150]
xor edx, edx
mov r8, r14
call fcn.1400798d4
test rbx, rbx
mov r13, qword [rsp + 0x70]
mov r15, qword [rsp + 0xc8]
mov r14, qword [rsp + 0xc0]
jne 0x14001e356
jmp 0x14001e359
mov rbp, qword [rsp + 0x88]
mov rbx, qword [rsp + 0x60]
mov r12, qword [rsp + 0x330]
mov rsi, qword [rsp + 0x58]
mov r8, qword [rsp + 0x308]
jmp 0x14001f3da
mov rcx, qword [r14]
mov rdx, qword [rdi + 0xb0]
cmp rdx, rcx
jbe 0x1400227f7
imul rsi, rcx, 0x268
add rsi, qword [rdi + 0xa0]
mov rbp, qword [rsp + 0x88]
mov rdi, qword [rsp + 0x50]
mov rbx, qword [rsp + 0x60]
jmp 0x14001f3fd
mov r12, rsi
mov r14, qword [rax + 0x40]
mov rsi, qword [rax + 0x50]
mov rcx, rsi
call fcn.14007604d
mov rdi, rax
mov rbx, rdx
mov rcx, rax
mov rdx, r14
mov r8, rsi
call sub.msvcrt.dll_memcpy
mov rax, qword [rbp + 0x50]
cmp qword [rbp], 0
je 0x14001f98a
mov rcx, qword [rbp + 8]
jmp 0x14001f999
xor esi, esi
test r8, r8
mov rdi, qword [rsp + 0x50]
je 0x14001f3fd
cmp qword [rsp + 0x108], 0
je 0x14001f3fd
mov rcx, qword [0x140095150]
xor edx, edx
call fcn.1400798d4
cmp byte [rsp + 0x1a8], 2
je 0x14001f428
cmp qword [rsp + 0x2a8], 0
je 0x14001f428
mov rcx, qword [0x140095150]
xor edx, edx
mov r8, qword [rsp + 0x2b8]
call fcn.1400798d4
test rsi, rsi
je 0x14001f5dc
mov qword [rsp + 0x58], rsi
mov rsi, qword [rsi + 0x1f0]
mov rdx, qword [rbp + 0x28]
cmp rdx, qword [rbp + 0x20]
jne 0x14001f458
mov rcx, qword [rsp + 0x2b0]
call fcn.14000c029
mov rdx, qword [rbp + 0x28]
mov rax, qword [rbp + 0x18]
mov qword [rax + rdx*8], rsi
inc qword [rbp + 0x28]
mov rcx, qword [rsp + 0x58]
test byte [rcx + 0x260], 0x20
jne 0x14001f7b1
mov rdi, qword [rsp + 0x208]
test rdi, rdi
lea rsi, [0x14007d234]
jne 0x140021a35
mov r14, qword [rsp + 0x280]
mov rdi, qword [r14 + 0x10]
mov rbx, qword [rdi + 0xa0]
mov rax, 0xfffffffffffffd98
add rbx, rax
imul r12, qword [rdi + 0xb0], 0x268
mov rax, r12
mov rdx, rbx
test rax, rax
je 0x14001f535
lea rcx, [rdx + 0x268]
add rax, 0xfffffffffffffd98
movabs r8, 0x59636393cffbfe5f
cmp qword [rdx + 0x458], r8
mov rdx, rcx
jne 0x14001f4bc
mov rdx, qword [rcx + 0x218]
test rdx, rdx
je 0x14001f535
cmp r13, qword [rcx + 0x220]
jne 0x14001f535
mov rcx, r15
mov r8, r13
call sub.msvcrt.dll_memcmp
test eax, eax
jne 0x14001f535
mov rcx, qword [rdi + 0x238]
bt ecx, 8
jb 0x14001f535
mov rax, qword [rdi + 0x240]
bt eax, 8
jb 0x14001f535
or rcx, rax
mov eax, 9
bt rcx, 0x29
jae 0x14001f5c5
movabs rcx, 0x30ff0b7c4d079478
test r12, r12
je 0x14001f934
lea rax, [rbx + 0x268]
add r12, 0xfffffffffffffd98
cmp qword [rbx + 0x458], rcx
mov rbx, rax
jne 0x14001f53f
mov rdx, qword [rax + 0x218]
test rdx, rdx
je 0x14001f934
cmp r13, qword [rax + 0x220]
jne 0x14001f934
mov rcx, r15
mov r8, r13
call sub.msvcrt.dll_memcmp
test eax, eax
jne 0x14001f934
mov rcx, qword [rdi + 0x238]
bt ecx, 9
jb 0x14001f934
mov rax, qword [rdi + 0x240]
bt eax, 9
jb 0x14001f934
or ecx, eax
mov eax, 0xa
bt ecx, 0xa
jb 0x14001f934
mov qword [rsp + 0x210], rax
mov rdi, qword [rsp + 0x50]
mov rbx, qword [rsp + 0x60]
jmp 0x14001f7ef
mov rax, qword [rbp + 0x10]
mov rdi, qword [rax + 0x238]
mov rbx, qword [rax + 0x240]
mov rcx, rdi
or rcx, rbx
bt rcx, 0x24
jae 0x14001f842
mov rcx, qword [rax + 0xe0]
mov qword [rsp + 0x1a8], rcx
test rcx, rcx
je 0x14001f9f7
mov rcx, qword [rax + 0xd0]
mov r12d, 8
xor r14d, r14d
xor esi, esi
xor edi, edi
mov qword [rsp + 0x58], rcx
mov qword [rsp + 0x100], r12
mov qword [rsp + 0x108], rsi
mov qword [rsp + 0x110], r14
lea rbp, [rdi + rdi*4]
shl rbp, 7
lea rax, [rcx + rbp]
mov qword [rsp + 0x118], rax
mov rbx, qword [rcx + rbp + 0x138]
test rbx, rbx
je 0x14001f786
mov qword [rsp + 0x2a8], r12
mov r12, qword [rcx + rbp + 0x140]
mov rcx, rbx
mov rdx, r12
mov r8, r15
mov r9, r13
call fcn.140041b9b
test al, al
je 0x14001f6b9
cmp r14, rsi
jne 0x14001f6c0
lea rcx, [rsp + 0x100]
mov rdx, r14
call fcn.140013eac
mov rsi, qword [rsp + 0x100]
mov r14, qword [rsp + 0x110]
jmp 0x14001f6c8
mov rax, qword [rsp + 0x58]
jmp 0x14001f6ed
mov rsi, qword [rsp + 0x2a8]
mov rax, qword [rsp + 0x58]
shl r14, 4
mov qword [rsi + r14], rbx
mov qword [rsi + r14 + 8], r12
mov r14, qword [rsp + 0x110]
inc r14
mov qword [rsp + 0x110], r14
mov rcx, qword [rax + rbp + 0x58]
mov rax, qword [rax + rbp + 0x68]
lea rax, [rax + rax*2]
lea rbp, [rcx + rax*8]
cmp rcx, rbp
je 0x14001f771
lea rsi, [rcx + 0x18]
mov rbx, qword [rcx]
mov r12, qword [rcx + 8]
mov rcx, rbx
mov rdx, r12
mov r8, r15
mov r9, r13
call fcn.140041b9b
mov rcx, rsi
test al, al
je 0x14001f6ff
cmp r14, qword [rsp + 0x108]
je 0x14001f759
mov rax, qword [rsp + 0x100]
mov rcx, r14
shl rcx, 4
mov qword [rax + rcx], rbx
mov qword [rax + rcx + 8], r12
inc r14
mov qword [rsp + 0x110], r14
mov rcx, rsi
jmp 0x14001f6ff
mov r8d, 1
lea rcx, [rsp + 0x100]
mov rdx, r14
call fcn.1400785f1
jmp 0x14001f731
mov r12, qword [rsp + 0x100]
mov rsi, qword [rsp + 0x108]
mov rcx, qword [rsp + 0x58]
inc rdi
cmp rdi, qword [rsp + 0x1a8]
jne 0x14001f630
cmp r14, 1
je 0x140021c7c
mov rdi, rsi
mov rbp, qword [rsp + 0x88]
jmp 0x14001fa02
mov rdx, qword [rsp + 0x280]
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea rcx, [rsp + 0x210]
mov r8, qword [rsp + 0x208]
mov r9, r12
call fcn.140023c6d
mov rax, qword [rsp + 0x210]
add al, byte [rax]
add byte [rax - 0x73], cl
xor eax, 0x5da45
mov cl, 1
mov qword [rsp + 0x90], rcx
cmp rax, 5
mov r13, qword [rsp + 0x70]
mov r15, qword [rsp + 0xc8]
je case.default.0x14001f817
movsxd rax, dword [rsi + rax*4]
add rax, rsi
jmp rax
mov eax, 1
mov qword [rsp + 0x68], rax
mov al, 1
mov qword [rsp + 0x90], rax
mov rax, qword [rsp + 0x218]
mov qword [rsp + 0xb8], rax
jmp 0x14001f97d
mov rcx, qword [rax + 0xe0]
test rcx, rcx
je 0x14001fa64
mov r14, qword [rax + 0xd0]
lea rax, [rcx + rcx*4]
shl rax, 7
add rax, r14
mov qword [rsp + 0x58], rax
mov rdx, qword [r14 + 0x138]
test rdx, rdx
je 0x14001f8d3
cmp r13, qword [r14 + 0x140]
jne 0x14001f891
mov rcx, r15
mov r8, r13
call sub.msvcrt.dll_memcmp
test eax, eax
je 0x14002041d
mov rsi, qword [r14 + 0x88]
mov rax, qword [r14 + 0x98]
shl rax, 3
lea rbp, [rax + rax*2]
xor r12d, r12d
cmp rbp, r12
je 0x14001f915
cmp r13, qword [rsi + r12 + 8]
jne 0x14001f8cd
mov rdx, qword [rsi + r12]
mov rcx, r15
mov r8, r13
call sub.msvcrt.dll_memcmp
test eax, eax
je 0x14002041d
add r12, 0x18
jmp 0x14001f8aa
mov rsi, qword [r14 + 0x88]
mov rax, qword [r14 + 0x98]
shl rax, 3
lea rbp, [rax + rax*2]
xor r12d, r12d
cmp rbp, r12
je 0x14001f915
cmp r13, qword [rsi + r12 + 8]
jne 0x14001f90f
mov rdx, qword [rsi + r12]
mov rcx, r15
mov r8, r13
call sub.msvcrt.dll_memcmp
test eax, eax
je 0x14002041d
add r12, 0x18
jmp 0x14001f8ec
add r14, 0x280
cmp r14, qword [rsp + 0x58]
jne 0x14001f869
mov rbp, qword [rsp + 0x88]
jmp 0x14001fa64
mov rcx, r14
mov rsi, qword [rsp + 0x78]
mov rdx, rsi
mov rdi, qword [rsp + 0x58]
mov r8, rdi
call fcn.140023f7b
mov r8, qword [r14 + 0x50]
mov rdx, qword [rdi + 0x1f0]
mov rcx, rsi
mov r9b, 2
call fcn.140024326
mov al, 1
mov qword [rsp + 0x90], rax
xor eax, eax
mov qword [rsp + 0x68], rax
mov rdi, qword [rsp + 0x50]
mov r13, qword [rsp + 0x70]
mov rsi, qword [rsp + 0x80]
jmp 0x14001fde7
mov qword [rbp], 1
mov qword [rbp + 8], rax
mov rcx, rax
sub rax, rcx
mov rcx, qword [rsp + 0xe0]
dec rcx
cmp rax, rcx
jne 0x14001f9b4
mov qword [rbp], 0
mov qword [rsp + 0x1b8], rdi
mov qword [rsp + 0x1c0], rbx
mov qword [rsp + 0x1c8], rsi
mov qword [rsp + 0x1b0], 0
mov rdi, qword [rsp + 0x50]
mov rsi, r12
lea rcx, [rsp + 0x210]
call fcn.140023bec
mov rbx, qword [rsp + 0x60]
jmp 0x14001eb5a
mov r12d, 8
xor edi, edi
xor r14d, r14d
shl r14, 4
xor esi, esi
cmp r14, rsi
je 0x14001fa34
cmp r13, qword [r12 + rsi + 8]
jne 0x14001fa2e
mov rbx, qword [r12 + rsi]
mov rcx, r15
mov rdx, rbx
mov r8, r13
call sub.msvcrt.dll_memcmp
test eax, eax
je 0x140020710
add rsi, 0x10
jmp 0x14001fa08
test rdi, rdi
je 0x14001fa4a
mov rcx, qword [0x140095150]
xor edx, edx
mov r8, r12
call fcn.1400798d4
mov rax, qword [rsp + 0x280]
mov rax, qword [rax + 0x10]
mov rdi, qword [rax + 0x238]
mov rbx, qword [rax + 0x240]
or edi, ebx
bt edi, 0x10
mov rdi, qword [rsp + 0x50]
mov rbx, qword [rsp + 0x60]
jae 0x140021ac5
mov r13, qword [rsp + 0x70]
mov r15, qword [rsp + 0xc8]
mov rsi, qword [rsp + 0x80]
mov rcx, qword [rbp + 0x10]
cmp qword [rsp + 0x68], 1
je 0x14001fca2
xor ebx, ebx
add rcx, 0xa0
mov qword [rsp + 0x80], rsi
mov rdx, rsi
call fcn.140023634
test rax, rax
je 0x14001ff86
mov rsi, rax
test byte [rax + 0x261], 0x40
sete al
or bl, al
mov rdi, qword [rbp + 0x10]
je 0x140020010
mov eax, dword [rdi + 0x238]
or eax, dword [rdi + 0x240]
cmp qword [rsp + 0x80], r15
movzx ecx, byte [rsp + 0xb0]
mov edx, ecx
mov r8d, 1
cmove edx, r8d
test eax, 0x1000
cmove edx, ecx
mov dword [rsp + 0xb0], edx
mov rdi, qword [rsi + 0x1f0]
mov rdx, qword [rbp + 0x28]
cmp rdx, qword [rbp + 0x20]
jne 0x14001fb33
mov rcx, qword [rsp + 0x2b0]
call fcn.14000c029
mov rdx, qword [rbp + 0x28]
mov rax, qword [rbp + 0x18]
mov qword [rax + rdx*8], rdi
inc qword [rbp + 0x28]
mov rcx, rbp
mov rbx, qword [rsp + 0x78]
mov rdx, rbx
mov r8, rsi
call fcn.140023f7b
mov rdi, qword [rsi + 0x1f0]
mov rcx, qword [rbx + 0x38]
mov rdx, qword [rbx + 0x40]
mov r8, rdi
call fcn.14000df86
lea rcx, [rsp + 0x100]
mov rdx, rbx
mov r8, rax
mov r9, rdi
call fcn.140015e3e
cmp qword [rsp + 0x100], 0
je 0x14001fb98
xor eax, eax
mov rdi, qword [rsp + 0x50]
mov r8, qword [rsp + 0x60]
jmp 0x14001fbd8
mov rax, qword [rsp + 0x108]
mov rcx, qword [rsp + 0x110]
mov rcx, qword [rcx - 8]
mov rdx, qword [rax + 0x30]
cmp rdx, rcx
mov rdi, qword [rsp + 0x50]
mov r8, qword [rsp + 0x60]
jbe 0x140021c9b
mov rax, qword [rax + 0x20]
lea rcx, [rcx + rcx*4]
shl rcx, 4
cmp qword [rax + rcx + 0x40], 0
setne al
test rdi, rdi
mov r9, rdi
cmove r9, r13
mov ecx, dword [rsp + 0xb0]
and cl, 1
mov byte [rsp + 0x40], cl
mov byte [rsp + 0x38], al
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r8
mov byte [rsp + 0x30], 2
lea rbx, [rsp + 0x100]
mov rcx, rbx
mov rdx, rbp
mov r8, rsi
call fcn.14002614f
mov rcx, rbx
call fcn.140023bec
test dword [rsi + 0x260], 0x100002
je 0x14001fc48
mov rax, qword [rsi + 0x1f0]
mov qword [rsp + 0xb8], rax
mov eax, 2
jmp 0x14001fc52
inc qword [rsp + 0x80]
xor eax, eax
mov qword [rsp + 0x68], rax
test rdi, rdi
je 0x14001fc72
test r13, r13
je 0x14001fc72
mov rcx, qword [0x140095150]
xor edx, edx
mov r8, rdi
call fcn.1400798d4
mov rsi, qword [rsp + 0xf8]
mov rdx, qword [rsi + 0x10]
mov rax, qword [rsi + 0x18]
mov cl, 1
mov qword [rsp + 0x90], rcx
mov qword [rsp + 0xa0], rdx
cmp rax, rdx
jb 0x14001dd37
jmp 0x14001fed2
mov rax, qword [rcx + 0xa0]
mov rdx, 0xfffffffffffffd98
add rax, rdx
imul rcx, qword [rcx + 0xb0], 0x268
test rcx, rcx
je 0x1400228da
lea r8, [rax + 0x268]
add rcx, 0xfffffffffffffd98
mov rdx, qword [rsp + 0xb8]
cmp qword [rax + 0x458], rdx
mov rax, r8
jne 0x14001fcbe
test rdi, rdi
mov r9, rdi
cmove r9, r13
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rbx
mov byte [rsp + 0x40], 0
mov byte [rsp + 0x38], 1
mov byte [rsp + 0x30], 2
lea rcx, [rsp + 0x100]
mov rdx, rbp
call fcn.14002614f
mov rax, qword [rsp + 0x100]
cmp rax, 1
je 0x14001fd5a
cmp eax, 2
jne 0x140022a1f
lea rcx, [rsp + 0x100]
call fcn.140023bec
mov rax, qword [rsp + 0x368]
mov qword [rsp + 0xb8], rax
jmp 0x14001fde0
mov eax, 1
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x108]
mov qword [rsp + 0xb8], rax
add byte [rax - 0x77], cl
test byte [rax + rbp*2], ah
add eax, dword [rax]
add bl, ch
invalid
movzx eax, word [rdx]
cmp eax, 0x2d2d
je 0x14001fd9b
cmp r15, 1
je 0x14001f2de
cmp byte [rdx], 0x2d
jne 0x14001f2de
test r14, r14
mov r15, qword [rsp + 0xc8]
je 0x14001fdbe
test r13, r13
je 0x14001fdbe
mov rcx, qword [0x140095150]
xor edx, edx
mov r8, r14
call fcn.1400798d4
mov rsi, r12
mov r13, qword [rsp + 0x70]
mov r14, qword [rsp + 0xc0]
jmp 0x14001e359
lea rcx, [rsp + 0x1b0]
call fcn.140023bec
xor eax, eax
mov qword [rsp + 0x68], rax
mov qword [rsp + 0x80], rsi
test rdi, rdi
je 0x14001fe0a
test r13, r13
je 0x14001fe0a
mov rcx, qword [0x140095150]
xor edx, edx
mov r8, rdi
call fcn.1400798d4
mov rsi, qword [rsp + 0xf8]
mov rax, qword [rsi + 0x18]
jmp 0x14001e1a0
mov al, 1
mov dword [rsp + 0xb0], eax
jmp 0x14001f978
mov al, 1
mov qword [rsp + 0x90], rax
xor eax, eax
mov qword [rsp + 0x68], rax
jmp 0x14001f97d
mov ecx, 0xa
lea rdi, [rsp + 0x1b0]
mov rsi, rbx
rep movsq qword [rdi], qword [rsi]
mov rdi, qword [rsp + 0x50]
mov al, 1
mov qword [rsp + 0x90], rax
mov r13, qword [rsp + 0x70]
jmp 0x14001f9dd
mov eax, 9
jmp 0x14001fe8f
mov eax, 0xa
mov qword [rsp + 0x1b0], rax
mov al, 1
mov qword [rsp + 0x90], rax
mov rbp, qword [rsp + 0x88]
mov rdi, qword [rsp + 0x50]
mov r13, qword [rsp + 0x70]
mov r15, qword [rsp + 0xc8]
jmp 0x14001f9dd
xor eax, eax
mov qword [rsp + 0x68], rax
mov dword [rsp + 0xb0], 0
mov rdx, qword [rbp + 0x10]
mov bl, 1
xor r15d, r15d
mov rdi, qword [rsp + 0x68]
lea rsi, [rsp + 0x108]
mov rcx, rsi
call fcn.14001a41f
mov qword [rsi - 8], rbp
mov eax, dword [rsp + 0xb0]
and al, 1
mov byte [rsp + 0x28], al
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x20], rax
lea rdx, [rsp + 0x100]
mov rcx, qword [rsp + 0x98]
mov r8, rdi
mov r9, qword [rsp + 0xb8]
call fcn.140026d41
test bl, bl
jne 0x14001ff48
cmp qword [rsp + 0x58], 0
je 0x14001ff48
mov rcx, qword [0x140095150]
xor edx, edx
mov r8, r15
call fcn.1400798d4
mov rcx, rsi
call fcn.14001a608
movaps xmm6, xmmword [rsp + 0x3d0]
movaps xmm7, xmmword [rsp + 0x3e0]
movaps xmm8, xmmword [rsp + 0x3f0]
movaps xmm9, xmmword [rsp + 0x400]
add rsp, 0x418
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov rsi, qword [rbp + 0x10]
mov eax, dword [rsi + 0x238]
or eax, dword [rsi + 0x240]
bt eax, 0xe
jae 0x140020062
mov rdx, qword [rsp + 0x50]
test rdx, rdx
cmove rdx, r13
lea rdi, [rsp + 0x100]
mov rcx, rdi
mov r8, qword [rsp + 0x60]
call fcn.140036d60
cmp qword [rdi], 0
je 0x140020476
lea rdx, [rsp + 0x210]
mov qword [rdx], rsi
mov qword [rdx + 8], 0
lea r8, [0x14008be08]
lea rdi, [rsp + 0x100]
mov rcx, rdi
xor r9d, r9d
call fcn.14001741f
mov rcx, qword [rsp + 0x98]
mov rdx, rsi
mov r8, rdi
call fcn.140026a72
jmp 0x14002017a
mov rdx, qword [rsp + 0x50]
test rdx, rdx
cmove rdx, r13
lea rsi, [rsp + 0x100]
mov rcx, rsi
mov r8, qword [rsp + 0x60]
call fcn.140007750
cmp qword [rsi], 0
je 0x1400200dc
mov rax, qword [rsp + 0x110]
mov qword [rsp + 0x1c0], rax
movdqu xmm0, xmmword [rsp + 0x100]
movdqa xmmword [rsp + 0x1b0], xmm0
jmp 0x140020120
mov rax, qword [rsp + 0x50]
test rax, rax
mov rdx, rax
cmove rdx, r13
test bl, bl
mov rdi, qword [rsp + 0x60]
je 0x140020184
cmp byte [rsp + 0x90], 0
setne r9b
mov rcx, rbp
mov rsi, rdx
mov r8, rdi
call fcn.14002331e
mov rdx, rsi
test rax, rax
je 0x140020184
mov r14, qword [rbp + 0x10]
lea rsi, [rsp + 0x100]
mov rcx, rsi
mov r8, rdi
call fcn.140007750
mov rdi, qword [rsi]
test rdi, rdi
je 0x140021501
mov rbx, qword [rsp + 0x108]
mov rsi, qword [rsp + 0x110]
jmp 0x14002152d
mov rsi, qword [rsp + 0x108]
mov rbx, qword [rsp + 0x110]
mov rcx, rbx
call fcn.14007604d
mov r14, rax
mov r15, rdx
mov rcx, rax
mov rdx, rsi
mov r8, rbx
call sub.msvcrt.dll_memcpy
mov qword [rsp + 0x1b0], r14
mov qword [rsp + 0x1b8], r15
mov qword [rsp + 0x1c0], rbx
xor eax, eax
lea rsi, [rsp + 0x100]
mov qword [rsi], rax
mov rcx, qword [rbp + 0x10]
lea rdx, [rsp + 0xd0]
mov qword [rdx], rcx
mov qword [rdx + 8], rax
lea r8, [0x14008be08]
lea rbx, [rsp + 0x210]
mov rcx, rbx
xor r9d, r9d
call fcn.14001741f
mov qword [rsp + 0x20], rbx
lea r8, [rsp + 0x1b0]
mov rcx, qword [rsp + 0x98]
mov rdx, rdi
mov r9, rsi
call fcn.140025e75
mov rdi, qword [rsp + 0x50]
jmp 0x1400219a9
lea rsi, [rsp + 0x2e0]
mov rcx, rsi
mov qword [rsp + 0x208], rdx
mov r8, rdi
call fcn.140007750
mov rcx, qword [rsi]
mov rax, qword [rsi + 0x10]
test rcx, rcx
jne 0x1400201b3
mov rcx, qword [rsp + 0x2e8]
mov rdx, qword [rbp + 0x10]
mov r9, qword [rdx + 0xd0]
mov rdx, qword [rdx + 0xe0]
lea rdx, [rdx + rdx*4]
shl rdx, 7
add rdx, r9
lea r10, [rsp + 0x2c8]
mov qword [r10], rcx
mov qword [r10 + 8], rax
mov eax, 2
lea r8, [rsp + 0x278]
mov qword [r8 - 0x68], rax
mov qword [r8 - 0x40], rax
mov qword [r8 - 0x18], r9
mov qword [r8 - 0x10], rdx
mov qword [r8 - 8], r10
lea rsi, [rsp + 0x100]
lea rdx, [rsp + 0x210]
mov rcx, rsi
call fcn.14000e5d0
mov rsi, qword [rsi + 8]
test rsi, rsi
je 0x1400206f9
lea rbx, [rsp + 0x100]
mov rdi, qword [rbx]
movups xmm0, xmmword [rbx + 0x10]
movaps xmmword [rsp + 0x280], xmm0
call fcn.14000a81a
mov r15, rax
mov qword [rax], rdi
mov qword [rax + 8], rsi
movapd xmm0, xmmword [rsp + 0x280]
movupd xmmword [rax + 0x10], xmm0
lea rax, [rsp + 0xd0]
mov qword [rax], r15
mov qword [rax + 8], 4
mov qword [rax + 0x10], 1
lea rsi, [rsp + 0x210]
mov ecx, 0xd
mov rdi, rbx
rep movsq qword [rdi], qword [rsi]
mov eax, 1
mov qword [rsp + 0xc0], rax
lea rsi, [rsp + 0x168]
lea rdi, [rsp + 0x1b0]
mov qword [rsp + 0x78], rax
mov rcx, rdi
mov rdx, rbx
mov r8, rsi
call fcn.14000e5d0
mov r12, qword [rsp + 0x1b8]
test r12, r12
je 0x140020432
mov r14, qword [rsp + 0x1b0]
mov r13, qword [rsp + 0x1c0]
mov rbp, qword [rsp + 0x1c8]
mov rdx, qword [rsp + 0x78]
cmp rdx, qword [rsp + 0xd8]
je 0x140020333
mov rax, rdx
shl rax, 5
mov qword [r15 + rax], r14
mov qword [r15 + rax + 8], r12
mov qword [r15 + rax + 0x10], r13
mov qword [r15 + rax + 0x18], rbp
inc rdx
mov qword [rsp + 0x78], rdx
mov qword [rsp + 0xe0], rdx
dec qword [rsp + 0xc0]
mov rbp, qword [rsp + 0x88]
mov r13, qword [rsp + 0x70]
jmp 0x1400202a9
lea rcx, [rsp + 0xd0]
call fcn.14000a84e
mov rdx, qword [rsp + 0x78]
mov r15, qword [rsp + 0xd0]
jmp 0x1400202ef
mov rbx, rax
mov r14, rdx
cmp rdx, 4
jne 0x140021dfd
cmp dword [rbx], 0x706c6568
jne 0x140021dfd
mov rcx, qword [rbp + 0x10]
mov rax, qword [rcx + 0x238]
bt eax, 8
jb 0x140021dfd
mov rcx, qword [rcx + 0x240]
bt ecx, 8
jb 0x140021dfd
or eax, ecx
bt eax, 0x1b
jb 0x140021dfd
mov r9, qword [rsp + 0xa0]
sub r9, qword [rsp + 0x58]
lea rdi, [rsp + 0x100]
mov rcx, rdi
mov rdx, rbp
mov r8, qword [rsp + 0xc0]
call fcn.140023698
mov rax, qword [rdi]
cmp rax, 0xb
jne 0x140021d8c
mov rax, qword [rsp + 0x128]
mov qword [rsp + 0x1d0], rax
movdqu xmm0, xmmword [rsp + 0x108]
movups xmm1, xmmword [rsp + 0x118]
movaps xmmword [rsp + 0x1c0], xmm1
movdqa xmmword [rsp + 0x1b0], xmm0
mov rcx, qword [rsp + 0x98]
mov qword [rcx + 0x20], rax
movups xmmword [rcx + 0x10], xmm1
movdqu xmmword [rcx], xmm0
jmp 0x14002017a
mov rbx, qword [r14 + 0x40]
mov r13, qword [r14 + 0x50]
mov rbp, qword [rsp + 0x88]
jmp 0x140020726
mov r15, qword [rsp + 0xd0]
mov rsi, qword [rsp + 0xd8]
mov rdx, qword [rsp + 0x78]
cmp rdx, 0x15
mov qword [rsp + 0x2b8], rsi
jae 0x14002078d
cmp rdx, 1
jbe 0x140020df3
mov r8d, 1
mov rcx, r15
call fcn.140013830
jmp 0x140020dee
lea rsi, [rsp + 0x100]
mov rdi, qword [rsi + 8]
mov r14, qword [rsi + 0x10]
movabs r15, 0x1c9d3adb639f298e
mov rcx, r14
call fcn.14007604d
mov qword [rsp + 0x58], rdx
mov qword [rsp + 0x80], rax
mov rcx, rax
mov rdx, rdi
mov qword [rsp + 0xa8], r14
mov r8, r14
call sub.msvcrt.dll_memcpy
mov rcx, rsi
call fcn.140014f5f
lea rax, [rsp + 0x210]
mov ecx, 9
mov rdi, rax
rep movsq qword [rdi], qword [rsi]
mov qword [rax + 0x48], 0
mov rdx, qword [rsp + 0xf8]
mov rax, qword [rdx + 0x10]
mov rbp, qword [rdx + 0x18]
mov qword [rsp + 0xb0], rax
cmp rbp, rax
jae 0x140020602
mov rax, qword [rdx]
mov rcx, rbp
shl rcx, 5
lea r13, [rcx + rax]
add r13, 0x10
neg qword [rsp + 0xb0]
inc rbp
mov qword [rdx + 0x18], rbp
mov r12, qword [r13 - 0x10]
mov r14, qword [r13]
mov rax, qword [rsp + 0x88]
mov rsi, qword [rax + 0x10]
mov edi, dword [rsi + 0x238]
or edi, dword [rsi + 0x240]
test di, di
js 0x140020567
lea rcx, [rsp + 0x100]
mov rdx, r12
mov r8, r14
call fcn.140036d60
cmp qword [rsp + 0x100], 0
jne 0x1400216de
lea rsi, [rsp + 0x100]
mov rcx, rsi
mov rdx, r12
mov r8, r14
call fcn.140073a20
mov byte [rsp + 0x20], 0
lea r14, [rsp + 0x210]
mov rcx, r14
mov rdx, r15
mov r8, rsi
mov r9b, 2
call fcn.140026b3e
mov rcx, r14
mov rdx, r15
call fcn.14000c8d0
cmp rax, 1
jne 0x140022955
mov rax, qword [rsp + 0x240]
cmp rdx, rax
jae 0x1400227e5
movzx eax, di
shr eax, 0xf
mov rcx, qword [rsp + 0x230]
lea rdx, [rdx + rdx*4]
shl rdx, 4
mov byte [rcx + rdx + 0x49], al
add r13, 0x20
mov rax, qword [rsp + 0xb0]
add rax, rbp
inc rax
inc rbp
cmp rax, 1
mov rdx, qword [rsp + 0xf8]
jne 0x14002051c
mov r9, qword [rsp + 0xa8]
test r9, r9
mov r14, qword [rsp + 0x88]
mov r12, qword [rsp + 0x68]
mov r8, qword [rsp + 0x80]
je 0x14002065c
mov r15d, 0x811c9dc5
xor eax, eax
movabs rdx, 0x10000000000
add rdx, 0x1b3
movzx ecx, byte [r8 + rax]
xor r15, rcx
imul r15, rdx
inc rax
cmp r9, rax
jne 0x14002063d
xor r15, 0xff
imul r15, rdx
lea rax, [rsp + 0x118]
mov qword [rax - 0x18], r8
mov rcx, qword [rsp + 0x58]
mov qword [rax - 0x10], rcx
mov qword [rax - 8], r9
lea rsi, [rsp + 0x210]
mov ecx, 0xa
mov rdi, rax
rep movsq qword [rdi], qword [rsi]
mov qword [rax + 0x50], r15
lea rdx, [rsp + 0x100]
mov rdi, qword [rsp + 0x78]
mov rcx, rdi
call fcn.140026ce2
mov rdx, qword [r14 + 0x10]
lea rsi, [rsp + 0x108]
mov rcx, rsi
call fcn.14001a41f
mov qword [rsi - 8], r14
mov byte [rsp + 0x28], bl
mov qword [rsp + 0x20], rdi
lea rdx, [rsp + 0x100]
mov rcx, qword [rsp + 0x98]
mov r8, r12
mov r9, qword [rsp + 0xb8]
call fcn.140026d41
mov rcx, rsi
call fcn.14001a608
mov rdi, qword [rsp + 0x50]
mov r13, qword [rsp + 0x70]
jmp 0x1400219a9
mov r15d, 8
xor eax, eax
mov qword [rsp + 0x2b8], rax
xor edx, edx
jmp 0x140020df3
test rdi, rdi
je 0x140020726
mov rcx, qword [0x140095150]
xor edx, edx
mov r8, r12
call fcn.1400798d4
mov rcx, r13
call fcn.14007604d
mov rsi, rax
mov rdi, rdx
mov rcx, rax
mov rdx, rbx
mov r8, r13
call 0x1459c4629
add byte [rax - 0x77], cl
mov ah, 0x24
sbb byte [rdx], al
add byte [rax], al
mov qword [rsp + 0x220], rdi
mov qword [rsp + 0x228], r13
mov qword [rsp + 0x210], 0
mov rdi, qword [rsp + 0x50]
mov r13, qword [rsp + 0x70]
mov r15, qword [rsp + 0x218]
mov rsi, qword [rsp + 0x220]
mov r14, qword [rsp + 0x228]
jmp 0x140021e19
mov rax, rdx
shl rax, 4
movabs rcx, 0x7fffffffffffffe0
and rcx, rax
mov al, byte [0x1400951f8]
mov edx, 8
call fcn.140006dd0
test rax, rax
je 0x140022a45
mov r14, rax
mov al, byte [0x1400951f8]
mov ecx, 0x100
mov edx, 8
call fcn.140006dd0
test rax, rax
je 0x140022a58
lea rcx, [r15 + 0x40]
mov qword [rsp + 0x2a8], rcx
lea rcx, [r15 - 0x20]
mov qword [rsp + 0x2b0], rcx
mov ecx, 0x10
mov qword [rsp + 0x1a8], rcx
xor r12d, r12d
xor ebx, ebx
mov rdx, qword [rsp + 0x78]
mov qword [rsp + 0x68], r14
mov qword [rsp + 0x90], r15
mov r8, rdx
sub r8, rbx
mov rsi, rbx
shl rsi, 5
lea rcx, [r15 + rsi]
cmp r8, 2
jae 0x140020887
mov r9, rdx
mov rsi, r9
sub rsi, rbx
jb 0x14002290c
cmp r9, rdx
ja 0x14002290c
jae 0x1400208b0
cmp r8, 0xa
jae 0x1400208b0
lea rsi, [rbx + 0xa]
cmp rsi, rdx
cmovae rsi, rdx
mov qword [rsp + 0x2c0], rsi
sub rsi, rbx
jb 0x140022984
mov rdi, rax
cmp r8, 1
adc r8, 0
mov rdx, rsi
call fcn.140013830
mov rdx, qword [rsp + 0x78]
mov rax, rdi
jmp 0x1400208b8
movsd xmm0, qword [rcx]
movsd xmm1, qword [rcx + 0x20]
ucomisd xmm0, xmm1
ja 0x140020c8e
cmp r8, 2
jne 0x140020ca3
lea r9, [rbx + 2]
mov r8d, 2
jmp 0x140020831
mov qword [rsp + 0x2c0], r9
mov rcx, qword [rsp + 0x1a8]
cmp r12, rcx
jne 0x14002094c
mov r13, rbx
mov rbx, r12
mov r12, rax
mov r14, rcx
shl rcx, 5
mov al, byte [0x1400951f8]
mov edx, 8
call fcn.140006dd0
test rax, rax
je 0x14002299b
mov rdi, rax
lea rax, [r14 + r14]
mov qword [rsp + 0xb8], rax
shl r14, 4
mov rcx, rdi
mov rdx, r12
mov r8, r14
call sub.msvcrt.dll_memcpy
mov rcx, qword [0x140095150]
xor edx, edx
mov r8, r12
call fcn.1400798d4
mov rax, rdi
mov rcx, qword [rsp + 0xb8]
mov qword [rsp + 0x1a8], rcx
mov rdx, qword [rsp + 0x78]
mov r14, qword [rsp + 0x68]
mov r12, rbx
mov rbx, r13
mov r13, qword [rsp + 0x70]
mov rcx, r12
shl rcx, 4
mov qword [rax + rcx], rsi
mov qword [rax + rcx + 8], rbx
inc r12
mov rcx, r12
cmp r12, 2
mov qword [rsp + 0xc8], rax
jb 0x140020c78
mov r12, rcx
lea rsi, [rcx - 1]
mov rcx, rsi
shl rcx, 4
mov r11, qword [rax + rcx]
mov rcx, qword [rax + rcx + 8]
add rcx, r11
cmp rcx, rdx
je 0x1400209e0
mov r10, r12
shl r10, 4
mov r8, qword [r10 + rax - 0x20]
cmp r8, r11
jbe 0x1400209e0
cmp r12, 2
jbe 0x140020c78
lea rbx, [r12 - 3]
mov rcx, rbx
shl rcx, 4
mov rcx, qword [rax + rcx]
lea r9, [r8 + r11]
cmp rcx, r9
jbe 0x1400209f6
cmp r12, 3
jbe 0x140020c78
add r8, rcx
cmp qword [r10 + rax - 0x40], r8
jbe 0x1400209f6
jmp 0x140020c78
cmp r12, 3
jb 0x1400209fb
lea rbx, [r12 - 3]
mov rcx, rbx
shl rcx, 4
mov rcx, qword [rax + rcx]
cmp rcx, r11
jb 0x140020a00
lea rbx, [r12 - 2]
cmp r12, rbx
jbe 0x140022835
lea r8, [rbx + 1]
mov qword [rsp + 0xb8], r12
cmp r12, r8
jbe 0x14002286c
mov r9, rbx
shl r9, 4
mov rcx, qword [rax + r9 + 8]
shl r8, 4
mov r12, qword [rax + r8]
mov rdi, qword [rax + r8 + 8]
add rdi, r12
mov r14, rdi
sub r14, rcx
jb 0x1400228a8
mov qword [rsp + 0xf8], rbx
mov qword [rsp + 0xb0], rsi
cmp rdi, rdx
ja 0x1400228b9
lea rdx, [rax + r9]
mov qword [rsp + 0x80], rdx
mov r13, qword [rax + r9]
lea rdx, [rax + r8]
mov qword [rsp + 0xa8], rdx
lea rax, [rax + r8 + 8]
mov qword [rsp + 0xa0], rax
mov qword [rsp + 0x58], rcx
mov rsi, rcx
shl rsi, 5
add rsi, r15
mov rbp, r13
shl rbp, 5
lea rbx, [rsi + rbp]
shl rdi, 5
mov r15, r14
sub r15, r13
cmp r15, r13
jae 0x140020b4d
mov rbp, r15
shl rbp, 5
mov r14, qword [rsp + 0x68]
mov rcx, r14
mov rdx, rbx
mov r8, rbp
call sub.msvcrt.dll_memcpy
add rbp, r14
test r13, r13
jle 0x140020bd0
test r15, r15
jle 0x140020bd0
add rdi, qword [rsp + 0x2b0]
mov r15, qword [rsp + 0x90]
movsd xmm0, qword [rbx - 0x20]
movsd xmm1, qword [rbp - 0x20]
xor eax, eax
xor ecx, ecx
ucomisd xmm0, xmm1
setbe al
seta cl
shl rcx, 5
sub rbx, rcx
shl rax, 5
sub rbp, rax
ucomisd xmm0, xmm1
mov rax, rbp
cmova rax, rbx
movupd xmm0, xmmword [rax]
movupd xmm1, xmmword [rax + 0x10]
movupd xmmword [rdi + 0x10], xmm1
movupd xmmword [rdi], xmm0
cmp rbx, rsi
jbe 0x140020b45
add rdi, 0xffffffffffffffe0
cmp rbp, r14
ja 0x140020af4
mov rsi, rbx
jmp 0x140020bda
mov r15, qword [rsp + 0x68]
mov rcx, r15
mov rdx, rsi
mov r8, rbp
call sub.msvcrt.dll_memcpy
add rbp, r15
test r13, r13
jle 0x140020bdf
cmp r14, r13
mov r15, qword [rsp + 0x90]
jle 0x140020bd5
add rdi, r15
mov r14, qword [rsp + 0x68]
mov rdx, r14
mov r8, rdx
movsd xmm0, qword [rdx]
xor edx, edx
xor eax, eax
ucomisd xmm0, qword [rbx]
setbe dl
seta cl
mov r9, r8
cmova r9, rbx
movupd xmm0, xmmword [r9]
movupd xmm1, xmmword [r9 + 0x10]
movupd xmmword [rsi + 0x10], xmm1
movupd xmmword [rsi], xmm0
add rsi, 0x20
shl rdx, 5
add rdx, r8
cmp rdx, rbp
jae 0x140020bef
mov al, cl
shl rax, 5
add rbx, rax
cmp rbx, rdi
jb 0x140020b80
jmp 0x140020bef
mov rsi, rbx
jmp 0x140020be4
mov r14, qword [rsp + 0x68]
mov rdx, r14
jmp 0x140020bef
mov r14, qword [rsp + 0x68]
mov rdx, r14
mov r15, qword [rsp + 0x90]
sub rbp, rdx
mov rcx, rsi
mov r8, rbp
call sub.msvcrt.dll_memcpy
add r12, r13
mov rax, qword [rsp + 0xa8]
mov qword [rax], r12
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0xa0]
mov qword [rcx], rax
mov rcx, qword [rsp + 0x80]
lea rdx, [rcx + 0x10]
mov rax, qword [rsp + 0xf8]
not rax
mov r8, qword [rsp + 0xb8]
add r8, rax
shl r8, 4
call sub.msvcrt.dll_memmove
mov rcx, qword [rsp + 0xb0]
cmp rcx, 1
mov rbp, qword [rsp + 0x88]
mov r13, qword [rsp + 0x70]
mov rdx, qword [rsp + 0x78]
mov rax, qword [rsp + 0xc8]
ja 0x140020974
mov r12d, 1
mov rbx, qword [rsp + 0x2c0]
cmp rbx, rdx
jb 0x140020817
jmp 0x140020dcc
cmp r8, 2
jne 0x140020ce4
lea r9, [rbx + 2]
mov r8d, 2
jmp 0x140020d37
mov r9, qword [rsp + 0xc0]
add r9, rbx
add rsi, qword [rsp + 0x2a8]
mov r11d, 2
movapd xmm2, xmm1
movapd xmm3, xmm2
movsd xmm2, qword [rsi]
ucomisd xmm3, xmm2
ja 0x140020d26
lea r10, [r9 + r11]
inc r10
inc r11
add rsi, 0x20
cmp r10, 2
jne 0x140020cc0
jmp 0x140020d23
mov r9, qword [rsp + 0xc0]
add r9, rbx
add rsi, qword [rsp + 0x2a8]
mov r11d, 2
movapd xmm2, xmm1
movapd xmm3, xmm2
movsd xmm2, qword [rsi]
ucomisd xmm3, xmm2
jbe 0x140020d26
lea r10, [r9 + r11]
inc r10
inc r11
add rsi, 0x20
cmp r10, 2
jne 0x140020d01
mov r11, r8
lea r9, [r11 + rbx]
ucomisd xmm0, xmm1
mov r8, r11
jbe 0x140020831
cmp rbx, r9
ja 0x1400229ca
cmp r9, rdx
ja 0x1400229dc
cmp r8, 2
jb 0x140020831
mov rsi, r9
mov r11, r8
shr r11, 1
lea r10, [rbx + r8]
shl r10, 5
add r10, qword [rsp + 0x2b0]
mov r9, rcx
movups xmm0, xmmword [r9]
movups xmm1, xmmword [r9 + 0x10]
movaps xmmword [rsp + 0x110], xmm1
movaps xmmword [rsp + 0x100], xmm0
movups xmm0, xmmword [r10]
movups xmm1, xmmword [r10 + 0x10]
movups xmmword [r9 + 0x10], xmm1
movups xmmword [r9], xmm0
movapd xmm0, xmmword [rsp + 0x100]
movapd xmm1, xmmword [rsp + 0x110]
movupd xmmword [r10 + 0x10], xmm1
movupd xmmword [r10], xmm0
add r9, 0x20
add r10, 0xffffffffffffffe0
dec r11
jne 0x140020d6f
mov r9, rsi
jmp 0x140020831
mov rcx, qword [0x140095150]
xor edx, edx
mov r8, rax
call fcn.1400798d4
mov rcx, qword [0x140095150]
xor edx, edx
mov r8, r14
call fcn.1400798d4
mov rdx, qword [rsp + 0x78]
mov rbx, rdx
shl rbx, 5
lea rdi, [r15 + rbx]
mov rcx, rdx
mov rsi, rdx
call fcn.14000a64c
mov r8, rsi
mov qword [rsp + 0xd0], rax
mov qword [rsp + 0xd8], rdx
mov qword [rsp + 0xe0], 0
cmp rdx, rsi
jb 0x1400219f7
mov qword [rsp + 0x210], r15
mov rcx, qword [rsp + 0x2b8]
mov qword [rsp + 0x218], rcx
mov qword [rsp + 0x228], rdi
xor ecx, ecx
test r8, r8
je 0x140020ec9
lea rdx, [rsp + 0x108]
add r15, 0x20
lea r8, [rcx + rcx*2]
lea rax, [rax + r8*8]
cmp qword [r15 - 0x18], 0
je 0x140020ec6
lea r8, [r15 - 0x20]
movups xmm0, xmmword [r8]
movupd xmm1, xmmword [r8 + 0x10]
movapd xmmword [rsp + 0x110], xmm1
movaps xmmword [rsp + 0x100], xmm0
mov r8, qword [rdx + 0x10]
mov qword [rsp + 0x1c0], r8
movdqu xmm0, xmmword [rdx]
movdqa xmmword [rsp + 0x1b0], xmm0
mov qword [rax + 0x10], r8
movdqu xmmword [rax], xmm0
inc rcx
add r15, 0x20
add rax, 0x18
add rbx, 0xffffffffffffffe0
jne 0x140020e6c
jmp 0x140020ec9
mov rdi, r15
lea rsi, [rsp + 0x210]
mov qword [rsi + 0x10], rdi
mov qword [rsp + 0xe0], rcx
mov rcx, rsi
call fcn.140008a44
movdqu xmm0, xmmword [rsp + 0xd0]
movdqa xmmword [rsp + 0x350], xmm0
mov rax, qword [rsp + 0xe0]
mov qword [rsp + 0x360], rax
mov r8, qword [rsp + 0x2e0]
test r8, r8
je 0x140020f2d
cmp qword [rsp + 0x2e8], 0
je 0x140020f2d
mov rcx, qword [0x140095150]
xor edx, edx
call fcn.1400798d4
mov rax, qword [rsp + 0x360]
test rax, rax
je 0x140020fa9
mov rdx, qword [rsp + 0x350]
lea rax, [rax + rax*2]
lea r8, [rdx + rax*8]
lea rcx, [rsp + 0x390]
call fcn.140012e84
mov rdi, qword [rbp + 0x10]
lea rbx, [rsp + 0x100]
mov rcx, rbx
mov rdx, qword [rsp + 0x208]
mov r8, qword [rsp + 0x60]
call fcn.140007750
cmp qword [rbx], 0
je 0x14002102c
mov rax, qword [rsp + 0x110]
mov qword [rsp + 0x320], rax
movdqu xmm0, xmmword [rsp + 0x100]
movdqa xmmword [rsp + 0x310], xmm0
jmp 0x140021070
mov rsi, qword [rbp + 0x10]
cmp qword [rsi + 0xb0], 0
je 0x140020fde
mov rax, qword [rsi + 0x238]
or rax, qword [rsi + 0x240]
bt rax, 0x24
jae 0x140021690
cmp qword [rsi + 0xe0], 0
je 0x140021690
lea rdi, [rsp + 0x100]
mov rcx, rdi
mov rdx, qword [rsp + 0x208]
mov r8, qword [rsp + 0x60]
call fcn.140007750
cmp qword [rdi], 0
je 0x140021764
mov rax, qword [rsp + 0x110]
mov qword [rsp + 0x1c0], rax
movdqu xmm0, xmmword [rsp + 0x100]
movdqa xmmword [rsp + 0x1b0], xmm0
jmp 0x1400217a8
mov rbx, qword [rsp + 0x108]
mov r14, qword [rsp + 0x110]
mov rcx, r14
call fcn.14007604d
mov r15, rax
mov r12, rdx
mov rcx, rax
mov rdx, rbx
mov r8, r14
call sub.msvcrt.dll_memcpy
mov qword [rsp + 0x310], r15
mov qword [rsp + 0x318], r12
mov qword [rsp + 0x320], r14
mov rdx, qword [rsp + 0x390]
mov r8, qword [rsp + 0x3a0]
mov qword [rsp + 0x20], 4
lea r9, str._or
lea rcx, [rsp + 0x3a8]
call fcn.14000fa92
mov rax, qword [rbp + 0x10]
mov rbx, qword [rax + 0x148]
test rbx, rbx
je 0x1400210b5
add rax, 0x158
jmp 0x1400210bd
mov rbx, qword [rax + 0x40]
add rax, 0x50
mov r14, qword [rax]
mov rcx, r14
call fcn.14007604d
mov r15, rax
mov r12, rdx
mov rcx, rax
mov rdx, rbx
mov r8, r14
call sub.msvcrt.dll_memcpy
mov qword [rsp + 0x378], r15
mov qword [rsp + 0x380], r12
mov qword [rsp + 0x388], r14
mov rax, qword [rbp + 0x10]
lea rdx, [rsp + 0x3c0]
mov qword [rdx], rax
mov qword [rdx + 8], 0
lea r8, [0x14008be08]
lea rcx, [rsp + 0x338]
xor r9d, r9d
call fcn.14001741f
mov al, byte [0x1400951f8]
mov ecx, 0x18
mov edx, 8
call fcn.140006dd0
test rax, rax
je 0x140022a0e
mov r14, rax
lea r13, [rsp + 0x310]
mov rdx, qword [r13]
mov r8, qword [r13 + 0x10]
mov rcx, rax
call fcn.140007cb0
lea r12, [rsp + 0x378]
lea r15, [rsp + 0x210]
mov qword [r15], r12
lea rax, [0x140026795]
mov qword [r15 + 8], rax
mov qword [r15 + 0x10], r13
mov qword [r15 + 0x18], rax
lea rax, [0x1400804b8]
lea rdx, [rsp + 0x100]
mov qword [rdx], rax
mov eax, 2
mov qword [rdx + 8], rax
mov qword [rdx + 0x20], 0
mov qword [rdx + 0x10], rsi
mov qword [rdx + 0x18], rax
lea rbx, [rsp + 0x2c8]
mov rcx, rbx
call fcn.140007990
lea rsi, [rsp + 0x100]
mov bpl, 2
mov rcx, rsi
mov dl, 2
call fcn.14001703a
mov rcx, r15
mov rdx, rsi
mov r8, rdi
call fcn.1400176d1
lea rdi, [rsp + 0x218]
mov rcx, rdi
call fcn.14000a5e9
mov qword [rdi], r14
mov eax, 1
mov qword [rdi + 8], rax
mov qword [rdi + 0x10], rax
mov rax, qword [rdi + 0x18]
lea rdx, [rsp + 0x1b0]
mov qword [rdx + 0x20], rax
mov rax, qword [rdi - 8]
mov qword [rdx], rax
mov rax, qword [rdi]
mov qword [rdx + 8], rax
mov rax, qword [rdi + 8]
mov qword [rdx + 0x10], rax
mov rax, qword [rdi + 0x10]
mov qword [rdx + 0x18], rax
movaps xmm0, xmmword [r13]
movups xmmword [rsi + 7], xmm0
mov rax, qword [r13 + 0x10]
mov qword [rsi + 0x17], rax
movups xmm0, xmmword [rsi]
movaps xmmword [rsp + 0x280], xmm0
mov rax, qword [rsi + 0xf]
mov qword [rsp + 0x28f], rax
mov rax, qword [rsi + 0x17]
mov qword [rsp + 0x297], rax
movups xmm0, xmmword [rsp + 0x3a8]
movups xmmword [rsi + 7], xmm0
mov rax, qword [rsp + 0x3b8]
mov qword [rsi + 0x17], rax
movups xmm0, xmmword [rsi]
movaps xmmword [rsp + 0x2e0], xmm0
mov rax, qword [rsi + 0xf]
mov qword [rsp + 0x2ef], rax
mov rax, qword [rsi + 0x17]
mov qword [rsp + 0x2f7], rax
movups xmm0, xmmword [rbx]
movups xmmword [rsi + 7], xmm0
mov rax, qword [rbx + 0x10]
mov qword [rsi + 0x17], rax
movups xmm0, xmmword [rsi]
movaps xmmword [rsp + 0xd0], xmm0
mov rax, qword [rsi + 0xf]
mov qword [rsp + 0xdf], rax
mov rax, qword [rsi + 0x17]
mov qword [rsp + 0xe7], rax
movups xmm0, xmmword [rsp + 0x338]
movups xmmword [rsi + 7], xmm0
mov rax, qword [rsp + 0x348]
mov qword [rsi + 0x17], rax
movups xmm0, xmmword [rsi]
movaps xmmword [rdi - 8], xmm0
mov rax, qword [rsi + 0xf]
mov qword [rdi + 7], rax
mov rax, qword [rsi + 0x17]
mov qword [rdi + 0xf], rax
mov byte [rsi], 0
mov byte [rsi + 8], bpl
movups xmm0, xmmword [rsp + 0x28f]
movups xmmword [rsi + 0x18], xmm0
movaps xmm0, xmmword [rsp + 0x280]
movups xmmword [rsi + 9], xmm0
mov byte [rsi + 0x28], 0xb
mov byte [rsi + 0x30], bpl
movups xmm0, xmmword [rsp + 0x2ef]
movups xmmword [rsi + 0x40], xmm0
movaps xmm0, xmmword [rsp + 0x2e0]
movups xmmword [rsi + 0x31], xmm0
mov byte [rsi + 0x50], 0xa
mov byte [rsi + 0x58], bpl
movups xmm0, xmmword [rsp + 0xdf]
movups xmmword [rsi + 0x68], xmm0
movaps xmm0, xmmword [rsp + 0xd0]
movups xmmword [rsi + 0x59], xmm0
mov byte [rsi + 0x78], 0xf
mov byte [rsi + 0x80], bpl
movups xmm0, xmmword [rdi + 7]
movups xmmword [rsi + 0x90], xmm0
nop
add byte [rax], al
add byte [rsi + 0xf], ah
outsd dx, dword [rsi]
clc
movdqu xmmword [rsi + 0x81], xmm0
lea rcx, [rsp + 0x210]
lea r8, [rsp + 0x100]
call fcn.1400267a7
cmp qword [r12 + 8], 0
je 0x1400213b2
mov r8, qword [rsp + 0x378]
mov rcx, qword [0x140095150]
xor edx, edx
call fcn.1400798d4
lea rcx, [rsp + 0x390]
call fcn.14000a5e9
mov rdi, qword [rsp + 0x50]
mov r13, qword [rsp + 0x70]
jmp 0x140021817
mov rsi, qword [rbp + 0x10]
xor eax, eax
lea rdi, [rsp + 0x100]
mov qword [rdi], rax
lea rdx, [rsp + 0xd0]
mov qword [rdx], rsi
mov qword [rdx + 8], rax
lea r8, [0x14008be08]
lea rbx, [rsp + 0x210]
mov rcx, rbx
xor r9d, r9d
call fcn.14001741f
mov qword [rsp + 0x20], rbx
mov rcx, qword [rsp + 0x98]
mov rdx, rsi
lea r8, [rsp + 0x1b8]
mov r9, rdi
mov rdi, qword [rsp + 0x50]
call fcn.140025e75
jmp 0x1400219a9
add byte [rax], al
mov rcx, qword [rsp + 0x98]
mov rdx, rbp
xor r8d, r8d
call fcn.1400259eb
jmp 0x1400214a3
mov rsi, qword [rbp + 0x10]
lea rdx, [rsp + 0x210]
mov qword [rdx], rsi
xor cl, byte [rax - 0x39]
or byte [rax], al
add byte [rax], al
add byte [rbp + rcx*4 + 5], cl
movabs dword [0x24bc8d480006a9], eax
add dword [rax], eax
add byte [rax - 0x77], cl
stc
xor r9d, r9d
call fcn.14001741f
mov rcx, qword [rsp + 0x98]
mov rdx, rsi
lea r8, [rsp + 0x1b8]
jmp 0x14002186d
mov rcx, qword [rsp + 0x98]
mov rdx, rbp
xor r8d, r8d
call fcn.140025b48
lea rcx, [rsp + 0x1b0]
call fcn.140023bec
jmp 0x1400219a9
cmp qword [rbp], 0
setne al
mov dword [rsp + 0xa0], eax
je 0x1400214e4
mov rax, qword [rbp + 8]
mov rcx, qword [rsp + 0xf8]
dec qword [rcx + 0x18]
mov rcx, qword [rbp + 0x50]
sub rcx, rax
inc rcx
mov qword [rbp + 0x58], rcx
mov r15, qword [rsp + 0x1b8]
mov rsi, qword [rsp + 0x1c0]
mov r14, qword [rsp + 0x1c8]
jmp 0x140021e24
mov r15, qword [rsp + 0x108]
mov rsi, qword [rsp + 0x110]
mov rcx, rsi
call fcn.14007604d
mov rdi, rax
mov rbx, rdx
mov rcx, rax
mov rdx, r15
mov r8, rsi
call sub.msvcrt.dll_memcpy
mov rax, qword [rbp + 0x10]
lea rdx, [rsp + 0x2e0]
mov qword [rdx], rax
mov qword [rdx + 8], 0
lea r8, [0x14008be08]
lea rcx, [rsp + 0xd0]
xor r9d, r9d
call fcn.14001741f
mov al, byte [0x1400951f8]
mov ecx, 0x18
mov edx, 8
call fcn.140006dd0
test rax, rax
je 0x140022a0e
mov r12, rax
mov rcx, rax
mov rdx, rdi
mov r8, rsi
call fcn.140007cb0
lea r15, [rsp + 0x100]
mov rcx, r15
mov dl, 1
call fcn.14001703a
lea rcx, [rsp + 0x210]
mov rdx, r15
mov r8, r14
call fcn.1400176d1
lea r14, [rsp + 0x218]
mov rcx, r14
call fcn.14000a5e9
mov qword [r14], r12
mov eax, 1
mov qword [r14 + 8], rax
mov qword [r14 + 0x10], rax
mov rax, qword [r14 + 0x18]
lea rdx, [rsp + 0x1b0]
mov qword [rdx + 0x20], rax
mov rax, qword [r14 - 8]
mov qword [rdx], rax
mov rax, qword [r14]
mov qword [rdx + 8], rax
mov rax, qword [r14 + 8]
mov qword [rdx + 0x10], rax
mov rax, qword [r14 + 0x10]
mov qword [rdx + 0x18], rax
movups xmm0, xmmword [rsp + 0xd0]
movups xmmword [r15 + 7], xmm0
mov rax, qword [rsp + 0xe0]
mov qword [r15 + 0x17], rax
movups xmm0, xmmword [r15]
movaps xmmword [r14 - 8], xmm0
mov rax, qword [r15 + 0xf]
mov qword [r14 + 7], rax
mov rax, qword [r15 + 0x17]
mov qword [r14 + 0xf], rax
mov byte [r15], 1
mov al, 2
mov byte [r15 + 8], al
mov qword [r15 + 0x10], rdi
mov qword [r15 + 0x18], rbx
mov qword [r15 + 0x20], rsi
mov byte [r15 + 0x28], 0xe
mov word [r15 + 0x30], 0x101
mov byte [r15 + 0x50], 0xf
mov byte [r15 + 0x58], al
mov rax, qword [r14 + 7]
mov qword [r15 + 0x68], rax
mov rax, qword [r14 + 0xf]
mov qword [r15 + 0x70], rax
movdqa xmm0, xmmword [r14 - 8]
movdqu xmmword [r15 + 0x59], xmm0
lea rcx, [rsp + 0x210]
lea r8, [rsp + 0x100]
call fcn.1400266c4
jmp 0x140021977
lea rdi, [rsp + 0x100]
mov rcx, rdi
mov rdx, qword [rsp + 0x208]
mov r8, qword [rsp + 0x60]
call fcn.140007750
cmp qword [rdi], 0
je 0x1400218cc
mov rax, qword [rsp + 0x110]
mov qword [rsp + 0xe0], rax
movdqu xmm0, xmmword [rsp + 0x100]
movdqa xmmword [rsp + 0xd0], xmm0
jmp 0x140021910
lea rdx, [rsp + 0x1b0]
mov qword [rdx], rsi
mov qword [rdx + 8], 0
lea r8, [0x14008be08]
lea rdi, [rsp + 0x100]
mov rcx, rdi
xor r9d, r9d
call fcn.14001741f
mov rcx, qword [rsp + 0x98]
mov rdx, rsi
mov r8, rdi
call fcn.140026a72
lea rcx, [rsp + 0x210]
call fcn.14001330c
lea rcx, [rsp + 0x258]
call fcn.140022b14
cmp qword [rsp + 0x58], 0
mov rdi, qword [rsp + 0x50]
mov r13, qword [rsp + 0x70]
je 0x1400219a9
mov rcx, qword [0x140095150]
xor edx, edx
mov r8, qword [rsp + 0x80]
jmp 0x140021d82
mov rdi, qword [rsp + 0x108]
mov rbx, qword [rsp + 0x110]
mov rcx, rbx
call fcn.14007604d
mov r14, rax
mov r15, rdx
mov rcx, rax
mov rdx, rdi
mov r8, rbx
call sub.msvcrt.dll_memcpy
mov qword [rsp + 0x1b0], r14
mov qword [rsp + 0x1b8], r15
mov qword [rsp + 0x1c0], rbx
mov rax, qword [rbp + 0x10]
mov rdi, qword [rax + 0x148]
test rdi, rdi
je 0x1400217c0
add rax, 0x158
jmp 0x1400217c8
mov rdi, qword [rax + 0x40]
add rax, 0x50
mov rbx, qword [rax]
mov rcx, rbx
call fcn.14007604d
mov r14, rax
mov r15, rdx
mov rcx, rax
mov rdx, rdi
mov r8, rbx
call sub.msvcrt.dll_memcpy
lea r9, [rsp + 0x100]
mov qword [r9], r14
mov qword [r9 + 8], r15
or byte [rcx - 0x77], cl
pop rcx
adc byte [rax - 0x73], cl
mov word [rax + rdx], fs
add al, byte [rax]
add byte [rbp + rcx*4 - 0x7c], cl
and al, 0xb0
add dword [rax], eax
add byte [rax - 0x77], cl
bnd call fcn.14002687f
mov rdi, qword [rsp + 0x50]
lea rcx, [rsp + 0x350]
call fcn.14000a5e9
jmp 0x14002197c
mov r9, rdi
mov rdi, qword [rsp + 0x50]
call fcn.1400245a8
jmp 0x1400219a9
sub al, byte [rcx]
add byte [rax], al
mov rdi, qword [rsp + 0x108]
mov rbx, qword [rsp + 0x110]
mov rcx, rbx
call fcn.14007604d
mov r14, rax
mov r15, rdx
mov rcx, rax
mov rdx, rdi
mov r8, rbx
call sub.msvcrt.dll_memcpy
mov qword [rsp + 0xd0], r14
mov qword [rsp + 0xd8], r15
mov qword [rsp + 0xe0], rbx
xor eax, eax
lea rdi, [rsp + 0x100]
mov qword [rdi], rax
mov rcx, qword [rbp + 0x10]
lea rdx, [rsp + 0x2e0]
mov qword [rdx], rcx
mov qword [rdx + 8], rax
lea r8, [0x14008be08]
lea rbx, [rsp + 0x1b0]
mov rcx, rbx
xor r9d, r9d
call fcn.14001741f
mov qword [rsp + 0x20], rbx
lea rcx, [rsp + 0x210]
lea r8, [rsp + 0xd0]
mov rdx, rsi
mov r9, rdi
call fcn.140025e75
lea rcx, [rsp + 0x350]
call fcn.14000a5e9
mov rdi, qword [rsp + 0x50]
mov rax, qword [rsp + 0x230]
mov rcx, qword [rsp + 0x98]
mov qword [rcx + 0x20], rax
movdqu xmm0, xmmword [rsp + 0x210]
movups xmm1, xmmword [rsp + 0x220]
movups xmmword [rcx + 0x10], xmm1
movdqu xmmword [rcx], xmm0
test rdi, rdi
je 0x14001ff50
test r13, r13
je 0x14001ff50
xor r15d, r15d
mov rcx, qword [0x140095150]
xor edx, edx
mov r8, rdi
call fcn.1400798d4
test r15, r15
je 0x14001ff50
test rsi, rsi
je 0x14001ff50
mov rcx, qword [0x140095150]
xor edx, edx
mov r8, r15
call fcn.1400798d4
jmp 0x14001ff50
lea rsi, [rsp + 0xd0]
mov rcx, rsi
xor edx, edx
call fcn.140008953
mov rax, qword [rsi]
mov rcx, qword [rsi + 0x10]
mov qword [rsp + 0x210], r15
mov rdx, qword [rsp + 0x2b8]
mov qword [rsp + 0x218], rdx
mov qword [rsp + 0x228], rdi
jmp 0x140020e58
mov rax, qword [rsp + 0x280]
mov rdx, qword [rax + 0x10]
lea rsi, [rsp + 0x2e0]
mov rcx, rsi
call fcn.14001a41f
mov rcx, qword [rsp + 0x78]
mov rax, qword [rcx + 0x20]
mov rcx, qword [rcx + 0x30]
lea rcx, [rcx + rcx*4]
shl rcx, 4
add rcx, rax
lea rdx, [rsp + 0x100]
mov qword [rdx], rax
mov qword [rdx + 8], rcx
lea rax, [rsp + 0x280]
mov qword [rdx + 0x10], rax
mov qword [rdx + 0x18], rsi
lea rcx, [rsp + 0xd0]
call fcn.140012b00
lea rsi, [rsp + 0x100]
mov rcx, rsi
mov rdx, rdi
mov r8, r12
call fcn.140007750
mov rdi, qword [rsi]
test rdi, rdi
je 0x140021afc
mov rbx, qword [rsp + 0x108]
mov rsi, qword [rsp + 0x110]
jmp 0x140021b28
lea rbx, [rsp + 0x100]
mov rcx, rbx
mov rdx, r15
mov r8, r13
call fcn.140007750
mov rbx, qword [rbx]
test rbx, rbx
je 0x140021ca9
mov r14, qword [rsp + 0x108]
mov r15, qword [rsp + 0x110]
jmp 0x140021cd5
mov r14, qword [rsp + 0x108]
mov rsi, qword [rsp + 0x110]
mov rcx, rsi
call fcn.14007604d
mov rdi, rax
mov rbx, rdx
mov rcx, rax
mov rdx, r14
mov r8, rsi
call sub.msvcrt.dll_memcpy
mov r13, qword [rsp + 0x70]
mov qword [rsp + 0x1b0], 1
pxor xmm0, xmm0
movdqu xmmword [rsp + 0x1b8], xmm0
lea rdx, [rsp + 0x100]
mov qword [rdx + 0x30], 0x20
mov byte [rdx + 0x38], 3
xor eax, eax
mov qword [rdx], rax
mov qword [rdx + 0x10], rax
lea rax, [rsp + 0x1b0]
mov qword [rdx + 0x20], rax
lea rax, [0x14007fa50]
mov qword [rdx + 0x28], rax
mov rcx, qword [rsp + 0x58]
call fcn.14000d69d
test al, al
jne 0x140022aa0
movups xmm0, xmmword [rsp + 0x1b0]
movups xmmword [rsp + 0x248], xmm0
mov rax, qword [rsp + 0x1c0]
mov qword [rsp + 0x258], rax
mov qword [rsp + 0x218], rdi
mov qword [rsp + 0x220], rbx
mov qword [rsp + 0x228], rsi
movdqu xmm0, xmmword [rsp + 0xd0]
add byte [rax], al
movdqu xmmword [rsp + 0x230], xmm0
mov rax, qword [rsp + 0xe0]
mov qword [rsp + 0x240], rax
mov qword [rsp + 0x210], 4
lea rcx, [rsp + 0x2e0]
call fcn.14001a608
lea rdi, [rsp + 0x248]
mov rsi, qword [rdi - 0x18]
mov r9, qword [rdi - 8]
mov rbx, qword [rbp + 0x10]
mov r14, qword [rdi - 0x10]
lea rdx, [rsp + 0x1b0]
mov qword [rdx], rbx
mov qword [rdx + 8], 0
lea r15, [rsp + 0x100]
mov rcx, r15
mov r8, rsi
call fcn.1400177bb
mov qword [rsp + 0x20], r15
mov rcx, qword [rsp + 0x98]
mov rdx, rbx
lea r8, [rsp + 0x218]
mov r9, rdi
mov rdi, qword [rsp + 0x50]
call fcn.1400243b5
test r14, r14
je 0x1400219a9
mov rcx, qword [0x140095150]
xor edx, edx
mov r8, rsi
jmp 0x140021d82
mov rbx, qword [r12]
mov r13, qword [r12 + 8]
test rsi, rsi
mov rbp, qword [rsp + 0x88]
jne 0x140020715
jmp 0x140020726
lea r8, str._home_user_.cargo_registry_src_index.crates.io_6f17d22bba15001f_indexmap_1.8.0_src_map_core_raw.rs
call fcn.1400355c0
ud2
mov r12, qword [rsp + 0x108]
mov r15, qword [rsp + 0x110]
mov rcx, r15
call fcn.14007604d
mov rbx, rax
mov r14, rdx
mov rcx, rax
mov rdx, r12
mov r8, r15
call sub.msvcrt.dll_memcpy
mov qword [rsp + 0x218], rbx
mov qword [rsp + 0x220], r14
mov qword [rsp + 0x228], r15
mov r13, qword [rsp + 0x70]
mov rax, qword [rsp + 0xa0]
shl rax, 5
mov r8, qword [rsp + 0xa8]
add r8, rax
lea r12, [rsp + 0x100]
mov rcx, r12
mov rdx, qword [rsp + 0xc0]
call fcn.140012c9c
mov rsi, qword [r12]
mov rax, qword [r12 + 0x10]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], rsi
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x20], rax
mov rcx, qword [rsp + 0x98]
mov rdx, rbp
mov r8, rbx
mov r9, r15
call fcn.140024725
cmp qword [r12 + 8], 0
je 0x140021d6d
mov rcx, qword [0x140095150]
xor edx, edx
mov r8, rsi
call fcn.1400798d4
test r14, r14
je 0x1400219a9
mov rcx, qword [0x140095150]
xor edx, edx
mov r8, rbx
call fcn.1400798d4
jmp 0x1400219a9
mov rdx, qword [rsp + 0x128]
mov qword [rsp + 0x1d0], rdx
movdqu xmm0, xmmword [rsp + 0x108]
movupd xmm1, xmmword [rsp + 0x118]
movapd xmmword [rsp + 0x1c0], xmm1
movdqa xmmword [rsp + 0x1b0], xmm0
movups xmm2, xmmword [rsp + 0x130]
lea rcx, [rsp + 0x210]
movups xmmword [rcx + 0x30], xmm2
movupd xmm2, xmmword [rsp + 0x140]
movupd xmmword [rcx + 0x40], xmm2
movdqu xmmword [rcx + 8], xmm0
movupd xmmword [rcx + 0x18], xmm1
mov qword [rcx + 0x28], rdx
mov qword [rcx], rax
call fcn.140023bec
mov rdi, qword [rsp + 0x50]
mov rcx, r14
call fcn.14007604d
mov r15, rax
mov rsi, rdx
mov rcx, rax
mov rdx, rbx
mov r8, r14
call sub.msvcrt.dll_memcpy
mov dword [rsp + 0xa0], 0
test rdi, rdi
mov qword [rsp + 0x58], rsi
je 0x140021e44
test r13, r13
je 0x140021e44
mov rcx, qword [0x140095150]
xor edx, edx
mov r8, rdi
call fcn.1400798d4
mov rdx, qword [rbp + 0x10]
test r15, r15
sete bl
je 0x14001fedb
mov byte [rsp + 0xa8], bl
mov rax, qword [rdx + 0xe0]
test rax, rax
je 0x140021ef0
mov rbp, qword [rdx + 0xd0]
lea rax, [rax + rax*4]
shl rax, 7
add rax, rbp
mov qword [rsp + 0x80], rax
mov rsi, qword [rbp + 0x50]
cmp r14, rsi
jne 0x140021ea4
mov rdi, qword [rbp + 0x40]
mov rcx, r15
mov rdx, rdi
mov r8, r14
call sub.msvcrt.dll_memcmp
test eax, eax
je 0x140021f07
lea rdi, [rbp + 0x280]
mov r13, qword [rbp + 0x58]
mov rax, qword [rbp + 0x68]
shl rax, 3
lea r12, [rax + rax*2]
xor ebx, ebx
cmp r12, rbx
je 0x140021ee3
cmp r14, qword [r13 + rbx + 8]
jne 0x140021edd
mov rdx, qword [r13 + rbx]
mov rcx, r15
mov r8, r14
call sub.msvcrt.dll_memcmp
test eax, eax
je 0x140021f03
add rbx, 0x18
jmp 0x140021ebd
mov rbp, rdi
cmp rdi, qword [rsp + 0x80]
jne 0x140021e85
lea rcx, [0x1400809ee]
lea r8, str._home_user_.cargo_registry_src_index.crates.io_6f17d22bba15001f_clap_3.1.0_src_parse_parser.rs
jmp 0x1400228e8
mov rdi, qword [rbp + 0x40]
mov rcx, rsi
call fcn.14007604d
mov r12, rdx
mov r13, rax
mov rcx, rax
mov rdx, rdi
mov r8, rsi
call sub.msvcrt.dll_memcpy
mov rax, qword [rsp + 0x88]
mov r14, qword [rax + 0x10]
mov rax, qword [r14 + 0x238]
or rax, qword [r14 + 0x240]
shr rax, 0x2c
and eax, 1
mov qword [rsp + 0x80], rax
mov ecx, 1
call fcn.14007604d
mov byte [rax], 0x20
mov qword [rsp + 0x2c8], rax
mov qword [rsp + 0x2d0], rdx
mov qword [rsp + 0x2d8], 1
mov eax, dword [r14 + 0x238]
or eax, dword [r14 + 0x240]
test al, 1
jne 0x14002203c
lea rdx, [rsp + 0x210]
mov qword [rdx], r14
xor eax, eax
mov qword [rdx + 8], rax
mov qword [rsp + 0x20], rax
mov byte [rsp + 0x28], 1
lea r8, [0x14008be08]
lea rdi, [rsp + 0x100]
mov rcx, rdi
xor r9d, r9d
call fcn.140017a68
mov rax, qword [rdi + 0x10]
test rax, rax
je 0x14002202f
mov rbx, qword [rsp + 0x100]
lea rax, [rax + rax*2]
lea rbp, [rbx + rax*8]
lea rdi, [rsp + 0x2c8]
mov rdx, qword [rbx]
mov r8, qword [rbx + 0x10]
mov rcx, rdi
call fcn.140078f1d
mov rdx, qword [rsp + 0x2d8]
cmp rdx, qword [rsp + 0x2d0]
jne 0x140022012
mov rcx, rdi
call fcn.140078f75
mov rdx, qword [rsp + 0x2d8]
mov rax, qword [rsp + 0x2c8]
mov byte [rax + rdx], 0x20
inc qword [rsp + 0x2d8]
add rbx, 0x18
cmp rbx, rbp
jne 0x140021fe1
lea rcx, [rsp + 0x100]
call fcn.14000a5e9
mov rbp, qword [r14 + 0xd0]
mov rax, qword [r14 + 0xe0]
shl rax, 7
lea rdi, [rax + rax*4]
test rdi, rdi
je 0x140022083
cmp qword [rbp + 0x50], rsi
jne 0x140022073
mov rbx, qword [rbp + 0x40]
mov rcx, rbx
mov rdx, r13
mov r8, rsi
call sub.msvcrt.dll_memcmp
test eax, eax
je 0x1400220b4
add rbp, 0x280
add rdi, 0xfffffffffffffd80
jmp 0x140022052
cmp qword [rsp + 0x2d0], 0
je 0x1400220a4
mov r8, qword [rsp + 0x2c8]
mov rcx, qword [0x140095150]
xor edx, edx
call fcn.1400798d4
mov rbp, qword [rsp + 0x88]
mov rdi, r13
jmp 0x1400226da
lea rdi, [rsp + 0x280]
mov rcx, rdi
mov rdx, rbx
mov r8, rsi
call fcn.140007cb0
mov rax, qword [rbp + 0x138]
test rax, rax
je 0x140022171
mov rcx, qword [rbp + 0x140]
mov qword [rsp + 0x1b0], rax
mov qword [rsp + 0x1b8], rcx
lea rax, [rsp + 0x1b0]
mov qword [rsp + 0x210], rax
lea rax, [0x1400740ce]
mov qword [rsp + 0x218], rax
lea rax, [0x140080b58]
lea r8, [rsp + 0x100]
mov qword [r8], rax
mov eax, 1
mov qword [r8 + 8], rax
mov qword [r8 + 0x20], 0
lea rcx, [rsp + 0x210]
mov qword [r8 + 0x10], rcx
mov qword [r8 + 0x18], rax
lea rdx, [0x14007fa50]
lea rcx, [rsp + 0x280]
call fcn.140036690
test al, al
jne 0x140022a6b
mov eax, dword [rbp + 0x278]
cmp eax, 0x110000
jne 0x140022182
jmp 0x1400221f7
mov eax, dword [rbp + 0x278]
cmp eax, 0x110000
je 0x140022294
mov dword [rsp + 0x1b0], eax
lea rax, [rsp + 0x1b0]
mov qword [rsp + 0x210], rax
lea rax, [fcn.14003af30]
mov qword [rsp + 0x218], rax
lea rax, [0x140080b88]
lea r8, [rsp + 0x100]
mov qword [r8], rax
mov eax, 1
mov qword [r8 + 8], rax
mov qword [r8 + 0x20], 0
lea rcx, [rsp + 0x210]
mov qword [r8 + 0x10], rcx
mov qword [r8 + 0x18], rax
lea rdx, [0x14007fa50]
lea rcx, [rsp + 0x280]
call fcn.140036690
test al, al
jne 0x140022a74
mov qword [rsp + 0x1b0], rdi
lea rax, [0x140026795]
mov qword [rsp + 0x1b8], rax
lea rax, [0x140080bb0]
lea rdx, [rsp + 0x100]
mov qword [rdx], rax
mov qword [rdx + 8], 2
mov qword [rdx + 0x20], 0
lea rax, [rsp + 0x1b0]
mov qword [rdx + 0x10], rax
mov qword [rdx + 0x18], 1
lea rcx, [rsp + 0x210]
call fcn.140007990
cmp qword [rsp + 0x288], 0
je 0x140022272
mov r8, qword [rsp + 0x280]
mov rcx, qword [0x140095150]
xor edx, edx
call fcn.1400798d4
mov rax, qword [rsp + 0x220]
mov qword [rsp + 0x290], rax
movdqu xmm0, xmmword [rsp + 0x210]
movdqa xmmword [rsp + 0x280], xmm0
lea rbx, [r14 + 0x148]
cmp qword [r14 + 0x148], 0
mov qword [rsp + 0x60], r12
je 0x140022391
mov qword [rsp + 0xd0], rbx
lea rax, [rsp + 0xd0]
mov qword [rsp + 0x100], rax
lea rax, [0x140008aac]
mov qword [rsp + 0x108], rax
lea rax, [rsp + 0x2c8]
mov qword [rsp + 0x110], rax
lea rax, [0x140026795]
mov qword [rsp + 0x118], rax
mov qword [rsp + 0x120], rdi
mov qword [rsp + 0x128], rax
lea rax, [0x140080bd0]
lea rdx, [rsp + 0x210]
mov qword [rdx], rax
mov eax, 3
mov qword [rdx + 8], rax
mov qword [rdx + 0x20], 0
lea rcx, [rsp + 0x100]
mov qword [rdx + 0x10], rcx
mov qword [rdx + 0x18], rax
lea rsi, [rsp + 0x1b0]
mov rcx, rsi
call fcn.140007990
mov r12, qword [rsi]
mov rsi, qword [rsp + 0x280]
mov r14, qword [rsp + 0x288]
test r12, r12
je 0x1400223a1
mov rax, qword [rsp + 0x1b8]
mov rdi, qword [rsp + 0x1c0]
test r14, r14
je 0x1400227da
mov rcx, qword [0x140095150]
xor edx, edx
mov r8, rsi
mov r14, rax
call fcn.1400798d4
mov rsi, r12
jmp 0x1400223a9
mov rsi, qword [rsp + 0x280]
mov r14, qword [rsp + 0x288]
mov rdi, qword [rsp + 0x290]
mov rcx, qword [rbp + 0x200]
mov rdx, qword [rbp + 0x208]
call fcn.14000c867
mov qword [rbp + 0x200], rsi
mov qword [rbp + 0x208], r14
mov qword [rbp + 0x210], rdi
xor eax, eax
cmp qword [rbx], 0
setne al
mov qword [rsp + 0x1b0], 1
pxor xmm0, xmm0
movdqu xmmword [rsp + 0x1b8], xmm0
lea rdx, [rsp + 0x1b0]
cmovne rdx, rbx
lea rcx, [rsp + 0x3a8]
mov qword [rcx], rdx
lea rdx, [0x140087e77]
lea r8, [0x14008be08]
cmovne r8, rdx
lea rdx, [rsp + 0x378]
mov qword [rdx], r8
mov qword [rdx + 8], rax
mov rax, qword [rbp + 0x40]
mov r8, qword [rbp + 0x50]
lea r9, [rsp + 0x338]
mov qword [r9], rax
mov qword [r9 + 8], r8
mov qword [rsp + 0x100], rcx
lea rax, [0x140008aac]
mov qword [rsp + 0x108], rax
mov qword [rsp + 0x110], rdx
lea rax, [0x1400740ce]
mov qword [rsp + 0x118], rax
mov qword [rsp + 0x120], r9
mov qword [rsp + 0x128], rax
lea rax, [0x140080bd0]
lea rdx, [rsp + 0x210]
mov qword [rdx], rax
mov eax, 3
mov qword [rdx + 8], rax
mov qword [rdx + 0x20], 0
lea rcx, [rsp + 0x100]
mov qword [rdx + 0x10], rcx
mov qword [rdx + 0x18], rax
lea rcx, [rsp + 0xd0]
call fcn.140007990
cmp qword [rsp + 0x1b8], 0
je 0x1400224e1
mov r8, qword [rsp + 0x1b0]
mov rcx, qword [0x140095150]
xor edx, edx
call fcn.1400798d4
mov rcx, qword [rbp + 0x148]
mov rdx, qword [rbp + 0x150]
call fcn.14000c867
mov rax, qword [rsp + 0xe0]
mov qword [rbp + 0x158], rax
movdqu xmm0, xmmword [rsp + 0xd0]
movdqu xmmword [rbp + 0x148], xmm0
mov rcx, rbp
call fcn.140009661
cmp qword [rsp + 0x2d0], 0
je 0x14002253d
mov r8, qword [rsp + 0x2c8]
mov rcx, qword [0x140095150]
xor edx, edx
call fcn.1400798d4
lea rbx, [rsp + 0x100]
mov rcx, rbx
call fcn.140014f5f
lea rax, [rsp + 0x210]
mov ecx, 9
mov rdi, rax
mov rsi, rbx
rep movsq qword [rdi], qword [rsi]
xor ecx, ecx
mov qword [rax + 0x48], rcx
pxor xmm0, xmm0
movdqu xmmword [rbx + 0x40], xmm0
movdqu xmmword [rbx + 0x20], xmm0
mov qword [rbx + 0x10], rbp
mov qword [rbx + 0x30], rcx
mov eax, 8
mov qword [rbx + 0x38], rax
mov qword [rbx + 0x18], rax
mov qword [rbx], rcx
movdqu xmmword [rbx + 0x50], xmm0
cmp byte [rsp + 0xa0], 0
je 0x1400225cb
mov rcx, qword [rsp + 0x88]
mov rax, qword [rcx + 0x50]
mov qword [rsp + 0x150], rax
movdqu xmm0, xmmword [rcx]
movdqu xmmword [rsp + 0x100], xmm0
mov rax, qword [rcx + 0x58]
mov qword [rsp + 0x158], rax
lea rsi, [rsp + 0xd0]
lea rdx, [rsp + 0x100]
lea r8, [rsp + 0x210]
mov rcx, rsi
mov r9, qword [rsp + 0xf8]
call fcn.14001dc0d
cmp byte [rsi + 0x20], 0x16
je 0x140022655
mov rax, qword [rsp + 0xf0]
mov qword [rsp + 0x1d0], rax
movdqu xmm0, xmmword [rsp + 0xd0]
movupd xmm1, xmmword [rsp + 0xe0]
movapd xmmword [rsp + 0x1c0], xmm1
movdqa xmmword [rsp + 0x1b0], xmm0
cmp byte [rsp + 0x80], 0
je 0x140022705
mov rcx, qword [rsp + 0xd0]
call fcn.140022b68
lea rcx, [rsp + 0x1b8]
call fcn.14000a5e9
lea rcx, [rsp + 0x100]
call fcn.140022ace
mov r12, qword [rbp + 0x130]
mov rsi, qword [rbp + 0x40]
mov rbx, qword [rbp + 0x50]
mov rcx, rbx
call fcn.14007604d
mov r14, rax
mov rbp, rdx
mov rcx, rax
mov rdx, rsi
mov r8, rbx
call sub.msvcrt.dll_memcpy
lea rax, [rsp + 0x118]
lea rsi, [rsp + 0x210]
mov ecx, 0xa
mov rdi, rax
rep movsq qword [rdi], qword [rsi]
mov qword [rax + 0x50], r12
mov qword [rax - 0x18], r14
mov qword [rax - 0x10], rbp
mov qword [rax - 8], rbx
lea rdx, [rsp + 0x100]
mov rcx, qword [rsp + 0x78]
call fcn.140026ce2
mov rbp, qword [rsp + 0x88]
mov rdi, r13
mov r12, qword [rsp + 0x60]
test r12, r12
je 0x1400226f0
mov rcx, qword [0x140095150]
xor edx, edx
mov r8, rdi
call fcn.1400798d4
mov rdx, qword [rbp + 0x10]
mov rdi, qword [rsp + 0x68]
mov bl, byte [rsp + 0xa8]
jmp 0x14001fee0
lea rsi, [rsp + 0x258]
movdqu xmm0, xmmword [rsp + 0xd0]
movupd xmm1, xmmword [rsp + 0xe0]
movapd xmmword [rsp + 0x2f0], xmm1
movdqa xmmword [rsp + 0x2e0], xmm0
mov bl, byte [rsp + 0x1d0]
mov eax, dword [rsp + 0x1d1]
mov dword [rsp + 0x310], eax
mov eax, dword [rsp + 0x1d4]
mov dword [rsp + 0x313], eax
lea rcx, [rsp + 0x100]
call fcn.140022ace
lea rcx, [rsp + 0x210]
call fcn.14001330c
mov rcx, rsi
call fcn.140022b14
cmp bl, 0x16
mov rbp, qword [rsp + 0x88]
mov rdi, r13
mov r12, qword [rsp + 0x60]
je 0x1400226da
movdqa xmm0, xmmword [rsp + 0x2e0]
movaps xmm1, xmmword [rsp + 0x2f0]
mov rdx, qword [rsp + 0x98]
movups xmmword [rdx + 0x10], xmm1
movdqu xmmword [rdx], xmm0
mov eax, dword [rsp + 0x310]
mov ecx, dword [rsp + 0x313]
mov dword [rdx + 0x21], eax
mov dword [rdx + 0x24], ecx
mov byte [rdx + 0x20], bl
test r12, r12
mov rsi, qword [rsp + 0x58]
jne 0x1400219be
jmp 0x1400219cf
mov rsi, r12
mov r14, rax
jmp 0x1400223a9
lea r8, str._home_user_.cargo_registry_src_index.crates.io_6f17d22bba15001f_indexmap_1.8.0_src_map.rs
mov rcx, rdx
mov rdx, rax
jmp 0x140021ca2
lea r8, str._home_user_.cargo_registry_src_index.crates.io_6f17d22bba15001f_clap_3.1.0_src_mkeymap.rs
jmp 0x140021ca2
lea rcx, [0x1400809ee]
lea r8, str._home_user_.cargo_registry_src_index.crates.io_6f17d22bba15001f_clap_3.1.0_src_parse_parser.rs
jmp 0x1400228e8
lea rcx, [0x1400809ee]
lea r8, str._home_user_.cargo_registry_src_index.crates.io_6f17d22bba15001f_clap_3.1.0_src_parse_parser.rs
jmp 0x1400228e8
lea r8, str._rustc_79e9716c980570bfd1f666e3b16ac583f0168962library_alloc_src_vecmod.rs
mov rdx, r12
jmp 0x1400228b2
lea rax, str.Index_out_of_bounds
lea rcx, [rsp + 0x100]
mov qword [rcx], rax
mov qword [rcx + 8], 1
lea rax, [0x14008be08]
mov qword [rcx + 0x10], rax
xorpd xmm0, xmm0
movupd xmmword [rcx + 0x18], xmm0
lea rdx, str._rustc_79e9716c980570bfd1f666e3b16ac583f0168962librarycore_src_slice_sort.rs
jmp 0x1400228a1
lea rax, str.Index_out_of_bounds
lea rcx, [rsp + 0x100]
mov qword [rcx], rax
mov qword [rcx + 8], 1
lea rax, [0x14008be08]
mov qword [rcx + 0x10], rax
xorpd xmm0, xmm0
shl byte [rsi + 0xf], 0x11
sbb byte [r8 - 0x73], cl
adc eax, 0x65c5f
call fcn.1400352b0
ud2
lea r8, str._rustc_79e9716c980570bfd1f666e3b16ac583f0168962librarycore_src_slice_sort.rs
mov rdx, rdi
call fcn.140036af0
ud2
lea r8, str._rustc_79e9716c980570bfd1f666e3b16ac583f0168962librarycore_src_slice_sort.rs
mov rcx, rdi
call fcn.1400360b0
ud2
lea rcx, [0x1400809ee]
lea r8, str._home_user_.cargo_registry_src_index.crates.io_6f17d22bba15001f_clap_3.1.0_src_parse_parser.rs
jmp 0x1400228e8
lea rcx, [0x1400809ee]
lea r8, str._home_user_.cargo_registry_src_index.crates.io_6f17d22bba15001f_clap_3.1.0_src_parse_parser.rs
mov edx, 0x63
call fcn.1400393a0
ud2
lea rcx, str.internal_error:_entered_unreachable_code
lea r8, str._home_user_.cargo_registry_src_index.crates.io_6f17d22bba15001f_clap_3.1.0_src_parse_parser.rs
mov edx, 0x28
jmp 0x1400229c3
lea rcx, str.assertion_failed:_end___start__end___len
lea r8, str._rustc_79e9716c980570bfd1f666e3b16ac583f0168962librarycore_src_slice_sort.rs
mov edx, 0x2c
jmp 0x1400229c3
lea r8, [rsp + 0x100]
mov qword [r8], rsi
lea rax, str._home_user_.cargo_registry_src_index.crates.io_6f17d22bba15001f_os_str_bytes_6.0.0_src_raw_str.rs
mov qword [rsp + 0x20], rax
lea rcx, [0x140087614]
lea r9, [0x14007fb50]
mov edx, 0x11
call fcn.140037a80
ud2
lea rcx, str.just_inserted
lea r8, str._home_user_.cargo_registry_src_index.crates.io_6f17d22bba15001f_clap_3.1.0_src_parse_parser.rs
mov edx, 0xd
jmp 0x1400228ed
lea rcx, [0x140080db1]
lea r8, [0x140080df8]
mov edx, 0x45
call fcn.14003f2da
ud2
lea r8, str._rustc_79e9716c980570bfd1f666e3b16ac583f0168962librarycore_src_slice_sort.rs
mov rcx, rbx
mov rdx, qword [rsp + 0x2c0]
jmp 0x1400228b2
lea rcx, str.called__Option::unwrap____on_a__None__value_home_user_.cargo_registry_src_index.crates.io_6f17d22bba15001f_winapi_util_0.1.5_src_win.rs
lea r8, str._rustc_79e9716c980570bfd1f666e3b16ac583f0168962librarycore_src_slice_sort.rs
mov edx, 0x2b
jmp 0x1400229c3
lea rcx, str.assertion_failed:_mid___self.len__
lea r8, str._home_user_.cargo_registry_src_index.crates.io_6f17d22bba15001f_os_str_bytes_6.0.0_src_raw_str.rs
mov edx, 0x23
call fcn.140036450
ud2
lea r8, str._rustc_79e9716c980570bfd1f666e3b16ac583f0168962librarycore_src_slice_sort.rs
mov rcx, rbx
mov rdx, r9
jmp 0x1400228b2
lea r8, str._rustc_79e9716c980570bfd1f666e3b16ac583f0168962librarycore_src_slice_sort.rs
mov rcx, r9
jmp 0x1400228c3
lea rcx, str.internal_error:_entered_unreachable_code
lea r8, str._home_user_.cargo_registry_src_index.crates.io_6f17d22bba15001f_clap_3.1.0_src_parse_parser.rs
jmp 0x140022902
mov rcx, r15
mov rdx, r12
mov r8, r13
call fcn.140041da5
ud2
mov ecx, 8
mov edx, 0x18
call fcn.1400072b0
ud2
lea rcx, str.internal_error:_entered_unreachable_code
lea r8, str._home_user_.cargo_registry_src_index.crates.io_6f17d22bba15001f_clap_3.1.0_src_parse_parser.rs
jmp 0x140022902
lea rcx, [0x1400809ee]
lea r8, str._home_user_.cargo_registry_src_index.crates.io_6f17d22bba15001f_clap_3.1.0_src_parse_parser.rs
jmp 0x1400228e8
lea rcx, str.called__Option::unwrap____on_a__None__value_home_user_.cargo_registry_src_index.crates.io_6f17d22bba15001f_winapi_util_0.1.5_src_win.rs
lea r8, str._rustc_79e9716c980570bfd1f666e3b16ac583f0168962librarycore_src_slice_sort.rs
jmp 0x1400229a9
lea rcx, str.called__Option::unwrap____on_a__None__value_home_user_.cargo_registry_src_index.crates.io_6f17d22bba15001f_winapi_util_0.1.5_src_win.rs
lea r8, str._rustc_79e9716c980570bfd1f666e3b16ac583f0168962librarycore_src_slice_sort.rs
jmp 0x1400229a9
lea rax, [0x140080b68]
jmp 0x140022a7b
lea rax, [0x140080b98]
mov qword [rsp + 0x20], rax
lea rcx, str.called__Result::unwrap____on_an__Err__value
lea r9, [0x14007fb30]
lea r8, [rsp + 0x338]
mov edx, 0x2b
add byte [rax], al
add cl, ch
scasb al, byte [rdi]
invalid
invalid
invalid
lea rax, [0x14007fab8]
mov qword [rsp + 0x20], rax
lea rcx, str.a_Display_implementation_returned_an_error_unexpectedly
lea r9, [0x14007fb30]
lea r8, [rsp + 0x338]
mov edx, 0x37
jmp 0x14002294e
ud2
nop
add rsp, 0x848
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
shr al, cl
in eax, dx
pop rsp
add eax, 0xfe9de900
invalid
popfq
invalid
invalid
jmp 0x140023a89
adc dl, byte [0x112333c47]
call fcn.1400798d4
add rsi, 0x38
cmp qword [rsi + 8], 0
je case.0x140023c0b.1
mov r8, qword [rsi]
mov rcx, qword [0x140095150]
xor edx, edx
add rsp, 0x20
pop rsi
jmp fcn.1400798d4
nop
add rsp, 0x20
pop rsi
ret