Function at 0x1400aa5f0
Capabilities:
Create process on windows
Get common file path
Query environment variable

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x638
movdqa xmmword [rsp + 0x620], xmm6
mov qword [rsp + 0x1c0], r8
mov qword [rsp + 0x118], rcx
movzx eax, byte [rdx + 0x68]
mov qword [rsp + 0x50], rdx
mov r13, qword [rdx + 0x60]
test al, al
jne 0x1400aa646
test r13, r13
jne 0x1400aa646
mov qword [rsp + 0x1d8], 0
xor r15d, r15d
jmp 0x1400ab326
mov qword [rsp + 0x120], 0
mov qword [rsp + 0x130], 0
test al, al
jne 0x1400aa892
call sub.kernel32.dll_GetEnvironmentStringsW
test rax, rax
je 0x1400adeac
mov qword [rsp + 0x68], r13
lea rdi, [rsp + 0x140]
lea r14, [rsp + 0x210]
lea rsi, [rsp + 0x80]
mov qword [rsp + 0x78], rax
mov r15, rax
nop dword [rax]
cmp word [r15], 0
je 0x1400aa883
mov r13, r15
mov rcx, 0xfffffffffffffffe
xor edx, edx
nop word [rax + rax]
mov rbx, rdx
mov rax, rcx
inc rdx
add rcx, 2
cmp word [r13 + rbx*2], 0
jne 0x1400aa6c0
lea r15, [rdx*2]
add r15, r13
cmp rbx, 1
je 0x1400aa6a0
test rbx, rbx
je 0x1400adddd
xor ebp, ebp
nop word cs:[rax + rax]
cmp word [r13 + rbp*2 + 2], 0x3d
je 0x1400aa720
inc rbp
add rax, 0xfffffffffffffffe
jne 0x1400aa700
jmp 0x1400aa6a0
lea r8, [rbp + 1]
cmp rbp, rbx
jae 0x1400addf5
mov rcx, rdi
mov rdx, r13
call fcn.14008a800
add rbp, 2
mov r8, rbx
sub r8, rbp
jb 0x1400ade0f
lea rdx, [rbp*2]
add rdx, r13
mov rcx, r14
call fcn.14008a800
mov r13, qword [rsp + 0x140]
mov r12, qword [rsp + 0x148]
movdqu xmm6, xmmword [rsp + 0x150]
mov rbx, qword [rsp + 0x210]
mov rbp, qword [rsp + 0x218]
lea rax, [rsp + 0x220]
movups xmm0, xmmword [rax]
movaps xmmword [rsp + 0x1a0], xmm0
movdqa xmmword [rsp + 0x610], xmm6
cmp byte [rsp + 0x618], 2
je 0x1400aa883
movq rax, xmm6
add rax, r13
mov qword [rsp + 0x140], r13
mov qword [rsp + 0x148], rax
mov word [rsp + 0x150], 0
mov rcx, rsi
mov rdx, rdi
call fcn.1400ae780
mov qword [rsp + 0x228], r13
mov qword [rsp + 0x230], r12
movdqu xmmword [rsp + 0x238], xmm6
movups xmm0, xmmword [rsp + 0x80]
movaps xmmword [rsp + 0x210], xmm0
mov rax, qword [rsp + 0x90]
mov qword [rsp + 0x220], rax
mov qword [rsp + 0x140], rbx
mov qword [rsp + 0x148], rbp
movdqa xmm0, xmmword [rsp + 0x1a0]
lea rax, [rsp + 0x150]
movdqu xmmword [rax], xmm0
mov rcx, rsi
lea rdx, [rsp + 0x120]
mov r8, r14
mov r9, rdi
call fcn.1400ae990
cmp byte [rsp + 0x98], 2
je 0x1400aa6a0
cmp qword [rsp + 0x88], 0
je 0x1400aa6a0
mov rcx, qword [rsp + 0x80]
mov edx, 1
call fcn.14000d2f0
jmp 0x1400aa6a0
mov rcx, qword [rsp + 0x78]
call sub.kernel32.dll_FreeEnvironmentStringsW
mov r13, qword [rsp + 0x68]
movabs rdx, 0x3ffffffffffffffe
mov rcx, qword [rsp + 0x50]
mov rax, qword [rcx + 0x50]
mov rbp, qword [rcx + 0x58]
xor esi, esi
test rax, rax
setne sil
cmove r13, rax
xor r15d, r15d
inc rdx
mov qword [rsp + 0xa0], rdx
jmp 0x1400aa8d2
xor eax, eax
test r13, r13
je 0x1400ab15b
test rsi, rsi
je 0x1400aa930
test r15, r15
jne 0x1400aa930
mov esi, 1
test rbp, rbp
je 0x1400aa93a
mov rdx, rbp
and rdx, 7
je 0x1400aa93f
mov rcx, rbp
and rcx, 0xfffffffffffffff8
mov r15, rax
nop word cs:[rax + rax]
mov r15, qword [r15 + 0x3d8]
dec rdx
jne 0x1400aa910
cmp rbp, 8
jae 0x1400aa950
jmp 0x1400aa98e
test rsi, rsi
jne 0x1400aa992
jmp 0x1400add67
mov r15, rax
jmp 0x1400aa98e
mov r15, rax
mov rcx, rbp
cmp rbp, 8
jb 0x1400aa98e
nop dword [rax + rax]
mov rax, qword [r15 + 0x3d8]
mov rax, qword [rax + 0x3d8]
mov rax, qword [rax + 0x3d8]
mov rax, qword [rax + 0x3d8]
mov rax, qword [rax + 0x3d8]
mov rax, qword [rax + 0x3d8]
mov rax, qword [rax + 0x3d8]
mov r15, qword [rax + 0x3d8]
add rcx, 0xfffffffffffffff8
jne 0x1400aa950
xor ebp, ebp
xor eax, eax
movzx ecx, word [r15 + 0x3d2]
mov r14, r15
mov r12, rbp
cmp rbp, rcx
jb 0x1400aa9d8
nop word cs:[rax + rax]
mov rcx, qword [r14 + 0x160]
test rcx, rcx
je 0x1400ad83a
inc rax
movzx r12d, word [r14 + 0x3d0]
mov r14, rcx
cmp r12w, word [rcx + 0x3d2]
jae 0x1400aa9b0
test rax, rax
je 0x1400aaa70
mov r15, qword [r14 + r12*8 + 0x3e0]
mov rcx, rax
dec rcx
je 0x1400aaa5e
mov rdx, rcx
and rdx, 7
je 0x1400aaa15
mov rcx, rdx
nop dword [rax]
mov r15, qword [r15 + 0x3d8]
dec rcx
jne 0x1400aaa00
not rdx
add rdx, rax
mov rcx, rdx
add rax, 0xfffffffffffffffe
cmp rax, 7
jb 0x1400aaa5e
nop
mov rax, qword [r15 + 0x3d8]
mov rax, qword [rax + 0x3d8]
mov rax, qword [rax + 0x3d8]
mov rax, qword [rax + 0x3d8]
mov rax, qword [rax + 0x3d8]
mov rax, qword [rax + 0x3d8]
mov rax, qword [rax + 0x3d8]
mov r15, qword [rax + 0x3d8]
add rcx, 0xfffffffffffffff8
jne 0x1400aaa20
xor ebp, ebp
jmp 0x1400aaa78
lea rbp, [r12 + 1]
mov r15, r14
dec r13
imul rax, r12, 0x38
lea rbx, [r14 + rax]
add rbx, 0x168
shl r12, 5
cmp byte [r14 + r12 + 0x18], 2
jne 0x1400aaaf0
mov rdi, qword [rsp + 0x120]
mov eax, 0
test rdi, rdi
je 0x1400aa8d2
mov r14, rbp
mov r9, qword [rbx]
mov rax, qword [rbx + 0x10]
mov rbp, qword [rsp + 0x128]
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x80]
mov rdx, rdi
mov r8, rbp
call fcn.1400afdf0
cmp qword [rsp + 0x80], 0
je 0x1400aacd1
xor eax, eax
mov rbp, r14
jmp 0x1400aa8d2
mov qword [rsp + 0x78], rsi
mov rsi, qword [rbx + 0x18]
mov rdi, qword [rbx + 0x28]
test rdi, rdi
mov qword [rsp + 0x60], rbp
je 0x1400aab2b
js 0x1400add84
movzx eax, byte [0x14014d230]
mov edx, 1
mov rcx, rdi
call fcn.14000d260
test rax, rax
jne 0x1400aab30
jmp 0x1400addb9
mov eax, 1
mov qword [rsp + 0x58], rax
mov rcx, rax
mov rdx, rsi
mov r8, rdi
call sub.msvcrt.dll_memcpy
movzx esi, byte [rbx + 0x30]
mov rdx, qword [rbx]
mov rbp, qword [rbx + 0x10]
mov ebx, 2
test rbp, rbp
mov qword [rsp + 0x68], r13
je 0x1400aabb0
cmp rbp, qword [rsp + 0xa0]
ja 0x1400add8e
mov r13, rbp
add r13, rbp
je 0x1400aabb0
mov qword [rsp + 0x70], rdi
mov rdi, rdx
movzx eax, byte [0x14014d230]
mov edx, 2
mov rcx, r13
call fcn.14000d260
test rax, rax
je 0x1400addcb
mov rbx, rax
mov rdx, rdi
mov rdi, qword [rsp + 0x70]
jmp 0x1400aabb3
xor r13d, r13d
add r14, r12
mov rcx, rbx
mov r8, r13
call sub.msvcrt.dll_memcpy
mov rax, qword [rsp + 0x58]
mov qword [rsp + 0x228], rax
mov qword [rsp + 0x230], rdi
mov qword [rsp + 0x238], rdi
mov byte [rsp + 0x240], sil
mov qword [rsp + 0x210], rbx
mov qword [rsp + 0x218], rbp
mov qword [rsp + 0x220], rbp
mov r13, qword [r14]
mov rsi, qword [r14 + 0x10]
test rsi, rsi
je 0x1400aac31
js 0x1400addaf
movzx eax, byte [0x14014d230]
mov edx, 1
mov rcx, rsi
call fcn.14000d260
mov r12, rax
test rax, rax
jne 0x1400aac37
jmp 0x1400add9d
mov r12d, 1
mov rcx, r12
mov rdx, r13
mov r8, rsi
call sub.msvcrt.dll_memcpy
movzx eax, byte [r14 + 0x18]
mov qword [rsp + 0x140], r12
mov qword [rsp + 0x148], rsi
mov qword [rsp + 0x150], rsi
mov byte [rsp + 0x158], al
lea rcx, [rsp + 0x80]
lea rdx, [rsp + 0x120]
lea r8, [rsp + 0x210]
lea r9, [rsp + 0x140]
call fcn.1400ae990
cmp byte [rsp + 0x98], 2
mov r13, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x78]
mov rbp, qword [rsp + 0x60]
je 0x1400aa8d0
cmp qword [rsp + 0x88], 0
je 0x1400aa8d0
mov rcx, qword [rsp + 0x80]
mov edx, 1
call fcn.14000d2f0
jmp 0x1400aa8d0
mov rax, qword [rsp + 0x88]
mov rdx, qword [rsp + 0x90]
mov rcx, qword [rsp + 0x98]
mov byte [rsp + 0x1f8], 0
test rdx, rdx
je 0x1400aae94
mov rax, qword [rax + rcx*8 + 0x3d8]
mov rcx, rdx
dec rcx
je 0x1400aadce
mov r8, rcx
and r8, 7
je 0x1400aad3e
mov rcx, r8
nop word [rax + rax]
movzx r9d, word [rax + 0x3d2]
mov rax, qword [rax + r9*8 + 0x3d8]
dec rcx
jne 0x1400aad20
not r8
add r8, rdx
mov rcx, r8
add rdx, 0xfffffffffffffffe
cmp rdx, 7
jb 0x1400aadce
nop dword [rax]
movzx edx, word [rax + 0x3d2]
mov rax, qword [rax + rdx*8 + 0x3d8]
movzx edx, word [rax + 0x3d2]
mov rax, qword [rax + rdx*8 + 0x3d8]
movzx edx, word [rax + 0x3d2]
mov rax, qword [rax + rdx*8 + 0x3d8]
movzx edx, word [rax + 0x3d2]
mov rax, qword [rax + rdx*8 + 0x3d8]
movzx edx, word [rax + 0x3d2]
mov rax, qword [rax + rdx*8 + 0x3d8]
movzx edx, word [rax + 0x3d2]
mov rax, qword [rax + rdx*8 + 0x3d8]
movzx edx, word [rax + 0x3d2]
mov rax, qword [rax + rdx*8 + 0x3d8]
movzx edx, word [rax + 0x3d2]
mov rax, qword [rax + rdx*8 + 0x3d8]
add rcx, 0xfffffffffffffff8
jne 0x1400aad50
movzx ecx, word [rax + 0x3d2]
dec rcx
mov qword [rsp + 0x1a0], rax
mov qword [rsp + 0x1a8], 0
mov qword [rsp + 0x1b0], rcx
lea rcx, [rsp + 0x210]
lea rdx, [rsp + 0x1a0]
lea r8, [rsp + 0x1f8]
call fcn.1400aff50
mov rax, qword [rsp + 0x260]
mov qword [rsp + 0x190], rax
movups xmm0, xmmword [rsp + 0x250]
movaps xmmword [rsp + 0x180], xmm0
movdqu xmm0, xmmword [rsp + 0x210]
movups xmm1, xmmword [rsp + 0x220]
movups xmm2, xmmword [rsp + 0x230]
movups xmm3, xmmword [rsp + 0x240]
movaps xmmword [rsp + 0x170], xmm3
movaps xmmword [rsp + 0x160], xmm2
movaps xmmword [rsp + 0x150], xmm1
movdqa xmmword [rsp + 0x140], xmm0
mov rdx, qword [rsp + 0x268]
mov rax, qword [rsp + 0x278]
movzx ecx, word [rdx + 0x3d2]
cmp rax, rcx
jae 0x1400aaed2
mov rcx, rdx
jmp 0x1400aaf09
mov qword [rsp + 0x140], rax
mov qword [rsp + 0x148], 0
mov qword [rsp + 0x150], rcx
lea rcx, [rsp + 0x210]
lea rdx, [rsp + 0x140]
lea r8, [rsp + 0x1f8]
call fcn.1400aff50
jmp 0x1400ab023
mov r8, qword [rsp + 0x270]
nop word [rax + rax]
mov rcx, qword [rdx + 0x160]
test rcx, rcx
je 0x1400aaf04
inc r8
movzx eax, word [rdx + 0x3d0]
mov rdx, rcx
cmp ax, word [rcx + 0x3d2]
jae 0x1400aaee0
jmp 0x1400aaf09
mov rax, r8
xor ecx, ecx
imul rdx, rax, 0x38
shl rax, 5
mov r8, qword [rcx + rdx + 0x198]
mov qword [rsp + 0xe0], r8
movups xmm0, xmmword [rcx + rdx + 0x168]
movups xmm1, xmmword [rcx + rdx + 0x178]
movups xmm2, xmmword [rcx + rdx + 0x188]
movaps xmmword [rsp + 0xd0], xmm2
movaps xmmword [rsp + 0xc0], xmm1
movaps xmmword [rsp + 0xb0], xmm0
mov r8, qword [rsp + 0x170]
mov qword [rcx + rdx + 0x198], r8
movaps xmm0, xmmword [rsp + 0x140]
movaps xmm1, xmmword [rsp + 0x150]
movaps xmm2, xmmword [rsp + 0x160]
movups xmmword [rcx + rdx + 0x188], xmm2
movups xmmword [rcx + rdx + 0x178], xmm1
movups xmmword [rcx + rdx + 0x168], xmm0
movups xmm0, xmmword [rcx + rax]
movups xmm1, xmmword [rcx + rax + 0x10]
lea rdx, [rsp + 0xe8]
movups xmmword [rdx + 0x10], xmm1
movups xmmword [rdx], xmm0
lea rdx, [rsp + 0x178]
movups xmm0, xmmword [rdx]
movups xmm1, xmmword [rdx + 0x10]
movups xmmword [rcx + rax], xmm0
movups xmmword [rcx + rax + 0x10], xmm1
mov rax, qword [rsp + 0x100]
mov qword [rsp + 0x260], rax
movaps xmm0, xmmword [rsp + 0xf0]
movaps xmmword [rsp + 0x250], xmm0
movdqa xmm0, xmmword [rsp + 0xb0]
movaps xmm1, xmmword [rsp + 0xc0]
movaps xmm2, xmmword [rsp + 0xd0]
movaps xmm3, xmmword [rsp + 0xe0]
movaps xmmword [rsp + 0x240], xmm3
movaps xmmword [rsp + 0x230], xmm2
movaps xmmword [rsp + 0x220], xmm1
movdqa xmmword [rsp + 0x210], xmm0
mov qword [rsp + 0x78], rsi
mov qword [rsp + 0x68], r13
mov rax, qword [rsp + 0x210]
mov qword [rsp + 0xa8], rax
mov rax, qword [rsp + 0x218]
mov qword [rsp + 0x58], rax
mov r12, qword [rsp + 0x228]
mov rdx, qword [rsp + 0x230]
movzx r13d, byte [rsp + 0x240]
mov rax, qword [rsp + 0x248]
mov qword [rsp + 0x138], rax
dec qword [rsp + 0x130]
mov rax, qword [rsp + 0x250]
mov qword [rsp + 0x70], rax
movzx ebx, byte [rsp + 0x260]
cmp byte [rsp + 0x1f8], 0
je 0x1400ab0db
mov rsi, rdx
test rbp, rbp
je 0x1400ade26
mov rax, qword [rdi + 0x3d8]
mov qword [rsp + 0x120], rax
dec rbp
mov qword [rsp + 0x128], rbp
mov qword [rax + 0x160], 0
mov edx, 8
mov rcx, rdi
call fcn.14000d2f0
mov rdx, rsi
mov eax, 0
cmp r13b, 2
mov r13, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x78]
mov rbp, r14
je 0x1400aa8d2
test rdx, rdx
je 0x1400ab109
mov edx, 1
mov rcx, r12
call fcn.14000d2f0
cmp qword [rsp + 0x58], 0
je 0x1400ab123
mov edx, 2
mov rcx, qword [rsp + 0xa8]
call fcn.14000d2f0
mov eax, 0
cmp bl, 2
je 0x1400aa8d2
mov eax, 0
cmp qword [rsp + 0x70], 0
je 0x1400aa8d2
mov edx, 1
mov rcx, qword [rsp + 0x138]
call fcn.14000d2f0
xor eax, eax
jmp 0x1400aa8d2
mov rax, qword [rsp + 0x130]
mov qword [rsp + 0x1f0], rax
movdqu xmm0, xmmword [rsp + 0x120]
movdqu xmmword [rsp + 0x1e0], xmm0
mov qword [rsp + 0x1d8], 1
movzx eax, byte [0x14014d230]
mov r12d, 4
mov ecx, 4
mov edx, 1
call fcn.14000d260
test rax, rax
je 0x1400ade43
mov rsi, rax
mov dword [rax], 0x48544150
add rax, 4
mov qword [rsp + 0xb0], rsi
mov qword [rsp + 0xb8], rax
mov word [rsp + 0xc0], 0
lea rcx, [rsp + 0x140]
lea rdx, [rsp + 0xb0]
call fcn.1400ae780
mov qword [rsp + 0x228], rsi
mov qword [rsp + 0x230], 4
mov qword [rsp + 0x238], 4
mov byte [rsp + 0x240], 0
movdqu xmm0, xmmword [rsp + 0x140]
movdqa xmmword [rsp + 0x210], xmm0
mov r15, qword [rsp + 0x150]
mov qword [rsp + 0x220], r15
mov rdi, qword [rsp + 0x210]
mov r14, qword [rsp + 0x1e0]
test r14, r14
je 0x1400ab2f4
mov qword [rsp + 0x68], rsi
mov r12, qword [rsp + 0x1e8]
lea rcx, [r14 + 0x168]
movzx r13d, word [r14 + 0x3d2]
imul rbx, r13, 0x38
mov rbp, 0xffffffffffffffff
nop word cs:[rax + rax]
test rbx, rbx
je 0x1400ab2c0
lea rsi, [rcx + 0x38]
mov r8, qword [rcx]
mov r9d, dword [rcx + 0x10]
mov dword [rsp + 0x20], 1
mov rcx, rdi
mov edx, r15d
call sub.kernel32.dll_CompareStringOrdinal
inc rbp
add rbx, 0xffffffffffffffc8
mov rcx, rsi
cmp eax, 3
je 0x1400ab280
cmp eax, 1
jne 0x1400ab2d7
jmp 0x1400ab2c3
mov rbp, r13
sub r12, 1
jb 0x1400ab7a0
mov r14, qword [r14 + rbp*8 + 0x3d8]
jmp 0x1400ab25a
cmp eax, 2
jne 0x1400adcd7
test r14, r14
je 0x1400ab2f9
shl rbp, 5
mov r15, qword [r14 + rbp]
mov rbx, qword [r14 + rbp + 0x10]
jmp 0x1400ab2fc
xor r15d, r15d
jmp 0x1400ab301
xor r15d, r15d
mov rsi, qword [rsp + 0x68]
mov edx, 1
mov rcx, rsi
call fcn.14000d2f0
cmp qword [rsp + 0x218], 0
je 0x1400ab326
mov edx, 2
mov rcx, rdi
call fcn.14000d2f0
mov rax, qword [rsp + 0x50]
mov r12, qword [rax + 0x40]
lea rdi, str.program_path_has_no_file_name
test r12, r12
je 0x1400ab38d
mov rdx, qword [rax + 0x30]
cmp r12, 4
jae 0x1400ab34e
lea rax, [0x1400b0490]
jmp 0x1400ab376
mov eax, dword [rdx]
bswap eax
xor ecx, ecx
cmp eax, 0x5c5c3f5c
setb cl
cmp eax, 0x5c5c3f5d
adc ecx, 0xffffffff
lea rcx, [0x1400b0480]
lea rax, [0x1400b0490]
cmove rax, rcx
mov qword [rsp + 0x68], rdx
movzx esi, byte [r12 + rdx - 1]
mov ecx, esi
call rax
test al, al
je 0x1400ab412
mov rax, qword [rsp + 0x118]
mov qword [rax], rdi
mov qword [rax + 0x10], 2
cmp qword [rsp + 0x1d8], 0
je 0x1400ab541
mov rcx, qword [rsp + 0x1e0]
test rcx, rcx
je 0x1400ab518
mov rdx, qword [rsp + 0x1e8]
mov rax, qword [rsp + 0x1f0]
mov qword [rsp + 0x218], 0
mov qword [rsp + 0x220], rcx
mov qword [rsp + 0x228], rdx
mov qword [rsp + 0x238], 0
mov qword [rsp + 0x240], rcx
mov qword [rsp + 0x248], rdx
mov ecx, 1
jmp 0x1400ab51c
cmp r12, 4
jb 0x1400ab47d
mov rdx, qword [rsp + 0x68]
movzx eax, byte [r12 + rdx - 4]
lea ecx, [rax - 0x41]
cmp cl, 0x1a
setb cl
shl cl, 5
or cl, al
cmp cl, 0x2e
jne 0x1400ab47d
movzx eax, byte [rdx + r12 - 3]
lea ecx, [rax - 0x41]
cmp cl, 0x1a
setb cl
shl cl, 5
or cl, al
cmp cl, 0x65
jne 0x1400ab47d
movzx eax, byte [rdx + r12 - 2]
lea ecx, [rax - 0x41]
cmp cl, 0x1a
setb cl
shl cl, 5
or cl, al
cmp cl, 0x78
jne 0x1400ab47d
lea eax, [rsi - 0x41]
cmp al, 0x1a
setb al
shl al, 5
or al, sil
cmp al, 0x65
sete al
jmp 0x1400ab47f
xor eax, eax
mov rdx, qword [rsp + 0x68]
lea rcx, [rdx + r12]
mov qword [rsp + 0x78], rcx
xor ecx, ecx
nop
cmp r12, rcx
je 0x1400ab573
movzx r8d, byte [rdx + rcx]
cmp r8d, 0x5c
je 0x1400ab4ad
inc rcx
cmp r8d, 0x2f
jne 0x1400ab490
test al, al
je 0x1400ab65b
lea rcx, [rsp + 0x210]
mov r8, r12
call fcn.140088850
mov rcx, qword [rsp + 0x210]
mov rax, qword [rsp + 0x218]
test rcx, rcx
je 0x1400ab72b
mov rdx, qword [rsp + 0x220]
mov qword [rsp + 0x210], rcx
mov qword [rsp + 0x218], rax
mov qword [rsp + 0x220], rdx
lea rcx, [rsp + 0x120]
lea rdx, [rsp + 0x210]
call fcn.1400b04a0
jmp 0x1400ac31b
xor ecx, ecx
xor eax, eax
mov qword [rsp + 0x210], rcx
mov qword [rsp + 0x230], rcx
mov qword [rsp + 0x250], rax
lea rcx, [rsp + 0x210]
call fcn.1400ae6d0
mov rax, qword [rsp + 0x1c0]
cmp dword [rax], 4
jb 0x1400ab557
mov rcx, qword [rax + 8]
call fcn.1400d0d2c
movaps xmm6, xmmword [rsp + 0x620]
add rsp, 0x638
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
xor r8d, r8d
lea rdi, str.nul_byte_found_in_provided_data
mov rax, rdx
jmp 0x1400ab59c
xor r8d, r8d
test cx, cx
je 0x1400ab38d
mov cx, 1
test r8w, r8w
jne 0x1400ab590
cmp rax, qword [rsp + 0x78]
je 0x1400ab777
movzx r11d, byte [rax]
test r11b, r11b
js 0x1400ab5bf
inc rax
jmp 0x1400ab623
mov r8d, r11d
and r8d, 0x1f
movzx r10d, byte [rax + 1]
and r10d, 0x3f
cmp r11b, 0xdf
jbe 0x1400ab615
movzx r9d, byte [rax + 2]
shl r10d, 6
and r9d, 0x3f
or r9d, r10d
cmp r11b, 0xf0
jb 0x1400ab62e
movzx r11d, byte [rax + 3]
add rax, 4
and r8d, 7
shl r8d, 0x12
shl r9d, 6
and r11d, 0x3f
or r11d, r9d
or r11d, r8d
cmp r11d, 0xffff
jbe 0x1400ab623
jmp 0x1400ab645
add rax, 2
shl r8d, 6
or r8d, r10d
mov r11d, r8d
xor r8d, r8d
mov ecx, r11d
jmp 0x1400ab593
add rax, 3
shl r8d, 0xc
or r9d, r8d
mov r11d, r9d
cmp r11d, 0xffff
jbe 0x1400ab623
and r11d, 0x3ff
or r11d, 0xdc00
mov r8d, r11d
jmp 0x1400ab593
test r12, r12
js 0x1400adf3c
movzx eax, byte [0x14014d230]
mov edx, 1
mov rcx, r12
call fcn.14000d260
test rax, rax
je 0x1400ade43
mov rsi, rax
mov rcx, rax
mov rdx, qword [rsp + 0x68]
mov r8, r12
call sub.msvcrt.dll_memcpy
mov qword [rsp + 0x210], rsi
mov qword [rsp + 0x218], r12
mov qword [rsp + 0x220], r12
mov byte [rsp + 0x228], 0
lea rdx, str..exeprogram_not_found
lea rcx, [rsp + 0x210]
mov r8d, 4
call fcn.1400a65d0
mov rsi, qword [rsp + 0x210]
mov rbx, qword [rsp + 0x218]
mov rdi, qword [rsp + 0x220]
lea rcx, [rsp + 0xb0]
mov rdx, rsi
mov r8, rdi
call fcn.1400b0570
cmp qword [rsp + 0xb0], 0
je 0x1400ab744
mov rax, qword [rsp + 0xc0]
mov qword [rsp + 0x130], rax
movdqu xmm0, xmmword [rsp + 0xb0]
movdqa xmmword [rsp + 0x120], xmm0
jmp 0x1400ac309
mov qword [rsp + 0x128], rax
mov qword [rsp + 0x120], 0
jmp 0x1400ac31b
mov rcx, rsi
mov rdx, rdi
call fcn.1400a9de0
test rax, rax
je 0x1400ac296
cmp rdx, 2
jne 0x1400ab7a8
movzx ecx, word [rax]
cmp ecx, 0x2e2e
jne 0x1400ab7a8
mov r8d, 2
xor r9d, r9d
jmp 0x1400ac276
cmp r12, 0xf
ja 0x1400ab7e5
xor eax, eax
mov qword [rsp + 0x60], rax
xor eax, eax
nop word cs:[rax + rax]
cmp byte [rdx + rax], 0x2e
je 0x1400ab7fb
inc rax
cmp r12, rax
jne 0x1400ab790
jmp 0x1400ab805
xor r15d, r15d
jmp 0x1400ab2fc
mov r8, rdx
nop dword [rax + rax]
test r8, r8
je 0x1400ab7f1
mov rcx, r8
dec r8
cmp byte [rax + rcx - 1], 0x2e
jne 0x1400ab7b0
mov r10, rdx
sub r10, rcx
jb 0x1400adf91
test r8, r8
je 0x1400ac270
mov r9, rax
add r9, rcx
mov rdx, r10
jmp 0x1400ac276
mov cl, 0x2e
mov r8, r12
call fcn.140016620
jmp 0x1400ab800
mov r9, rax
xor eax, eax
jmp 0x1400ac276
mov eax, 1
mov qword [rsp + 0x60], rax
test r15, r15
je 0x1400ab854
add rbx, r15
mov qword [rsp + 0x140], r15
mov qword [rsp + 0x148], rbx
mov word [rsp + 0x150], 0
mov byte [rsp + 0x158], 1
lea rcx, [rsp + 0x210]
lea rdx, [rsp + 0x140]
call fcn.1400a6390
movzx eax, byte [rsp + 0x228]
cmp al, 2
jne 0x1400abce0
mov qword [rsp + 0x70], r12
mov qword [rsp + 0x80], 2
pxor xmm0, xmm0
movdqu xmmword [rsp + 0x88], xmm0
mov r8d, 0x200
mov eax, 2
mov qword [rsp + 0x58], rax
xor esi, esi
mov r12d, 0xffffffff
xor r15d, r15d
xor r14d, r14d
cmp r8, 0x201
jb 0x1400ab8af
jmp 0x1400ab8d0
jae 0x1400ab98e
cmp r8, 0x201
jae 0x1400ab8d0
mov r13d, 0x200
lea rbp, [rsp + 0x210]
mov rbx, r8
jmp 0x1400ab923
sub r8, r14
sub r15, r14
cmp r15, r8
jae 0x1400ab900
lea rcx, [rsp + 0x80]
mov rdx, r14
call fcn.140088cd0
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0x58], rax
mov rsi, qword [rsp + 0x88]
cmp rsi, r12
mov r14d, 0xffffffff
cmovb r14, rsi
mov qword [rsp + 0x90], r14
mov r15, rsi
mov r13, r14
mov rbp, qword [rsp + 0x58]
mov rbx, r14
xor ecx, ecx
call sub.kernel32.dll_SetLastError
xor ecx, ecx
mov rdx, rbp
mov r8d, ebx
call sub.kernel32.dll_GetModuleFileNameW
mov edi, eax
test eax, eax
jne 0x1400ab94a
call sub.kernel32.dll_GetLastError
test eax, eax
jne 0x1400ab9d0
mov r8d, edi
cmp rbx, r8
jne 0x1400ab8a0
call sub.kernel32.dll_GetLastError
cmp eax, 0x7a
jne 0x1400ade55
add rbx, rbx
mov eax, 0xffffffff
cmp rbx, rax
mov r12d, 0xffffffff
cmovae rbx, rax
mov r8, rbx
cmp r8, 0x201
jae 0x1400ab8d0
jmp 0x1400ab8af
cmp r13, r8
jb 0x1400adf63
lea rcx, [rsp + 0xb0]
mov rdx, rbp
call fcn.14008a800
mov r15, qword [rsp + 0x70]
movdqu xmm0, xmmword [rsp + 0xb0]
movups xmm1, xmmword [rsp + 0xc0]
movaps xmmword [rsp + 0x150], xmm1
movdqa xmmword [rsp + 0x140], xmm0
jmp 0x1400ab9f2
call sub.kernel32.dll_GetLastError
shl rax, 0x20
or rax, 2
mov qword [rsp + 0x140], rax
mov byte [rsp + 0x158], 2
mov r15, qword [rsp + 0x70]
test rsi, rsi
je 0x1400aba06
mov edx, 2
mov rcx, qword [rsp + 0x58]
call fcn.14000d2f0
cmp byte [rsp + 0x158], 2
jne 0x1400aba22
lea rcx, [rsp + 0x140]
call fcn.140086150
jmp 0x1400abafb
mov rsi, qword [rsp + 0x140]
mov rbx, qword [rsp + 0x148]
mov rdi, qword [rsp + 0x150]
mov r14, qword [rsp + 0x158]
mov rcx, rsi
mov rdx, rdi
call fcn.1400a7e80
cmp rdi, rdx
cmovb rdx, rdi
test rax, rax
cmove rdx, rdi
mov qword [rsp + 0x210], rsi
mov qword [rsp + 0x218], rbx
mov qword [rsp + 0x220], rdx
mov qword [rsp + 0x228], r14
lea rcx, [rsp + 0x210]
mov rdx, qword [rsp + 0x68]
mov r8, r15
call fcn.1400a6840
cmp qword [rsp + 0x60], 1
je 0x1400abaa5
lea rcx, [rsp + 0x210]
call fcn.1400a9f10
mov rsi, qword [rsp + 0x210]
mov r8, qword [rsp + 0x220]
lea rcx, [rsp + 0xb0]
mov rdx, rsi
call fcn.1400b0570
cmp qword [rsp + 0x218], 0
je 0x1400abadd
mov edx, 1
mov rcx, rsi
call fcn.14000d2f0
mov rcx, qword [rsp + 0xb0]
test rcx, rcx
je 0x1400abafb
mov r12, rcx
movdqu xmm6, xmmword [rsp + 0xb8]
jmp 0x1400ac0aa
mov qword [rsp + 0x1a0], 2
pxor xmm0, xmm0
movdqu xmmword [rsp + 0x1a8], xmm0
mov r8d, 0x200
mov eax, 2
mov qword [rsp + 0x58], rax
xor r15d, r15d
mov r12d, 0xffffffff
xor esi, esi
xor ebx, ebx
cmp r8, 0x201
jb 0x1400abb4f
jmp 0x1400abb70
jae 0x1400abc2a
cmp r8, 0x201
jae 0x1400abb70
mov r14d, 0x200
lea r13, [rsp + 0x210]
mov rbp, r8
jmp 0x1400abbc2
sub r8, rbx
sub rsi, rbx
cmp rsi, r8
jae 0x1400abba0
lea rcx, [rsp + 0x1a0]
mov rdx, rbx
call fcn.140088cd0
mov rax, qword [rsp + 0x1a0]
mov qword [rsp + 0x58], rax
mov r15, qword [rsp + 0x1a8]
cmp r15, r12
mov ebx, 0xffffffff
cmovb rbx, r15
mov qword [rsp + 0x1b0], rbx
mov rsi, r15
mov r14, rbx
mov r13, qword [rsp + 0x58]
mov rbp, rbx
xor ecx, ecx
call sub.kernel32.dll_SetLastError
mov rcx, r13
mov edx, ebp
call sub.kernel32.dll_GetSystemDirectoryW
mov edi, eax
test eax, eax
jne 0x1400abbe6
call sub.kernel32.dll_GetLastError
test eax, eax
jne 0x1400abdfa
mov r8d, edi
cmp rbp, r8
jne 0x1400abb40
call sub.kernel32.dll_GetLastError
cmp eax, 0x7a
jne 0x1400ade72
add rbp, rbp
mov eax, 0xffffffff
cmp rbp, rax
mov r12d, 0xffffffff
cmovae rbp, rax
mov r8, rbp
cmp r8, 0x201
jae 0x1400abb70
jmp 0x1400abb4f
cmp r14, r8
jb 0x1400adf7a
lea rcx, [rsp + 0xb0]
mov rdx, r13
call fcn.14008a800
mov rdx, qword [rsp + 0x68]
mov rbx, qword [rsp + 0x70]
lea rcx, [rsp + 0xb0]
mov r8, rbx
call fcn.1400a6840
cmp qword [rsp + 0x60], 1
je 0x1400abc72
lea rcx, [rsp + 0xb0]
call fcn.1400a9f10
mov rdi, qword [rsp + 0xb0]
mov r8, qword [rsp + 0xc0]
lea rcx, [rsp + 0x80]
mov rdx, rdi
call fcn.1400b0570
cmp qword [rsp + 0xb8], 0
je 0x1400abcaa
mov edx, 1
mov rcx, rdi
call fcn.14000d2f0
movdqu xmm0, xmmword [rsp + 0x80]
movdqu xmmword [rsp + 0x148], xmm0
mov rax, qword [rsp + 0x90]
mov qword [rsp + 0x158], rax
mov qword [rsp + 0x140], 0
mov sil, 1
jmp 0x1400abe1d
lea r14, [rsp + 0x229]
lea r15, [rsp + 0xc9]
lea rsi, [rsp + 0x210]
lea rdi, [rsp + 0x140]
lea rbp, [rsp + 0xb0]
jmp 0x1400abd2b
mov rcx, rsi
mov rdx, rdi
call fcn.1400a6390
movzx eax, byte [rsp + 0x228]
cmp al, 2
je 0x1400ab854
mov rcx, qword [rsp + 0x210]
mov rdx, qword [rsp + 0x218]
mov r8, qword [rsp + 0x220]
test r8, r8
jne 0x1400abd59
test rdx, rdx
je 0x1400abd10
mov edx, 1
call fcn.14000d2f0
jmp 0x1400abd10
mov r9d, dword [r14]
mov r10d, dword [r14 + 3]
mov dword [r15 + 3], r10d
mov dword [r15], r9d
mov qword [rsp + 0xb0], rcx
mov qword [rsp + 0xb8], rdx
mov qword [rsp + 0xc0], r8
mov byte [rsp + 0xc8], al
mov rcx, rbp
mov rdx, qword [rsp + 0x68]
mov r8, r12
call fcn.1400a6840
cmp qword [rsp + 0x60], 1
je 0x1400abda6
mov rcx, rbp
call fcn.1400a9f10
mov rbx, qword [rsp + 0xb0]
mov r8, qword [rsp + 0xc0]
mov rcx, rsi
mov rdx, rbx
call fcn.1400b0570
cmp qword [rsp + 0xb8], 0
je 0x1400abdd9
mov edx, 1
mov rcx, rbx
call fcn.14000d2f0
mov rax, qword [rsp + 0x210]
test rax, rax
jne 0x1400ad0eb
mov rcx, rsi
mov rdx, rdi
call fcn.1400a6390
jmp 0x1400abd1b
call sub.kernel32.dll_GetLastError
shl rax, 0x20
or rax, 2
mov qword [rsp + 0x148], rax
mov qword [rsp + 0x140], 1
xor esi, esi
test r15, r15
je 0x1400abe31
mov edx, 2
mov rcx, qword [rsp + 0x58]
call fcn.14000d2f0
test sil, sil
je 0x1400abe54
mov rcx, qword [rsp + 0x148]
test rcx, rcx
je 0x1400abe61
mov r12, rcx
movdqu xmm6, xmmword [rsp + 0x150]
jmp 0x1400ac0aa
lea rcx, [rsp + 0x148]
call fcn.140086150
mov qword [rsp + 0x1a0], 2
pxor xmm0, xmm0
movdqu xmmword [rsp + 0x1a8], xmm0
mov r8d, 0x200
mov eax, 2
mov qword [rsp + 0x58], rax
xor r15d, r15d
mov r12d, 0xffffffff
xor esi, esi
xor ebx, ebx
cmp r8, 0x201
jb 0x1400abebf
jmp 0x1400abee0
jae 0x1400abf9a
cmp r8, 0x201
jae 0x1400abee0
mov r14d, 0x200
lea r13, [rsp + 0x210]
mov rbp, r8
jmp 0x1400abf32
sub r8, rbx
sub rsi, rbx
cmp rsi, r8
jae 0x1400abf10
lea rcx, [rsp + 0x1a0]
mov rdx, rbx
call fcn.140088cd0
mov rax, qword [rsp + 0x1a0]
mov qword [rsp + 0x58], rax
mov r15, qword [rsp + 0x1a8]
cmp r15, r12
mov ebx, 0xffffffff
cmovb rbx, r15
mov qword [rsp + 0x1b0], rbx
mov rsi, r15
mov r14, rbx
mov r13, qword [rsp + 0x58]
mov rbp, rbx
xor ecx, ecx
call sub.kernel32.dll_SetLastError
mov rcx, r13
mov edx, ebp
call sub.kernel32.dll_GetWindowsDirectoryW
mov edi, eax
test eax, eax
jne 0x1400abf56
call sub.kernel32.dll_GetLastError
test eax, eax
jne 0x1400ac04d
mov r8d, edi
cmp rbp, r8
jne 0x1400abeb0
call sub.kernel32.dll_GetLastError
cmp eax, 0x7a
jne 0x1400ade8f
add rbp, rbp
mov eax, 0xffffffff
cmp rbp, rax
mov r12d, 0xffffffff
cmovae rbp, rax
mov r8, rbp
cmp r8, 0x201
jae 0x1400abee0
jmp 0x1400abebf
cmp r14, r8
jb 0x1400adf9f
lea rcx, [rsp + 0xb0]
mov rdx, r13
call fcn.14008a800
mov rdx, qword [rsp + 0x68]
mov r12, qword [rsp + 0x70]
lea rcx, [rsp + 0xb0]
mov r8, r12
call fcn.1400a6840
cmp qword [rsp + 0x60], 1
je 0x1400abfe2
lea rcx, [rsp + 0xb0]
call fcn.1400a9f10
mov rdi, qword [rsp + 0xb0]
mov r8, qword [rsp + 0xc0]
lea rcx, [rsp + 0x80]
mov rdx, rdi
call fcn.1400b0570
cmp qword [rsp + 0xb8], 0
je 0x1400ac01a
mov edx, 1
mov rcx, rdi
call fcn.14000d2f0
movdqu xmm0, xmmword [rsp + 0x80]
movdqu xmmword [rsp + 0x148], xmm0
mov rax, qword [rsp + 0x90]
mov qword [rsp + 0x158], rax
mov qword [rsp + 0x140], 0
mov sil, 1
jmp 0x1400ac075
call sub.kernel32.dll_GetLastError
shl rax, 0x20
or rax, 2
mov qword [rsp + 0x148], rax
mov qword [rsp + 0x140], 1
xor esi, esi
mov r12, qword [rsp + 0x70]
test r15, r15
je 0x1400ac089
mov edx, 2
mov rcx, qword [rsp + 0x58]
call fcn.14000d2f0
test sil, sil
je 0x1400ac0be
mov rcx, qword [rsp + 0x148]
test rcx, rcx
je 0x1400ac0cb
mov rax, rcx
movdqu xmm6, xmmword [rsp + 0x150]
mov r12, rcx
movq rdi, xmm6
pshufd xmm0, xmm6, 0xee
movq r8, xmm0
jmp 0x1400ac33c
lea rcx, [rsp + 0x148]
call fcn.140086150
lea rdx, str.PATHRUST_MIN_STACKfatal_runtime_error:_assertion_failed:_thread_info.stack_guard.get__.is_none____thread_info.thread.get__.is_none___n
lea rcx, [rsp + 0x80]
mov r8d, 4
call fcn.1400a4ea0
cmp byte [rsp + 0x98], 2
je 0x1400ac264
mov rcx, qword [rsp + 0x80]
mov r14, qword [rsp + 0x88]
mov rax, qword [rsp + 0x90]
add rax, rcx
mov qword [rsp + 0x58], rcx
mov qword [rsp + 0x140], rcx
mov qword [rsp + 0x148], rax
mov word [rsp + 0x150], 0
mov byte [rsp + 0x158], 1
lea r15, [rsp + 0x229]
lea r13, [rsp + 0xc9]
lea rdi, [rsp + 0x210]
lea rbp, [rsp + 0x140]
lea rsi, [rsp + 0xb0]
jmp 0x1400ac170
mov rax, qword [rsp + 0x210]
test rax, rax
jne 0x1400ad811
mov rcx, rdi
mov rdx, rbp
call fcn.1400a6390
jmp 0x1400ac188
mov rcx, rdi
mov rdx, rbp
call fcn.1400a6390
movzx eax, byte [rsp + 0x228]
cmp al, 2
je 0x1400ac250
mov rcx, qword [rsp + 0x210]
mov rdx, qword [rsp + 0x218]
mov r8, qword [rsp + 0x220]
test r8, r8
jne 0x1400ac1c6
test rdx, rdx
je 0x1400ac17d
mov edx, 1
call fcn.14000d2f0
jmp 0x1400ac17d
mov r9d, dword [r15]
mov r10d, dword [r15 + 3]
mov dword [r13 + 3], r10d
mov dword [r13], r9d
mov qword [rsp + 0xb0], rcx
mov qword [rsp + 0xb8], rdx
mov qword [rsp + 0xc0], r8
mov byte [rsp + 0xc8], al
mov rcx, rsi
mov rdx, qword [rsp + 0x68]
mov r8, r12
call fcn.1400a6840
cmp qword [rsp + 0x60], 1
je 0x1400ac214
mov rcx, rsi
call fcn.1400a9f10
mov rbx, qword [rsp + 0xb0]
mov r8, qword [rsp + 0xc0]
mov rcx, rdi
mov rdx, rbx
call fcn.1400b0570
cmp qword [rsp + 0xb8], 0
je 0x1400ac15f
mov edx, 1
mov rcx, rbx
call fcn.14000d2f0
jmp 0x1400ac15f
test r14, r14
je 0x1400ac264
mov edx, 1
mov rcx, qword [rsp + 0x58]
call fcn.14000d2f0
lea rdi, [0x140111110]
jmp 0x1400ab38d
xor r9d, r9d
mov r8, rdx
test rax, rax
cmovne r9, rax
test r9, r9
je 0x1400ac296
test rax, rax
cmove r8, rdx
add r9, r8
sub r9, rsi
cmp rdi, r9
cmovae rdi, r9
lea rcx, [rsp + 0x210]
mov rdx, rsi
mov r8, rdi
call fcn.140088850
mov rcx, qword [rsp + 0x210]
mov rax, qword [rsp + 0x218]
test rcx, rcx
je 0x1400ac2f5
mov rdx, qword [rsp + 0x220]
mov qword [rsp + 0x210], rcx
mov qword [rsp + 0x218], rax
mov qword [rsp + 0x220], rdx
lea rcx, [rsp + 0x120]
lea rdx, [rsp + 0x210]
call fcn.1400b04a0
jmp 0x1400ac309
mov qword [rsp + 0x128], rax
mov qword [rsp + 0x120], 0
test rbx, rbx
je 0x1400ac31b
mov edx, 1
mov rcx, rsi
call fcn.14000d2f0
mov r12, qword [rsp + 0x120]
mov rdi, qword [rsp + 0x128]
test r12, r12
je 0x1400ab38d
mov r8, qword [rsp + 0x130]
mov qword [rsp + 0x58], rdi
cmp r8, 5
jb case.0x1400ac68a.68
cmp word [r12 + r8*2 - 0xa], 0x2e
jne case.0x1400ac68a.68
cmp word [r12 + r8*2 - 2], 0
je 0x1400ac66a
mov rax, qword [rsp + 0x50]
mov rsi, qword [rax + 0x90]
mov rdi, qword [rax + 0xa0]
movzx ebx, byte [rax + 0xc5]
mov qword [rsp + 0xb0], 2
pxor xmm0, xmm0
movdqu xmmword [rsp + 0xb8], xmm0
lea rcx, [rsp + 0xb0]
xor edx, edx
call fcn.140088c10
mov rax, qword [rsp + 0xb0]
mov rcx, qword [rsp + 0xc0]
mov word [rax + rcx*2], 0x22
inc rcx
mov qword [rsp + 0xc0], rcx
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x210], rax
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x218], rax
mov word [rsp + 0x220], 0
lea rcx, [rsp + 0xb0]
lea rdx, [rsp + 0x210]
call fcn.140088a80
mov rdx, qword [rsp + 0xc0]
cmp rdx, qword [rsp + 0xb8]
jne 0x1400ac420
lea rcx, [rsp + 0xb0]
call fcn.140088c10
mov rdx, qword [rsp + 0xc0]
mov rax, qword [rsp + 0xb0]
mov word [rax + rdx*2], 0x22
inc rdx
mov qword [rsp + 0xc0], rdx
shl rdi, 3
lea r14, [rdi + rdi*4]
lea r15, [rsp + 0xb0]
nop dword [rax]
test r14, r14
je 0x1400ac4d4
mov rdx, qword [rsp + 0xc0]
cmp rdx, qword [rsp + 0xb8]
jne 0x1400ac477
mov rcx, r15
call fcn.140088c10
mov rdx, qword [rsp + 0xc0]
mov rax, qword [rsp + 0xb0]
mov word [rax + rdx*2], 0x20
inc rdx
mov qword [rsp + 0xc0], rdx
mov rcx, r15
mov rdx, rsi
mov r8d, ebx
call fcn.1400b0640
mov rdi, rax
add rsi, 0x28
add r14, 0xffffffffffffffd8
test rax, rax
je 0x1400ac450
cmp qword [rsp + 0xb8], 0
je 0x1400ac5e8
mov rcx, qword [rsp + 0xb0]
mov edx, 2
call fcn.14000d2f0
jmp 0x1400ac5e8
mov rax, qword [rsp + 0xb0]
mov rdi, qword [rsp + 0xb8]
test rax, rax
je 0x1400ac5e8
mov rdx, qword [rsp + 0xc0]
mov cl, 1
mov dword [rsp + 0x78], ecx
mov qword [rsp + 0x70], r12
mov r14, qword [rsp + 0x58]
mov qword [rsp + 0x68], r14
mov qword [rsp + 0x120], rax
mov qword [rsp + 0x128], rdi
mov qword [rsp + 0x130], rdx
cmp rdx, rdi
jne 0x1400ac544
lea rcx, [rsp + 0x120]
call fcn.140088c10
mov rax, qword [rsp + 0x120]
mov rdx, qword [rsp + 0x130]
mov word [rax + rdx*2], 0
inc rdx
mov qword [rsp + 0x130], rdx
mov rcx, qword [rsp + 0x50]
cmp byte [rcx + 0xc4], 0
mov eax, 0x400
mov esi, 0x608
cmove esi, eax
or esi, dword [rcx + 0xc0]
cmp qword [rsp + 0x1d8], 0
je 0x1400ac622
mov qword [rsp + 0x60], r12
mov rbx, qword [rsp + 0x1e0]
mov r14, qword [rsp + 0x1e8]
mov r15, qword [rsp + 0x1f0]
mov qword [rsp + 0x1a0], rbx
mov qword [rsp + 0x1a8], r14
mov qword [rsp + 0x1b0], r15
mov qword [rsp + 0x80], 2
pxor xmm0, xmm0
movdqu xmmword [rsp + 0x88], xmm0
test r15, r15
je 0x1400ac806
mov r8d, 2
xor r12d, r12d
jmp 0x1400ac83d
mov r14, qword [rsp + 0x58]
mov rax, qword [rsp + 0x118]
mov qword [rax], rdi
mov qword [rax + 0x10], 2
xor esi, esi
test r14, r14
je 0x1400ac614
mov edx, 2
mov rcx, r12
call fcn.14000d2f0
test sil, sil
je 0x1400ab3a0
jmp 0x1400ab541
mov rax, rcx
mov ecx, 2
xor edx, edx
mov qword [rsp + 0xa0], rdx
xor ebx, ebx
mov qword [rsp + 0xa8], rcx
cmp byte [rax + 0x88], 2
jne 0x1400accb3
xor r15d, r15d
mov eax, 2
mov qword [rsp + 0x1c8], rax
xor eax, eax
mov qword [rsp + 0x138], rax
jmp 0x1400acea7
movzx eax, word [r12 + r8*2 - 8]
lea ecx, [rax - 0x42]
cmp ecx, 0x21
ja case.0x1400ac68a.68
lea rdx, [0x1400d85cc]
movsxd rcx, dword [rdx + rcx*4]
add rcx, rdx
jmp rcx
movzx ecx, word [r12 + r8*2 - 6]
or ecx, 0x20
cmp ecx, 0x61
stc
invalid
jne 0x1400ac6a8
movzx ecx, word [r12 + r8*2 - 4]
or ecx, 0x20
cmp ecx, 0x74
je 0x1400ac6d8
cmp ax, 0x43
jne case.0x1400ac68a.68
movzx eax, word [r12 + r8*2 - 6]
or eax, 0x20
cmp eax, 0x6d
jne case.0x1400ac68a.68
movzx eax, word [r12 + r8*2 - 4]
add eax, 0xffffffbc
test eax, 0xffdf
jne case.0x1400ac68a.68
mov qword [rsp + 0xa0], r8
mov qword [rsp + 0x60], r12
mov qword [rsp + 0xb0], 2
pxor xmm0, xmm0
movdqu xmmword [rsp + 0xb8], xmm0
mov ebp, 0x200
mov eax, 2
mov qword [rsp + 0x68], rax
xor r14d, r14d
mov r12d, 0xffffffff
lea rax, [rsp + 0xb0]
mov qword [rsp + 0x78], rax
xor r15d, r15d
xor edi, edi
cmp rbp, 0x201
jb 0x1400ac748
jmp 0x1400ac758
mov r8, rax
mov rbp, rax
jae 0x1400acfed
cmp rbp, 0x201
jae 0x1400ac758
mov r13d, 0x200
lea rbx, [rsp + 0x210]
jmp 0x1400ac7ad
sub rbp, rdi
sub r15, rdi
cmp r15, rbp
jae 0x1400ac78b
lea rcx, [rsp + 0xb0]
mov rdx, rdi
mov r8, rbp
call fcn.140088cd0
mov rax, qword [rsp + 0xb0]
mov qword [rsp + 0x68], rax
mov r14, qword [rsp + 0xb8]
cmp r14, r12
mov edi, 0xffffffff
cmovb rdi, r14
mov qword [rsp + 0xc0], rdi
mov r15, r14
mov r13, rdi
mov rbx, qword [rsp + 0x68]
mov rbp, rdi
xor ecx, ecx
call sub.kernel32.dll_SetLastError
mov rcx, rbx
mov edx, ebp
call sub.kernel32.dll_GetSystemDirectoryW
mov esi, eax
test eax, eax
jne 0x1400ac7d1
call sub.kernel32.dll_GetLastError
test eax, eax
jne 0x1400ad0a1
mov eax, esi
cmp rbp, rax
jne 0x1400ac733
call sub.kernel32.dll_GetLastError
cmp eax, 0x7a
jne 0x1400adf46
add rbp, rbp
cmp rbp, r12
cmovae rbp, r12
cmp rbp, 0x201
jae 0x1400ac758
jmp 0x1400ac748
mov dil, 1
lea rcx, [rsp + 0x80]
xor edx, edx
call fcn.140088c10
mov rax, qword [rsp + 0x80]
mov r12, qword [rsp + 0x90]
mov r8, rax
mov word [rax + r12*2], 0
inc r12
mov qword [rsp + 0x90], r12
xor eax, eax
test rbx, rbx
setne al
cmove r15, rbx
mov qword [rsp + 0x210], rax
mov qword [rsp + 0x218], 0
mov qword [rsp + 0x220], rbx
mov qword [rsp + 0x228], r14
mov qword [rsp + 0x230], rax
mov qword [rsp + 0x238], 0
mov qword [rsp + 0x240], rbx
mov qword [rsp + 0x248], r14
mov qword [rsp + 0x250], r15
lea rcx, [rsp + 0xb0]
lea rdx, [rsp + 0x210]
mov rbx, r8
call fcn.1400aa2b0
mov rdx, qword [rsp + 0xb0]
test rdx, rdx
je 0x1400ad02a
mov r9, qword [rsp + 0xc0]
imul r8, r9, 0x38
cmp byte [rdx + r8 + 0x198], 2
je 0x1400ad02a
mov qword [rsp + 0x138], rbx
mov rdi, qword [rdx + r8 + 0x168]
mov r15, qword [rdx + r8 + 0x170]
mov r13, qword [rdx + r8 + 0x178]
mov rcx, qword [rdx + r8 + 0x180]
mov rax, qword [rdx + r8 + 0x188]
shl r9, 5
mov r10, qword [rdx + r9]
mov qword [rsp + 0xa8], r10
mov r10, qword [rdx + r9 + 8]
mov qword [rsp + 0xa0], r10
mov rbx, qword [rdx + r9 + 0x10]
movzx r9d, byte [rdx + r9 + 0x18]
mov byte [rsp + 0x1b8], r9b
mov rdx, qword [rdx + r8 + 0x190]
add rdx, rcx
xor r11d, r11d
mov r8, rcx
jmp 0x1400ac95d
xor r11d, r11d
test r9w, r9w
je 0x1400acc6d
mov r9w, 1
test r11w, r11w
jne 0x1400ac950
cmp r8, rdx
je 0x1400aca19
movzx r10d, byte [r8]
test r10b, r10b
js 0x1400ac97f
inc r8
jmp 0x1400ac9e1
mov r11d, r10d
and r11d, 0x1f
movzx ebp, byte [r8 + 1]
and ebp, 0x3f
cmp r10b, 0xdf
jbe 0x1400ac9d3
movzx r14d, byte [r8 + 2]
shl ebp, 6
and r14d, 0x3f
or r14d, ebp
cmp r10b, 0xf0
jb 0x1400ac9ec
movzx r10d, byte [r8 + 3]
add r8, 4
and r11d, 7
shl r11d, 0x12
shl r14d, 6
and r10d, 0x3f
or r10d, r14d
or r10d, r11d
cmp r10d, 0xffff
jbe 0x1400ac9e1
jmp 0x1400aca03
add r8, 2
shl r11d, 6
or r11d, ebp
mov r10d, r11d
xor r11d, r11d
mov r9d, r10d
jmp 0x1400ac953
add r8, 3
shl r11d, 0xc
or r14d, r11d
mov r10d, r14d
cmp r10d, 0xffff
jbe 0x1400ac9e1
and r10d, 0x3ff
or r10d, 0xdc00
mov r11d, r10d
jmp 0x1400ac953
test rax, rax
je 0x1400aca28
mov edx, 1
call fcn.14000d2f0
mov rax, qword [rsp + 0x88]
sub rax, r12
cmp rax, r13
jae 0x1400aca5d
lea rcx, [rsp + 0x80]
mov rdx, r12
mov r8, r13
call fcn.140088cd0
mov rax, qword [rsp + 0x80]
mov r12, qword [rsp + 0x90]
jmp 0x1400aca65
mov rax, qword [rsp + 0x138]
lea r8, [r13*2]
mov r14, rax
lea rcx, [rax + r12*2]
mov rdx, rdi
call sub.msvcrt.dll_memcpy
add r12, r13
mov qword [rsp + 0x90], r12
test r15, r15
je 0x1400aca99
mov edx, 2
mov rcx, rdi
call fcn.14000d2f0
cmp r12, qword [rsp + 0x88]
jne 0x1400acacd
lea rcx, [rsp + 0x80]
mov rdx, r12
mov rdi, qword [rsp + 0xa8]
call fcn.140088c10
mov r14, qword [rsp + 0x80]
mov r12, qword [rsp + 0x90]
jmp 0x1400acad5
mov rdi, qword [rsp + 0xa8]
mov word [r14 + r12*2], 0x3d
inc r12
mov qword [rsp + 0x90], r12
add rbx, rdi
xor r8d, r8d
mov rax, rdi
jmp 0x1400acafe
xor r8d, r8d
test cx, cx
je 0x1400acdaf
mov cx, 1
test r8w, r8w
jne 0x1400acaf2
cmp rax, rbx
je 0x1400acbad
movzx edx, byte [rax]
test dl, dl
js 0x1400acb20
inc rax
jmp 0x1400acba3
mov r8d, edx
and r8d, 0x1f
movzx r10d, byte [rax + 1]
and r10d, 0x3f
cmp dl, 0xdf
jbe 0x1400acb69
movzx r9d, byte [rax + 2]
shl r10d, 6
and r9d, 0x3f
or r9d, r10d
cmp dl, 0xf0
jb 0x1400acb79
movzx edx, byte [rax + 3]
add rax, 4
and r8d, 7
shl r8d, 0x12
shl r9d, 6
and edx, 0x3f
or edx, r9d
or edx, r8d
jmp 0x1400acb87
add rax, 2
shl r8d, 6
or r8d, r10d
mov edx, r8d
jmp 0x1400acba3
add rax, 3
shl r8d, 0xc
or r9d, r8d
mov edx, r9d
cmp edx, 0xffff
jbe 0x1400acba3
and edx, 0x3ff
or edx, 0xdc00
mov r8d, edx
jmp 0x1400acaf5
xor r8d, r8d
mov ecx, edx
jmp 0x1400acaf5
cmp byte [rsp + 0x1b8], 2
je 0x1400adccf
mov qword [rsp + 0x140], rdi
mov qword [rsp + 0x148], rbx
mov word [rsp + 0x150], 0
lea rcx, [rsp + 0x80]
lea rdx, [rsp + 0x140]
call fcn.140088a80
cmp qword [rsp + 0xa0], 0
je 0x1400acc02
mov edx, 1
mov rcx, rdi
call fcn.14000d2f0
mov r12, qword [rsp + 0x90]
cmp r12, qword [rsp + 0x88]
jne 0x1400acc3e
lea rcx, [rsp + 0x80]
mov rdx, r12
call fcn.140088c10
lea rcx, [rsp + 0xb0]
lea rdx, [rsp + 0x210]
mov r12, qword [rsp + 0x90]
jmp 0x1400acc4e
lea rcx, [rsp + 0xb0]
lea rdx, [rsp + 0x210]
mov rbx, qword [rsp + 0x80]
mov word [rbx + r12*2], 0
inc r12
mov qword [rsp + 0x90], r12
jmp 0x1400ac8ac
test rax, rax
je 0x1400acc7c
mov edx, 1
call fcn.14000d2f0
cmp qword [rsp + 0xa0], 0
je 0x1400acc99
mov edx, 1
mov rcx, qword [rsp + 0xa8]
call fcn.14000d2f0
lea rbx, str.nul_byte_found_in_provided_data
test r15, r15
je 0x1400acdce
mov edx, 2
jmp 0x1400acdc6
mov rcx, rax
mov rax, qword [rax + 0x70]
mov rcx, qword [rcx + 0x80]
add rcx, rax
xor r10d, r10d
mov rdx, rax
jmp 0x1400accd9
xor r10d, r10d
test r8w, r8w
je 0x1400acd90
mov r8w, 1
test r10w, r10w
jne 0x1400acccc
cmp rdx, rcx
je 0x1400ace1c
movzx r9d, byte [rdx]
test r9b, r9b
js 0x1400accfe
inc rdx
jmp 0x1400acd85
mov r10d, r9d
and r10d, 0x1f
movzx edi, byte [rdx + 1]
and edi, 0x3f
cmp r9b, 0xdf
jbe 0x1400acd48
movzx r11d, byte [rdx + 2]
shl edi, 6
and r11d, 0x3f
or r11d, edi
cmp r9b, 0xf0
jb 0x1400acd58
movzx r9d, byte [rdx + 3]
add rdx, 4
and r10d, 7
shl r10d, 0x12
shl r11d, 6
and r9d, 0x3f
or r9d, r11d
or r9d, r10d
jmp 0x1400acd66
add rdx, 2
shl r10d, 6
or r10d, edi
mov r9d, r10d
jmp 0x1400acd85
add rdx, 3
shl r10d, 0xc
or r11d, r10d
mov r9d, r11d
cmp r9d, 0xffff
jbe 0x1400acd85
and r9d, 0x3ff
or r9d, 0xdc00
mov r10d, r9d
jmp 0x1400acccf
xor r10d, r10d
mov r8d, r9d
jmp 0x1400acccf
lea rax, str.nul_byte_found_in_provided_data
mov rcx, qword [rsp + 0x118]
mov qword [rcx], rax
mov qword [rcx + 0x10], 2
jmp 0x1400adc6b
lea rbx, str.nul_byte_found_in_provided_data
cmp qword [rsp + 0xa0], 0
je 0x1400acdce
mov edx, 1
mov rcx, rdi
call fcn.14000d2f0
xor edi, edi
lea rcx, [rsp + 0x210]
call fcn.1400ae6d0
cmp qword [rsp + 0x88], 0
je 0x1400acdfa
mov rcx, qword [rsp + 0x80]
mov edx, 2
call fcn.14000d2f0
mov r14, qword [rsp + 0x58]
mov r12, qword [rsp + 0x60]
mov rax, qword [rsp + 0x118]
mov qword [rax], rbx
mov qword [rax + 0x10], 2
jmp 0x1400adc88
mov qword [rsp + 0x210], rax
mov qword [rsp + 0x218], rcx
mov word [rsp + 0x220], 0
lea rcx, [rsp + 0xb0]
lea rdx, [rsp + 0x210]
call fcn.1400ae780
mov rcx, qword [rsp + 0xb8]
mov rdx, qword [rsp + 0xc0]
mov rax, rcx
mov qword [rsp + 0x138], rcx
cmp rdx, rcx
jne 0x1400ace90
lea rcx, [rsp + 0xb0]
call fcn.140088c10
mov rax, qword [rsp + 0xb8]
mov qword [rsp + 0x138], rax
mov rdx, qword [rsp + 0xc0]
mov r15, qword [rsp + 0xb0]
mov word [r15 + rdx*2], 0
mov qword [rsp + 0x1c8], r15
pxor xmm0, xmm0
movdqa xmmword [rsp + 0x1a0], xmm0
mov qword [rsp + 0x1b0], 0
lea rdi, [0x14014d1b8]
mov rcx, rdi
call sub.kernel32.dll_AcquireSRWLockExclusive
mov rax, qword [0x14014d228]
shl rax, 1
test rax, rax
mov qword [rsp + 0x60], r12
je 0x1400acef4
call fcn.14008bb30
mov r13d, eax
mov rbp, rbx
xor r13b, 1
jmp 0x1400acefa
mov rbp, rbx
xor r13d, r13d
movzx r12d, byte [0x14014d1c0]
xor eax, eax
test r12b, r12b
setne al
mov qword [rsp + 0x88], rdi
mov byte [rsp + 0x90], r13b
mov qword [rsp + 0x80], rax
mov qword [rsp + 0x140], 0
mov qword [rsp + 0x150], 0
mov qword [rsp + 0x160], 0
mov rdx, qword [rsp + 0x50]
cmp dword [rdx], 6
mov rcx, rdx
mov rax, qword [rsp + 0x1c0]
cmove rcx, rax
cmp dword [rdx + 0x10], 6
lea rdi, [rdx + 0x10]
cmove rdi, rax
lea rbx, [rdx + 0x20]
cmp dword [rdx + 0x20], 6
cmove rbx, rax
lea r8, [rsp + 0x140]
mov edx, 0xfffffff6
call fcn.1400b0b20
mov qword [rsp + 0x1b8], rdx
test rax, rax
je 0x1400acfb4
mov rax, qword [rsp + 0x118]
mov rcx, qword [rsp + 0x1b8]
mov qword [rax], rcx
mov qword [rax + 0x10], 2
jmp 0x1400adba8
lea r8, [rsp + 0x150]
mov rcx, rdi
mov edx, 0xfffffff5
call fcn.1400b0b20
mov rdi, rdx
test rax, rax
je 0x1400ad0b5
mov rax, qword [rsp + 0x118]
mov qword [rax], rdi
mov qword [rax + 0x10], 2
jmp 0x1400adb9b
cmp r13, rbp
mov r15, rbp
jb 0x1400adfb6
test esi, esi
je 0x1400ad0fb
lea r13, [r15 + r15]
movzx eax, byte [0x14014d230]
mov edx, 2
mov rcx, r13
call fcn.14000d260
test rax, rax
je 0x1400adfe2
mov rdi, rax
jmp 0x1400ad103
xor edi, edi
lea rcx, [rsp + 0x210]
call fcn.1400ae6d0
cmp r12, qword [rsp + 0x88]
jne 0x1400ad065
xor edi, edi
lea rcx, [rsp + 0x80]
mov rdx, r12
call fcn.140088c10
mov rbx, qword [rsp + 0x80]
mov r12, qword [rsp + 0x90]
mov word [rbx + r12*2], 0
mov rcx, qword [rsp + 0x80]
test rcx, rcx
mov rax, qword [rsp + 0x50]
mov r14, qword [rsp + 0x58]
je 0x1400acdff
mov rdx, qword [rsp + 0x88]
mov qword [rsp + 0xa0], rdx
mov r12, qword [rsp + 0x60]
jmp 0x1400ac636
call sub.kernel32.dll_GetLastError
mov r15d, eax
shl r15, 0x20
or r15, 2
xor edi, edi
jmp 0x1400ad111
lea r8, [rsp + 0x160]
mov rcx, rbx
mov edx, 0xfffffff4
call fcn.1400b0b20
test rax, rax
je 0x1400ad6ab
mov rax, qword [rsp + 0x118]
mov qword [rax], rdx
mov qword [rax + 0x10], 2
jmp 0x1400adb93
movups xmm6, xmmword [rsp + 0x218]
mov r12, rax
jmp 0x1400ac0aa
mov edi, 2
xor r13d, r13d
mov rcx, rdi
mov rdx, rbx
mov r8, r13
call sub.msvcrt.dll_memcpy
test r14, r14
je 0x1400ad125
mov edx, 2
mov rcx, qword [rsp + 0x68]
call fcn.14000d2f0
test rdi, rdi
mov r14, qword [rsp + 0x58]
je 0x1400ad4b1
mov qword [rsp + 0x140], rdi
mov qword [rsp + 0x148], r15
mov rbp, r15
mov qword [rsp + 0x150], r15
lea rsi, [0x140111166]
xor r8d, r8d
lea rax, [rsp + 0x140]
mov qword [rsp + 0x78], rax
lea r12, [0x14011116e]
xor ecx, ecx
mov r15, rsi
jmp 0x1400ad199
mov r13d, ecx
mov r14, r8
mov rax, rbp
mov word [rdi + rbp*2], r13w
inc rax
mov rbp, rax
mov qword [rsp + 0x150], rax
mov r8, r14
mov ecx, ebx
mov r14, qword [rsp + 0x58]
test r15, r15
je 0x1400ad203
test cx, cx
je 0x1400ad1aa
xor ebx, ebx
jmp 0x1400ad27d
cmp r15, r12
je 0x1400ad203
movzx eax, byte [r15]
test al, al
js 0x1400ad1bf
inc r15
jmp 0x1400ad279
mov edx, eax
and edx, 0x1f
movzx r10d, byte [r15 + 1]
and r10d, 0x3f
cmp al, 0xdf
jbe 0x1400ad234
movzx r9d, byte [r15 + 2]
shl r10d, 6
and r9d, 0x3f
or r9d, r10d
cmp al, 0xf0
jb 0x1400ad242
movzx eax, byte [r15 + 3]
and edx, 7
shl edx, 0x12
shl r9d, 6
and eax, 0x3f
or eax, r9d
or eax, edx
cmp eax, 0x110000
jne 0x1400ad251
cmp r8, 1
je 0x1400ad2dc
mov r14d, 1
xor r15d, r15d
xor r13d, r13d
cmp rbp, qword [rsp + 0x148]
jne 0x1400ad22d
neg r8
mov ebx, ecx
jmp 0x1400ad2bc
mov ebx, ecx
jmp 0x1400ad179
add r15, 2
shl edx, 6
or edx, r10d
mov eax, edx
jmp 0x1400ad279
add r15, 3
shl edx, 0xc
or r9d, edx
mov eax, r9d
jmp 0x1400ad255
add r15, 4
cmp eax, 0xffff
jbe 0x1400ad279
lea ecx, [rax + 0xff0000]
shr ecx, 0xa
or ecx, 0xd800
and eax, 0x3ff
or eax, 0xdc00
mov ebx, eax
jmp 0x1400ad27d
xor ebx, ebx
mov ecx, eax
cmp rbp, qword [rsp + 0x148]
jne 0x1400ad173
mov rax, rsi
sub rax, r15
add rax, 0xa
movabs rdx, 0xaaaaaaaaaaaaaaab
mul rdx
mov r14, r8
shr rdx, 1
cmp bx, 1
adc r8, 0xffffffffffffffff
sub rdx, r8
inc rdx
mov r13d, ecx
mov r8, rdx
inc r8
lea rcx, [rsp + 0x140]
mov rdx, rbp
call fcn.140088cd0
mov rdi, qword [rsp + 0x140]
jmp 0x1400ad179
mov rdx, qword [rsp + 0x140]
mov r15, qword [rsp + 0x148]
test rdx, rdx
je 0x1400ad4b1
mov al, 1
test al, al
mov qword [rsp + 0x68], r15
mov qword [rsp + 0x70], rdx
je 0x1400adfca
mov rax, qword [rsp + 0x50]
mov rsi, qword [rax + 0x90]
mov rcx, qword [rax + 0xa0]
mov qword [rsp + 0x78], rcx
movzx eax, byte [rax + 0xc5]
mov byte [rsp + 0xa8], al
movzx eax, byte [0x14014d230]
mov ecx, 0xc
mov edx, 2
call fcn.14000d260
test rax, rax
je 0x1400adfd1
mov ecx, 6
mov word [rax], 0x63
mov qword [rsp + 0x210], rax
mov qword [rsp + 0x218], rcx
mov qword [rsp + 0x220], 1
lea r15, [0x140110beb]
mov r12d, 1
xor ebx, ebx
lea r13, [0x140110bf9]
lea rbp, [0x140110bea]
lea rdi, [rsp + 0x210]
jmp 0x1400ad3b6
mov rax, qword [rsp + 0x210]
mov word [rax + r12*2], bx
inc r12
mov qword [rsp + 0x220], r12
mov ebx, r14d
test bx, bx
jne 0x1400ad469
cmp r15, r13
je 0x1400ad4c6
movzx ebx, byte [r15]
test bl, bl
js 0x1400ad3d8
inc r15
jmp 0x1400ad469
mov ecx, ebx
and ecx, 0x1f
movzx r8d, byte [r15 + 1]
and r8d, 0x3f
cmp bl, 0xdf
jbe 0x1400ad426
movzx edx, byte [r15 + 2]
shl r8d, 6
and edx, 0x3f
or edx, r8d
cmp bl, 0xf0
jb 0x1400ad434
movzx ebx, byte [r15 + 3]
and ecx, 7
shl ecx, 0x12
shl edx, 6
and ebx, 0x3f
or ebx, edx
or ebx, ecx
cmp ebx, 0x110000
je 0x1400ad4c6
add r15, 4
jmp 0x1400ad43f
add r15, 2
shl ecx, 6
or ecx, r8d
mov ebx, ecx
jmp 0x1400ad469
add r15, 3
shl ecx, 0xc
or edx, ecx
mov ebx, edx
cmp ebx, 0xffff
jbe 0x1400ad469
lea ecx, [rbx + 0xff0000]
shr ecx, 0xa
or ecx, 0xd800
and ebx, 0x3ff
or ebx, 0xdc00
mov r14d, ebx
mov ebx, ecx
jmp 0x1400ad46c
xor r14d, r14d
cmp r12, qword [rsp + 0x218]
jne 0x1400ad3a3
mov rax, rbp
sub rax, r15
add rax, 0x11
movabs rcx, 0xaaaaaaaaaaaaaaab
mul rcx
shr rdx, 1
cmp r14w, 1
sbb rdx, 0
lea r8, [rdx + 2]
mov rcx, rdi
mov rdx, r12
call fcn.140088cd0
jmp 0x1400ad39b
mov r12, qword [rsp + 0x60]
mov rax, qword [rsp + 0x118]
mov qword [rax], r15
jmp 0x1400ac5f8
mov rdi, qword [rsp + 0x220]
mov qword [rsp + 0xc0], rdi
movdqu xmm0, xmmword [rsp + 0x210]
movdqa xmmword [rsp + 0xb0], xmm0
cmp rdi, qword [rsp + 0xb8]
jne 0x1400ad514
lea rcx, [rsp + 0xb0]
mov rdx, rdi
call fcn.140088c10
mov r8, qword [rsp + 0xa0]
mov rdi, qword [rsp + 0xc0]
jmp 0x1400ad51c
mov r8, qword [rsp + 0xa0]
mov r14, qword [rsp + 0xb0]
mov word [r14 + rdi*2], 0x22
inc rdi
mov qword [rsp + 0xc0], rdi
lea rax, [r8 + r8]
xor ecx, ecx
lea r12, str.Windows_file_names_may_not_contain_____or_end_with___
mov rdx, qword [rsp + 0x60]
cmp rax, rcx
je 0x1400ad55d
cmp word [rdx + rcx], 0x22
lea rcx, [rcx + 2]
jne 0x1400ad548
jmp 0x1400adac1
mov rax, qword [rsp + 0x60]
movzx eax, word [rax + r8*2 - 2]
cmp ax, 0x5c
je 0x1400adac1
lea rbx, [r8 - 1]
xor r12d, r12d
test ax, ax
mov rax, qword [rsp + 0x60]
cmove r12, rax
test r12, r12
cmove rbx, r8
cmove r12, rax
mov r13, qword [rsp + 0xb8]
mov rax, r13
sub rax, rdi
cmp rax, rbx
jae 0x1400ad5ce
lea rcx, [rsp + 0xb0]
mov rdx, rdi
mov r8, rbx
call fcn.140088cd0
mov rdi, qword [rsp + 0xc0]
mov r14, qword [rsp + 0xb0]
mov r13, qword [rsp + 0xb8]
lea r8, [rbx + rbx]
lea rcx, [r14 + rdi*2]
mov rdx, r12
call sub.msvcrt.dll_memcpy
add rdi, rbx
mov qword [rsp + 0xc0], rdi
cmp rdi, r13
jne 0x1400ad60e
lea rcx, [rsp + 0xb0]
mov rdx, r13
call fcn.140088c10
mov r14, qword [rsp + 0xb0]
mov rdi, qword [rsp + 0xc0]
lea rax, [rdi + 1]
mov word [r14 + rdi*2], 0x22
mov qword [rsp + 0xc0], rax
cmp byte [rsp + 0xa8], 0
je 0x1400ada09
mov rax, qword [rsp + 0x78]
shl rax, 3
lea rbx, [rax + rax*4]
lea rdi, [rsp + 0xb0]
test rbx, rbx
je 0x1400adb19
mov rdx, qword [rsp + 0xc0]
cmp rdx, qword [rsp + 0xb8]
jne 0x1400ad66f
mov rcx, rdi
call fcn.140088c10
mov rdx, qword [rsp + 0xc0]
mov rax, qword [rsp + 0xb0]
mov word [rax + rdx*2], 0x20
inc rdx
mov qword [rsp + 0xc0], rdx
mov rcx, rdi
mov rdx, rsi
mov r8b, 1
call fcn.1400b0640
mov r12, rax
add rsi, 0x28
add rbx, 0xffffffffffffffd8
test rax, rax
je 0x1400ad644
jmp 0x1400adac1
pxor xmm0, xmm0
movdqu xmmword [rsp + 0xe4], xmm0
movdqu xmmword [rsp + 0xd8], xmm0
movdqu xmmword [rsp + 0xc8], xmm0
movdqu xmmword [rsp + 0xb8], xmm0
movdqu xmmword [rsp + 0xf8], xmm0
movdqu xmmword [rsp + 0x108], xmm0
test rdx, rdx
jne 0x1400ad6fa
test rdi, rdi
jne 0x1400ad6fa
cmp qword [rsp + 0x1b8], 0
je 0x1400ad725
mov dword [rsp + 0xec], 0x100
mov rax, qword [rsp + 0x1b8]
mov qword [rsp + 0x100], rax
mov qword [rsp + 0x108], rdi
mov qword [rsp + 0x110], rdx
mov qword [rsp + 0x1d0], rdx
mov rdx, qword [rsp + 0x50]
mov rbx, qword [rdx + 0xb8]
test rbx, rbx
je 0x1400ad857
add rdx, 0xa8
mov dword [rsp + 0xb0], 0x70
lea rcx, [rsp + 0x1f8]
call fcn.1400b11b0
mov rdx, qword [rsp + 0x1f8]
mov rcx, qword [rsp + 0x200]
test rdx, rdx
je 0x1400adb73
mov qword [rsp + 0x50], rcx
or esi, 0x80000
mov rax, qword [rsp + 0x110]
mov qword [rsp + 0x270], rax
movups xmm0, xmmword [rsp + 0x100]
movaps xmmword [rsp + 0x260], xmm0
movups xmm0, xmmword [rsp + 0xf0]
movaps xmmword [rsp + 0x250], xmm0
movdqu xmm0, xmmword [rsp + 0xb0]
movups xmm1, xmmword [rsp + 0xc0]
movups xmm2, xmmword [rsp + 0xd0]
movups xmm3, xmmword [rsp + 0xe0]
movaps xmmword [rsp + 0x240], xmm3
movaps xmmword [rsp + 0x230], xmm2
movaps xmmword [rsp + 0x220], xmm1
movdqa xmmword [rsp + 0x210], xmm0
mov qword [rsp + 0x208], rdx
mov qword [rsp + 0x278], rdx
lea rax, [rsp + 0x210]
jmp 0x1400ad86a
mov r12, rax
movdqu xmm6, xmmword [rsp + 0x218]
test r14, r14
je 0x1400ac0aa
mov edx, 1
mov rcx, qword [rsp + 0x58]
call fcn.14000d2f0
jmp 0x1400ac0aa
lea rcx, str.called__Option::unwrap____on_a__None__value
lea r8, str._rustc_82e1608dfa6e0b5569232559e3d385fea5a93112library_alloc_srccollections_btree_navigate.rs
mov edx, 0x2b
call fcn.1400112d0
jmp 0x1400adfef
mov dword [rsp + 0xb0], 0x68
lea rax, [rsp + 0xb0]
mov rdx, qword [rsp + 0x120]
lea rcx, [rsp + 0x1a0]
mov qword [rsp + 0x48], rcx
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x38], r15
mov qword [rsp + 0x30], rbp
mov dword [rsp + 0x28], esi
mov rsi, rdx
mov dword [rsp + 0x20], 1
mov rcx, qword [rsp + 0x70]
xor r8d, r8d
xor r9d, r9d
call sub.kernel32.dll_CreateProcessW
test eax, eax
je 0x1400ad9c9
movups xmm0, xmmword [rsp + 0x140]
movups xmm1, xmmword [rsp + 0x150]
movups xmm2, xmmword [rsp + 0x160]
mov rax, qword [rsp + 0x118]
movups xmmword [rax + 0x30], xmm2
movups xmmword [rax + 0x20], xmm1
movups xmmword [rax + 0x10], xmm0
movdqa xmm0, xmmword [rsp + 0x1a0]
movdqu xmmword [rax], xmm0
test rbx, rbx
je 0x1400ad905
mov rcx, qword [rsp + 0x208]
mov rdx, qword [rsp + 0x50]
call fcn.1400b1570
mov rcx, qword [rsp + 0x1d0]
call fcn.1400d0d2c
mov rcx, rdi
call fcn.1400d0d2c
mov rcx, qword [rsp + 0x1b8]
call fcn.1400d0d2c
lea rcx, [rsp + 0x80]
mov r12, qword [rsp + 0x60]
call fcn.1400b15b0
cmp qword [rsp + 0x138], 0
je 0x1400ad956
mov edx, 2
mov rcx, qword [rsp + 0x1c8]
call fcn.14000d2f0
cmp qword [rsp + 0xa0], 0
je 0x1400ad973
mov edx, 2
mov rcx, qword [rsp + 0xa8]
call fcn.14000d2f0
cmp qword [rsp + 0x128], 0
je 0x1400ad98b
mov edx, 2
mov rcx, rsi
call fcn.14000d2f0
cmp qword [rsp + 0x68], 0
je 0x1400ad9a2
mov edx, 2
mov rcx, qword [rsp + 0x70]
call fcn.14000d2f0
test r14, r14
sete al
mov ecx, dword [rsp + 0x78]
or cl, al
cmp cl, 1
je 0x1400ab541
mov edx, 2
mov rcx, r12
call fcn.14000d2f0
jmp 0x1400ab541
call sub.kernel32.dll_GetLastError
shl rax, 0x20
or rax, 2
mov rcx, qword [rsp + 0x118]
mov qword [rcx], rax
mov qword [rcx + 0x10], 2
test rbx, rbx
je 0x1400adb86
mov rcx, qword [rsp + 0x208]
mov rdx, qword [rsp + 0x50]
call fcn.1400b1570
jmp 0x1400adb86
mov rax, qword [rsp + 0x78]
lea rax, [rax + rax*4]
lea r14, [rsi + rax*8]
lea rdi, [rsp + 0xb0]
lea rbx, str._t____________
cmp rsi, r14
je 0x1400adb19
mov rdx, qword [rsp + 0xc0]
cmp rdx, qword [rsp + 0xb8]
jne 0x1400ada50
mov rcx, rdi
call fcn.140088c10
mov rdx, qword [rsp + 0xc0]
mov rax, qword [rsp + 0xb0]
mov word [rax + rdx*2], 0x20
inc rdx
mov qword [rsp + 0xc0], rdx
cmp qword [rsi], 0
je 0x1400ada73
xor ebp, ebp
jmp 0x1400adaa3
mov r15, qword [rsi + 8]
mov r12, qword [rsi + 0x18]
xor r13d, r13d
cmp r12, r13
setne bpl
je 0x1400adaa3
movzx ecx, byte [r15 + r13]
mov r8d, 0x16
mov rdx, rbx
call fcn.140016620
inc r13
cmp rax, 1
jne 0x1400ada7e
mov rcx, rdi
mov rdx, rsi
mov r8d, ebp
call fcn.1400b0640
mov r12, rax
add rsi, 0x28
test rax, rax
je 0x1400ada25
cmp qword [rsp + 0xb8], 0
je 0x1400adade
mov rcx, qword [rsp + 0xb0]
mov edx, 2
call fcn.14000d2f0
mov rax, qword [rsp + 0x118]
mov qword [rax], r12
mov qword [rax + 0x10], 2
cmp qword [rsp + 0x68], 0
mov r14, qword [rsp + 0x58]
je 0x1400adb0d
mov edx, 2
mov rcx, qword [rsp + 0x70]
call fcn.14000d2f0
xor esi, esi
mov r12, qword [rsp + 0x60]
jmp 0x1400ac602
mov rdi, qword [rsp + 0xb8]
mov rdx, qword [rsp + 0xc0]
cmp rdx, rdi
jne 0x1400adb4b
lea rcx, [rsp + 0xb0]
call fcn.140088c10
mov rdi, qword [rsp + 0xb8]
mov rdx, qword [rsp + 0xc0]
mov r14, qword [rsp + 0x58]
mov r12, qword [rsp + 0x60]
mov rax, qword [rsp + 0xb0]
mov word [rax + rdx*2], 0x22
inc rdx
mov dword [rsp + 0x78], 0
jmp 0x1400ac50a
mov rax, qword [rsp + 0x118]
mov qword [rax], rcx
mov qword [rax + 0x10], 2
mov rcx, qword [rsp + 0x1d0]
call fcn.1400d0d2c
mov rcx, rdi
call fcn.1400d0d2c
mov rcx, qword [rsp + 0x1b8]
call fcn.1400d0d2c
cmp qword [rsp + 0x140], 0
je 0x1400adbc0
mov rcx, qword [rsp + 0x148]
call fcn.1400d0d2c
cmp qword [rsp + 0x150], 0
je 0x1400adbd8
mov rcx, qword [rsp + 0x158]
call fcn.1400d0d2c
cmp qword [rsp + 0x160], 0
je 0x1400adbf0
mov rcx, qword [rsp + 0x168]
call fcn.1400d0d2c
movabs rax, 0x7fffffffffffffff
test r12b, r12b
je 0x1400adc1c
test r13b, r13b
mov r12, qword [rsp + 0x60]
jne 0x1400adc42
mov rcx, qword [0x14014d228]
test rcx, rax
je 0x1400adc42
call fcn.14008bb30
jmp 0x1400adc37
test r13b, r13b
mov r12, qword [rsp + 0x60]
jne 0x1400adc42
mov rcx, qword [0x14014d228]
test rcx, rax
je 0x1400adc42
call fcn.14008bb30
test al, al
jne 0x1400adc42
mov byte [0x14014d1c0], 1
lea rcx, [0x14014d1b8]
call fcn.1400d0f3c
cmp qword [rsp + 0x138], 0
je 0x1400adc6b
mov edx, 2
mov rcx, qword [rsp + 0x1c8]
call fcn.14000d2f0
cmp qword [rsp + 0xa0], 0
je 0x1400adc88
mov edx, 2
mov rcx, qword [rsp + 0xa8]
call fcn.14000d2f0
cmp qword [rsp + 0x128], 0
je 0x1400adca5
mov rcx, qword [rsp + 0x120]
mov edx, 2
call fcn.14000d2f0
cmp qword [rsp + 0x68], 0
je 0x1400adcbc
mov edx, 2
mov rcx, qword [rsp + 0x70]
call fcn.14000d2f0
mov sil, 1
cmp byte [rsp + 0x78], 0
jne 0x1400ab541
jmp 0x1400ac602
mov rbx, rdi
jmp 0x1400acdce
call sub.kernel32.dll_GetLastError
shl rax, 0x20
or rax, 2
mov qword [rsp + 0x80], rax
lea rax, [rsp + 0x80]
mov qword [rsp + 0x140], rax
lea rax, [fcn.1400a5960]
mov qword [rsp + 0x148], rax
lea rax, str.comparing_environment_keys_failed:
mov qword [rsp + 0xb0], rax
mov qword [rsp + 0xb8], 1
mov qword [rsp + 0xd0], 0
lea rax, [rsp + 0x140]
mov qword [rsp + 0xc0], rax
mov qword [rsp + 0xc8], 1
lea rdx, str.library_std_src_syswindowsprocess.rs
lea rcx, [rsp + 0xb0]
call fcn.140010590
jmp 0x1400adfef
lea rcx, str.called__Option::unwrap____on_a__None__value
lea r8, str._rustc_82e1608dfa6e0b5569232559e3d385fea5a93112library_alloc_srccollections_btree_navigate.rs
mov edx, 0x2b
call fcn.1400112d0
jmp 0x1400adfef
call fcn.14000d7c0
jmp 0x1400adfef
mov qword [rsp + 0x70], rdi
call fcn.14000d7c0
jmp 0x1400adfef
mov ecx, 1
mov rdx, rsi
call fcn.14000d800
jmp 0x1400adfef
call fcn.14000d7c0
jmp 0x1400adfef
mov ecx, 1
mov rdx, rdi
call fcn.14000d800
jmp 0x1400adfef
mov ecx, 2
mov rdx, r13
call fcn.14000d800
jmp 0x1400adfef
lea r8, str.library_std_src_syswindowsos.rs
mov ecx, 1
xor edx, edx
call fcn.1400105d0
jmp 0x1400adfef
lea rax, str.library_std_src_syswindowsos.rs
mov rcx, r8
mov rdx, rbx
mov r8, rax
call fcn.140010f30
jmp 0x1400adfef
lea r8, str.library_std_src_syswindowsos.rs
mov rcx, rbp
mov rdx, rbx
call fcn.1400105d0
jmp 0x1400adfef
lea rcx, str.assertion_failed:_self.height___0
lea r8, [0x14010eab0]
mov edx, 0x21
call fcn.1400112d0
jmp 0x1400adfef
mov ecx, 1
mov rdx, r12
call fcn.14000d800
jmp 0x1400adfef
lea rcx, str.internal_error:_entered_unreachable_code
lea r8, str.library_std_src_syswindowsmod.rs
mov edx, 0x28
call fcn.1400112d0
jmp 0x1400adfef
lea rcx, str.internal_error:_entered_unreachable_code
lea r8, str.library_std_src_syswindowsmod.rs
mov edx, 0x28
call fcn.1400112d0
jmp 0x1400adfef
lea rcx, str.internal_error:_entered_unreachable_code
lea r8, str.library_std_src_syswindowsmod.rs
mov edx, 0x28
call fcn.1400112d0
jmp 0x1400adfef
call sub.kernel32.dll_GetLastError
shl rax, 0x20
or rax, 2
mov qword [rsp + 0x80], rax
lea rax, [rsp + 0x80]
mov qword [rsp + 0x140], rax
lea rax, [fcn.1400a5960]
mov qword [rsp + 0x148], rax
lea rax, str.failure_getting_env_string_from_OS:
mov qword [rsp + 0x210], rax
mov qword [rsp + 0x218], 1
mov qword [rsp + 0x230], 0
lea rax, [rsp + 0x140]
mov qword [rsp + 0x220], rax
mov qword [rsp + 0x228], 1
lea rdx, str.library_std_src_syswindowsos.rs
lea rcx, [rsp + 0x210]
call fcn.140010590
jmp 0x1400adfef
call fcn.14000d7c0
jmp 0x1400adfef
lea rcx, str.internal_error:_entered_unreachable_code
lea r8, str.library_std_src_syswindowsmod.rs
mov edx, 0x28
call fcn.1400112d0
jmp 0x1400adfef
lea rax, str.library_std_src_syswindowsmod.rs
mov rcx, r8
mov rdx, r13
mov r8, rax
call fcn.140010f30
jmp 0x1400adfef
lea rax, str.library_std_src_syswindowsmod.rs
mov rcx, r8
mov rdx, r14
mov r8, rax
call fcn.140010f30
jmp 0x1400adfef
lea r8, str._rustc_82e1608dfa6e0b5569232559e3d385fea5a93112librarycore_src_sliceiter.rs
call fcn.1400105d0
jmp 0x1400adfef
lea rax, str.library_std_src_syswindowsmod.rs
mov rcx, r8
mov rdx, r14
mov r8, rax
call fcn.140010f30
jmp 0x1400adfef
lea r8, str.library_std_src_syswindowsmod.rs
mov rcx, r15
mov rdx, r13
call fcn.140010f30
jmp 0x1400adfef
call fcn.14000d7c0
jmp 0x1400adfef
mov ecx, 2
mov edx, 0xc
call fcn.14000d800
jmp 0x1400adfef
mov ecx, 2
mov rdx, r13
call fcn.14000d800
ud2