Function at 0x1400a1dfc
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, 0x668
movaps xmmword [rsp + 0x650], xmm6
mov byte [rsp + 0x160], r9b
mov rbp, rdx
mov r13, rcx
mov qword [rsp + 0x240], r8
mov al, byte [rdx + 0x68]
test al, al
sete cl
mov rdi, qword [rdx + 0x60]
test rdi, rdi
sete dl
and dl, cl
mov byte [rsp + 0xa0], dl
je 0x1400a1e51
xor edi, edi
jmp 0x1400a266c
mov qword [rsp + 0x58], r13
and qword [rsp + 0x220], 0
and qword [rsp + 0x230], 0
test al, al
mov qword [rsp + 0x80], rbp
jne 0x1400a1fe3
call sub.kernel32.dll_GetEnvironmentStringsW
test rax, rax
je 0x1400a4355
lea r14, str._opt_x86_64_gnu_build_x86_64_unknown_linux_gnu_stage1_lib_rustlib_src_rust_library_std_src_sys_windows_os.rs
lea r12, [rsp + 0x198]
lea rbp, [rsp + 0x250]
mov qword [rsp + 0x68], rax
mov r13, rax
mov rbx, r13
cmp word [r13], 0
je 0x1400a1fd1
xor eax, eax
mov rsi, rax
inc rax
cmp word [rbx + rsi*2], 0
jne 0x1400a1eb6
lea r13, [rbx + rax*2]
mov r8d, 1
mov rcx, rbx
mov rdx, rsi
mov r9, r14
call fcn.140088200
add rdx, rdx
xor r15d, r15d
test rdx, rdx
je 0x1400a1ea5
cmp word [rax + r15*2], 0x3d
je 0x1400a1ef7
inc r15
add rdx, 0xfffffffffffffffe
jmp 0x1400a1ee1
lea r8, [r15 + 1]
mov rcx, rbx
mov rdx, rsi
lea r9, str._opt_x86_64_gnu_build_x86_64_unknown_linux_gnu_stage1_lib_rustlib_src_rust_library_std_src_sys_windows_os.rs
call fcn.140086a0a
mov r8, rdx
mov rcx, r12
mov rdx, rax
call fcn.140085e39
add r15, 2
mov rcx, rbx
mov rdx, rsi
mov r8, r15
lea r9, str._opt_x86_64_gnu_build_x86_64_unknown_linux_gnu_stage1_lib_rustlib_src_rust_library_std_src_sys_windows_os.rs
call fcn.140088200
mov r8, rdx
lea rcx, [rsp + 0x270]
mov rdx, rax
call fcn.140085e39
movups xmm0, xmmword [rsp + 0x198]
movups xmm1, xmmword [rsp + 0x1a8]
movaps xmmword [rsp + 0x250], xmm0
movaps xmmword [rsp + 0xc0], xmm1
movaps xmmword [rsp + 0xb0], xmm0
movaps xmm0, xmmword [rsp + 0x270]
movaps xmm1, xmmword [rsp + 0x280]
movaps xmmword [rsp + 0xd0], xmm0
movaps xmmword [rsp + 0xe0], xmm1
cmp byte [rsp + 0xc8], 2
je 0x1400a1fd1
mov rcx, rbp
lea rdx, [rsp + 0xb0]
call fcn.1400a43b2
mov rcx, r12
lea rdx, [rsp + 0x220]
mov r8, rbp
lea r9, [rsp + 0xd0]
call fcn.14008b1d8
mov rcx, r12
call fcn.140085f02
jmp 0x1400a1ea5
mov rcx, qword [rsp + 0x68]
call sub.kernel32.dll_FreeEnvironmentStringsW
mov rbp, qword [rsp + 0x80]
lea r12, [rsp + 0x198]
and qword [r12 + 8], 0
and qword [r12 + 0x28], 0
mov rax, qword [rbp + 0x50]
mov rcx, qword [rbp + 0x58]
xor edx, edx
test rax, rax
setne dl
mov qword [r12], rdx
mov qword [r12 + 0x10], rax
mov qword [r12 + 0x18], rcx
mov qword [r12 + 0x20], rdx
mov qword [r12 + 0x30], rax
mov qword [r12 + 0x38], rcx
cmove rdi, rax
lea r13, [rsp + 0x250]
lea rbp, [rsp + 0xb0]
xorps xmm6, xmm6
test rdi, rdi
je 0x1400a2589
dec rdi
mov qword [rsp + 0x1d8], rdi
mov rcx, r12
call fcn.140084306
test rax, rax
je 0x1400a4301
mov rdi, rax
mov rcx, r13
mov rdx, rax
call fcn.14008434c
mov rsi, qword [rsp + 0x250]
test rsi, rsi
je 0x1400a4311
mov rax, qword [rsp + 0x258]
mov r14, qword [rsp + 0x260]
mov qword [rsp + 0xb0], rsi
mov qword [rsp + 0xb8], rax
mov qword [rsp + 0xc0], r14
mov rcx, r13
mov rdx, rbp
call fcn.140084399
imul rax, r14, 0x38
lea rbx, [rsi + rax]
add rbx, 0x168
shl r14, 5
mov rax, qword [rsp + 0x260]
mov qword [rdi + 0x10], rax
movups xmm0, xmmword [rsp + 0x250]
movups xmmword [rdi], xmm0
cmp byte [rsi + r14 + 0x18], 2
jne 0x1400a2335
mov rdx, qword [rsp + 0x220]
test rdx, rdx
je 0x1400a24d8
mov r8, qword [rsp + 0x228]
mov r9, qword [rbx]
mov rax, qword [rbx + 0x10]
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x1e0]
call fcn.14008a8dd
cmp qword [rsp + 0x1e0], 0
jne 0x1400a24d8
mov rax, qword [rsp + 0x1e8]
mov rdx, qword [rsp + 0x1f0]
mov rcx, qword [rsp + 0x1f8]
mov byte [rsp + 0x57], 0
test rdx, rdx
je 0x1400a23b6
dec rdx
mov rax, qword [rax + rcx*8 + 0x3d8]
movzx ecx, word [rax + 0x3d2]
sub rdx, 1
jae 0x1400a2152
dec rcx
mov qword [rsp + 0x120], rax
and qword [rsp + 0x128], 0
mov qword [rsp + 0x130], rcx
mov rcx, r13
lea rdx, [rsp + 0x120]
lea r8, [rsp + 0x57]
call fcn.14008ab94
movups xmm0, xmmword [rsp + 0x250]
movups xmm1, xmmword [rsp + 0x260]
movups xmm2, xmmword [rsp + 0x270]
movaps xmmword [rsp + 0x120], xmm0
movaps xmmword [rsp + 0x130], xmm1
movaps xmmword [rsp + 0x140], xmm2
mov rax, qword [rsp + 0x280]
mov qword [rsp + 0x150], rax
lea rsi, [rsp + 0x268]
movups xmm0, xmmword [rsi + 0x20]
movups xmm1, xmmword [rsi + 0x30]
movaps xmmword [rsp + 0x170], xmm0
movaps xmmword [rsp + 0x180], xmm1
movups xmm0, xmmword [rsi + 0x40]
movaps xmmword [rsp + 0x200], xmm0
mov rax, qword [rsi + 0x50]
mov qword [rsp + 0x210], rax
mov rcx, r13
lea rdx, [rsp + 0x200]
call fcn.14008434c
mov rcx, qword [rsp + 0x250]
mov rax, qword [rsp + 0x258]
mov rdx, qword [rsp + 0x260]
imul r8, rdx, 0x38
mov r9, rdx
shl r9, 5
mov r10, qword [rcx + r8 + 0x198]
mov qword [rsp + 0x280], r10
movups xmm0, xmmword [rcx + r8 + 0x168]
movups xmm1, xmmword [rcx + r8 + 0x178]
movups xmm2, xmmword [rcx + r8 + 0x188]
movaps xmmword [rsp + 0x270], xmm2
movaps xmmword [rsp + 0x260], xmm1
movaps xmmword [rsp + 0x250], xmm0
mov r10, qword [rsp + 0x150]
mov qword [rcx + r8 + 0x198], r10
movaps xmm0, xmmword [rsp + 0x120]
movaps xmm1, xmmword [rsp + 0x130]
movaps xmm2, xmmword [rsp + 0x140]
movups xmmword [rcx + r8 + 0x188], xmm2
movups xmmword [rcx + r8 + 0x178], xmm1
movups xmmword [rcx + r8 + 0x168], xmm0
movups xmm0, xmmword [rcx + r9]
movups xmm1, xmmword [rcx + r9 + 0x10]
movups xmmword [rsi + 0x30], xmm1
movups xmmword [rsi + 0x20], xmm0
movaps xmm0, xmmword [rsp + 0x170]
movaps xmm1, xmmword [rsp + 0x180]
movups xmmword [rcx + r9 + 0x10], xmm1
movups xmmword [rcx + r9], xmm0
inc rdx
test rax, rax
je 0x1400a23e1
lea rcx, [rcx + rdx*8]
add rcx, 0x3d8
mov rdx, qword [rcx]
lea rcx, [rdx + 0x3d8]
dec rax
jne 0x1400a230e
mov qword [rsp + 0x108], rdx
lea rax, [rsp + 0x110]
movups xmmword [rax], xmm6
jmp 0x1400a23fa
add rsi, r14
lea rdx, [rbx + 0x18]
lea rcx, [rsp + 0x268]
call fcn.1400a43f7
mov rdi, qword [rbx]
mov r14, qword [rbx + 0x10]
mov rcx, r14
call fcn.1400844c1
mov rbx, rax
mov r15, rdx
lea r8, [r14 + r14]
mov rcx, rax
mov rdx, rdi
call sub.msvcrt.dll_memcpy
mov qword [rsp + 0x250], rbx
mov qword [rsp + 0x258], r15
mov qword [rsp + 0x260], r14
mov rcx, rbp
mov rdx, rsi
call fcn.1400a43f7
lea rsi, [rsp + 0x120]
mov rcx, rsi
lea rdx, [rsp + 0x220]
mov r8, r13
mov r9, rbp
call fcn.14008b1d8
mov rcx, rsi
jmp 0x1400a24e3
mov qword [rsp + 0x250], rax
and qword [rsp + 0x258], 0
mov qword [rsp + 0x260], rcx
mov rcx, rbp
mov rdx, r13
lea r8, [rsp + 0x57]
call fcn.14008ab94
jmp 0x1400a2408
mov qword [rsp + 0x108], rcx
and qword [rsp + 0x110], 0
mov qword [rsp + 0x118], rdx
mov ecx, 0xb
mov rdi, rbp
mov rsi, r13
rep movsq qword [rdi], qword [rsi]
movups xmm0, xmmword [rsp + 0xb0]
movups xmm1, xmmword [rsp + 0xc0]
movups xmm2, xmmword [rsp + 0xd0]
movaps xmmword [rsp + 0x140], xmm2
movaps xmmword [rsp + 0x130], xmm1
movaps xmmword [rsp + 0x120], xmm0
mov bl, byte [rsp + 0xe0]
lea rax, [rsp + 0x110]
movups xmm0, xmmword [rax - 0x2f]
movups xmm1, xmmword [rax - 0x1f]
movaps xmmword [rsp + 0x170], xmm0
movaps xmmword [rsp + 0x180], xmm1
dec qword [rsp + 0x230]
mov rax, qword [rax - 0x10]
mov qword [rsp + 0x18f], rax
cmp byte [rsp + 0x57], 0
je 0x1400a24d3
mov rsi, qword [rsp + 0x220]
test rsi, rsi
lea rax, [rsp + 0x220]
cmovne rsi, rax
mov rcx, rsi
lea rdx, str._opt_x86_64_gnu_build_x86_64_unknown_linux_gnu_stage1_lib_rustlib_src_rust_library_alloc_src_collections_btree_map_entry.rs
call fcn.14008a9f2
mov rax, qword [rsi + 8]
test rax, rax
je 0x1400a4340
mov rcx, qword [rsi]
mov rdx, qword [rcx + 0x3d8]
mov qword [rsi], rdx
dec rax
mov qword [rsi + 8], rax
and qword [rdx + 0x160], 0
mov edx, 8
call fcn.140001720
cmp bl, 2
jne 0x1400a24f5
mov byte [rsp + 0xc8], 2
mov rcx, rbp
call fcn.140085f02
mov rdi, qword [rsp + 0x1d8]
jmp 0x1400a203b
movaps xmm0, xmmword [rsp + 0x120]
movaps xmm1, xmmword [rsp + 0x130]
movaps xmm2, xmmword [rsp + 0x140]
movaps xmmword [rsp + 0x270], xmm2
movaps xmmword [rsp + 0x260], xmm1
movaps xmmword [rsp + 0x250], xmm0
mov byte [rsp + 0x280], bl
mov rax, qword [rsp + 0x18f]
lea rcx, [rsp + 0x268]
mov qword [rcx + 0x38], rax
movaps xmm0, xmmword [rsp + 0x170]
movaps xmm1, xmmword [rsp + 0x180]
movups xmmword [rcx + 0x29], xmm1
movups xmmword [rcx + 0x19], xmm0
movups xmm0, xmmword [rcx + 0x20]
mov rax, qword [rcx + 0x30]
mov rcx, qword [rcx + 0x38]
movaps xmmword [rsp + 0xb0], xmm0
mov qword [rsp + 0xc0], rax
mov qword [rsp + 0xc8], rcx
mov rcx, r13
call fcn.14008823c
jmp 0x1400a24e0
mov rdi, qword [rsp + 0x220]
mov r14, qword [rsp + 0x228]
mov rbx, qword [rsp + 0x230]
mov ecx, 4
call fcn.1400867e0
mov dword [rax], 0x48544150
lea r8, [rsp + 0xb0]
mov qword [r8], rax
mov qword [r8 + 8], rdx
mov qword [r8 + 0x10], 4
mov byte [r8 + 0x18], 0
lea rcx, [rsp + 0x250]
mov rdx, r8
call fcn.1400a43b2
test rdi, rdi
mov qword [rsp + 0x68], rdi
mov qword [rsp + 0x238], r14
je 0x1400a2631
mov r9, qword [rsp + 0x250]
mov rax, qword [rsp + 0x260]
mov qword [rsp + 0x20], rax
lea rsi, [rsp + 0xb0]
mov rcx, rsi
mov rdx, rdi
mov r8, r14
call fcn.14008a8dd
cmp qword [rsi], 0
mov r13, qword [rsp + 0x58]
mov rbp, qword [rsp + 0x80]
je 0x1400a2642
xor edi, edi
jmp 0x1400a265f
xor edi, edi
mov r13, qword [rsp + 0x58]
mov rbp, qword [rsp + 0x80]
jmp 0x1400a265f
mov rax, qword [rsp + 0xb8]
mov rcx, qword [rsp + 0xc8]
shl rcx, 5
mov rdi, qword [rax + rcx]
mov r12, qword [rax + rcx + 0x10]
lea rcx, [rsp + 0x250]
call fcn.14008823c
mov r15, qword [rbp + 0x30]
mov r14, qword [rbp + 0x40]
mov qword [rsp + 0x1e0], r15
mov qword [rsp + 0x1e8], r14
lea rsi, str.program_path_has_no_file_name
test r14, r14
je 0x1400a26c7
lea r8, str.__opt_x86_64_gnu_build_x86_64_unknown_linux_gnu_stage1_lib_rustlib_src_rust_library_std_src_sys_windows_path.rs
mov r9d, 4
mov rcx, r15
mov rdx, r14
call fcn.14007c9b0
lea rcx, [0x140086768]
lea rdx, [0x14008676f]
test al, al
cmovne rdx, rcx
mov cl, byte [r14 + r15 - 1]
call rdx
test al, al
je 0x1400a2733
mov r14, qword [rsp + 0x68]
mov qword [r13], rsi
mov qword [r13 + 0x10], 2
cmp byte [rsp + 0xa0], 0
jne 0x1400a284e
test r14, r14
je 0x1400a2832
and qword [rsp + 0x258], 0
mov qword [rsp + 0x260], r14
mov rax, qword [rsp + 0x238]
mov qword [rsp + 0x268], rax
and qword [rsp + 0x278], 0
mov qword [rsp + 0x280], r14
mov qword [rsp + 0x288], rax
mov eax, 1
jmp 0x1400a2836
cmp r14, 4
mov qword [rsp + 0x78], rbx
jb 0x1400a27ed
lea r8, [r14 - 4]
lea r9, str._opt_x86_64_gnu_build_x86_64_unknown_linux_gnu_stage1_lib_rustlib_src_rust_library_std_src_sys_windows_process.rs
mov rcx, r15
mov rdx, r14
call fcn.1400a9ca6
cmp rdx, 4
jne 0x1400a27ed
mov qword [rsp + 0x20], 4
lea r9, str..exe
lea rsi, [rsp + 0x250]
mov r8d, 4
mov rcx, rsi
mov rdx, rax
call fcn.1400886f9
mov rcx, qword [rsi + 0x28]
mov r9, qword [rsi + 0x20]
mov rdx, qword [rsi]
mov r8, qword [rsi + 0x10]
cmp r9, rcx
setae al
jae 0x1400a27d6
mov r10b, byte [rdx + r9]
mov r11b, byte [r8 + r9]
inc r9
lea esi, [r10 - 0x41]
cmp sil, 0x1a
setb bl
shl bl, 5
or bl, r10b
lea r10d, [r11 - 0x41]
cmp r10b, 0x1a
setb r10b
shl r10b, 5
or r10b, r11b
cmp bl, r10b
je 0x1400a279a
mov r15, qword [rsp + 0x1e0]
mov r14, qword [rsp + 0x1e8]
mov rbx, qword [rsp + 0x78]
jmp 0x1400a27ef
xor eax, eax
lea rcx, [r15 + r14]
xor edx, edx
cmp r14, rdx
je 0x1400a287f
movzx r8d, byte [r15 + rdx]
cmp r8d, 0x2f
je 0x1400a2812
inc rdx
cmp r8d, 0x5c
jne 0x1400a27f5
test al, al
je 0x1400a28c1
lea rcx, [rsp + 0x170]
mov rdx, r15
mov r8, r14
call fcn.1400a4564
jmp 0x1400a3035
xor eax, eax
xor ebx, ebx
lea rcx, [rsp + 0x250]
mov qword [rcx], rax
mov qword [rcx + 0x20], rax
mov qword [rcx + 0x40], rbx
call fcn.140098a5c
mov rcx, qword [rsp + 0x240]
mov rdx, qword [rsp + 0x248]
call fcn.1400a50d4
movaps xmm6, xmmword [rsp + 0x650]
add rsp, 0x668
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea rsi, [rsp + 0x250]
mov qword [rsi], r15
mov qword [rsi + 8], rcx
and word [rsi + 0x10], 0
mov rcx, rsi
call fcn.14008462e
cmp ax, 1
jne 0x1400a28a6
test dx, dx
jne 0x1400a2893
cmp ax, 1
jne 0x1400a29d4
lea rsi, str.nul_byte_found_in_provided_data
mov rbx, qword [rsp + 0x78]
jmp 0x1400a26c7
mov rcx, r14
call fcn.1400867e0
mov rsi, rax
mov rdi, rdx
mov rcx, rax
mov rdx, r15
mov r8, r14
call sub.msvcrt.dll_memcpy
mov qword [rsp + 0xb0], rsi
mov qword [rsp + 0xb8], rdi
mov qword [rsp + 0xc0], r14
mov byte [rsp + 0xc8], 0
mov rax, qword [rsp + 0xc0]
mov cl, byte [rsp + 0xc8]
mov edx, dword [rsp + 0xc9]
movzx r8d, word [rsp + 0xcd]
mov r9b, byte [rsp + 0xcf]
lea rsi, [rsp + 0x250]
mov qword [rsi + 0x10], rax
mov byte [rsi + 0x18], cl
mov dword [rsi + 0x19], edx
mov word [rsi + 0x1d], r8w
mov byte [rsi + 0x1f], r9b
mov rax, qword [rsp + 0xb0]
mov qword [rsi], rax
mov rax, qword [rsp + 0xb8]
mov qword [rsi + 8], rax
lea rdx, str..exe
mov r8d, 4
mov rcx, rsi
call fcn.14009f81d
movaps xmm0, xmmword [rsi]
movaps xmm1, xmmword [rsi + 0x10]
movaps xmmword [rsp + 0xc0], xmm1
movaps xmmword [rsp + 0xb0], xmm0
mov rdi, qword [rsp + 0xb0]
mov r8, qword [rsp + 0xc0]
lea rsi, [rsp + 0x250]
mov rcx, rsi
mov rdx, rdi
call fcn.1400a44f8
cmp qword [rsi], 0
je 0x1400a2af6
mov rax, qword [rsp + 0x260]
mov qword [rsp + 0x180], rax
movups xmm0, xmmword [rsp + 0x250]
movaps xmmword [rsp + 0x170], xmm0
jmp 0x1400a2b27
mov qword [rsp + 0x80], rbp
mov qword [rsp + 0x58], r13
mov rcx, r15
mov rdx, r14
mov r8b, 0x2e
call fcn.1400a444e
mov byte [rsp + 0x200], al
test rdi, rdi
je 0x1400a2b4e
add r12, rdi
lea r14, [rsp + 0x198]
mov qword [r14], rdi
mov qword [r14 + 8], r12
and word [r14 + 0x10], 0
mov byte [r14 + 0x18], 1
lea r13, [rsp + 0xc9]
lea rbp, [rsp + 0x269]
lea r15, [rsp + 0x250]
lea rbx, [rsp + 0x1e0]
lea rdi, [rsp + 0xb0]
mov rcx, r15
mov rdx, r14
call fcn.14009f778
mov al, byte [rsp + 0x268]
cmp al, 2
je 0x1400a2b41
cmp qword [rsp + 0x260], 0
je 0x1400a2adc
mov rcx, qword [rsp + 0x260]
mov qword [rsp + 0xc0], rcx
movups xmm0, xmmword [rsp + 0x250]
movaps xmmword [rsp + 0xb0], xmm0
mov ecx, dword [rbp]
mov edx, dword [rbp + 3]
mov dword [r13 + 3], edx
mov dword [r13], ecx
mov byte [rsp + 0xc8], al
mov rcx, r15
mov rdx, rbx
lea r8, [rsp + 0x200]
mov r9, rdi
call fcn.1400a446e
mov rsi, qword [rsp + 0x250]
mov r12, qword [rsp + 0x258]
test rsi, rsi
jne 0x1400a2d2d
xor ecx, ecx
mov rdx, r12
call fcn.1400a44cf
jmp 0x1400a2a44
mov rcx, qword [rsp + 0x250]
mov rdx, qword [rsp + 0x258]
call fcn.14005a6df
jmp 0x1400a2a44
lea rdx, [0x14012e9b0]
lea rsi, [rsp + 0xb0]
mov rcx, rsi
xor r8d, r8d
call fcn.1400a1a0e
mov rdi, qword [rsi]
mov r8, qword [rsi + 0x10]
lea rcx, [rsp + 0x170]
mov rdx, rdi
call fcn.1400a4564
mov r14, qword [rsp + 0x68]
mov rdx, qword [rsp + 0xb8]
mov rcx, rdi
call fcn.14005a6df
jmp 0x1400a303a
lea rcx, [rsp + 0x250]
call fcn.140085f02
lea rax, [rsp + 0x198]
mov qword [rax], 2
xorps xmm0, xmm0
movups xmmword [rax + 8], xmm0
mov r8d, 0x200
mov r14d, 2
xor r15d, r15d
mov ebx, 0xffffffff
xor ebp, ebp
cmp r8, 0x201
jae 0x1400a2b96
lea rdi, [rsp + 0x250]
mov r12d, 0x200
mov r13, r8
jmp 0x1400a2bd6
sub r8, rbp
lea rcx, [rsp + 0x198]
mov rdx, r8
call fcn.140084513
mov r14, qword [rsp + 0x198]
mov r15, qword [rsp + 0x1a0]
cmp r15, rbx
mov ebp, 0xffffffff
cmovb rbp, r15
mov qword [rsp + 0x1a8], rbp
mov rdi, r14
mov r12, rbp
mov r13, rbp
xor ecx, ecx
call sub.kernel32.dll_SetLastError
xor ecx, ecx
mov rdx, rdi
mov r8d, r13d
call sub.kernel32.dll_GetModuleFileNameW
mov esi, eax
test eax, eax
jne 0x1400a2bf9
call sub.kernel32.dll_GetLastError
test eax, eax
jne 0x1400a2c5e
mov r8d, esi
cmp r13, r8
jne 0x1400a2c2b
call sub.kernel32.dll_GetLastError
cmp eax, 0x7a
jne 0x1400a432b
add r13, r13
mov eax, 0xffffffff
cmp r13, rax
mov ebx, 0xffffffff
cmovae r13, rax
mov r8, r13
jmp 0x1400a2b7a
jb 0x1400a2b7a
lea r9, str._opt_x86_64_gnu_build_x86_64_unknown_linux_gnu_stage1_lib_rustlib_src_rust_library_std_src_sys_windows_mod.rs
mov rcx, rdi
mov rdx, r12
call fcn.140086816
mov r8, rdx
lea rsi, [rsp + 0xb0]
mov rcx, rsi
mov rdx, rax
call fcn.140085e39
mov bl, byte [rsi + 0x18]
jmp 0x1400a2c75
call fcn.14006b867
mov qword [rsp + 0xb0], rax
mov byte [rsp + 0xc8], 2
mov bl, 2
mov r13, qword [rsp + 0x58]
mov rcx, r14
mov rdx, r15
call fcn.140085884
cmp bl, 2
mov rbp, qword [rsp + 0x80]
jne 0x1400a2ca4
lea rcx, [rsp + 0xb0]
call fcn.140085e20
jmp 0x1400a2d44
mov rsi, qword [rsp + 0xb0]
mov rbx, qword [rsp + 0xb8]
mov rdi, qword [rsp + 0xc0]
mov rcx, rsi
mov rdx, rdi
call fcn.1400a0c2e
cmp rdi, rdx
cmovb rdx, rdi
test rax, rax
cmove rdx, rdi
lea r9, [rsp + 0x250]
mov qword [r9], rsi
mov qword [r9 + 8], rbx
mov qword [r9 + 0x10], rdx
mov rax, qword [rsp + 0xc8]
mov qword [r9 + 0x18], rax
lea rdi, [rsp + 0x198]
lea rdx, [rsp + 0x1e0]
lea r8, [rsp + 0x200]
mov rcx, rdi
call fcn.1400a446e
mov rsi, qword [rdi]
mov r12, qword [rdi + 8]
test rsi, rsi
je 0x1400a2d3a
mov rdi, qword [rsp + 0x1a8]
jmp 0x1400a3018
mov rdi, qword [rsp + 0x260]
jmp 0x1400a300b
xor ecx, ecx
mov rdx, r12
call fcn.1400a44cf
lea rax, [rsp + 0x120]
mov qword [rax], 2
xorps xmm0, xmm0
movups xmmword [rax + 8], xmm0
mov r8d, 0x200
mov r14d, 2
xor ebx, ebx
mov ebp, 0xffffffff
xor r13d, r13d
cmp r8, 0x201
jae 0x1400a2d8c
lea r12, [rsp + 0x250]
mov r15d, 0x200
mov rdi, r8
jmp 0x1400a2dcd
sub r8, r13
lea rcx, [rsp + 0x120]
mov rdx, r8
call fcn.140084513
mov r14, qword [rsp + 0x120]
mov rbx, qword [rsp + 0x128]
cmp rbx, rbp
mov r13d, 0xffffffff
cmovb r13, rbx
mov qword [rsp + 0x130], r13
mov r12, r14
mov r15, r13
mov rdi, r13
xor ecx, ecx
call sub.kernel32.dll_SetLastError
mov rcx, r12
mov edx, edi
call sub.kernel32.dll_GetSystemDirectoryW
mov esi, eax
test eax, eax
jne 0x1400a2df1
call sub.kernel32.dll_GetLastError
test eax, eax
jne 0x1400a2e88
mov r8d, esi
cmp rdi, r8
jne 0x1400a2e19
call sub.kernel32.dll_GetLastError
cmp eax, 0x7a
jne 0x1400a432b
add rdi, rdi
cmp rdi, rbp
cmovae rdi, rbp
mov r8, rdi
jmp 0x1400a2d70
jb 0x1400a2d70
lea r9, str._opt_x86_64_gnu_build_x86_64_unknown_linux_gnu_stage1_lib_rustlib_src_rust_library_std_src_sys_windows_mod.rs
mov rcx, r12
mov rdx, r15
call fcn.140086816
mov r8, rdx
lea rsi, [rsp + 0xb0]
mov rcx, rsi
mov rdx, rax
call fcn.140085e39
lea rdi, [rsp + 0x1a0]
lea rdx, [rsp + 0x1e0]
lea r8, [rsp + 0x200]
mov rcx, rdi
mov r9, rsi
call fcn.1400a446e
and qword [rdi - 8], 0
mov rcx, r14
mov rdx, rbx
call fcn.140085884
mov rsi, qword [rdi]
test rsi, rsi
jne 0x1400a2ffb
jmp 0x1400a2eac
call fcn.14006b867
mov qword [rsp + 0x1a0], rax
mov qword [rsp + 0x198], 1
mov rcx, r14
mov rdx, rbx
call fcn.140085884
lea rcx, [rsp + 0x198]
call fcn.1400a44d9
lea rax, [rsp + 0x120]
mov qword [rax], 2
xorps xmm0, xmm0
movups xmmword [rax + 8], xmm0
mov r8d, 0x200
mov r14d, 2
xor ebx, ebx
mov ebp, 0xffffffff
xor r13d, r13d
cmp r8, 0x201
jae 0x1400a2f01
lea r12, [rsp + 0x250]
mov r15d, 0x200
mov rdi, r8
jmp 0x1400a2f42
sub r8, r13
lea rcx, [rsp + 0x120]
mov rdx, r8
call fcn.140084513
mov r14, qword [rsp + 0x120]
mov rbx, qword [rsp + 0x128]
cmp rbx, rbp
mov r13d, 0xffffffff
cmovb r13, rbx
mov qword [rsp + 0x130], r13
mov r12, r14
mov r15, r13
mov rdi, r13
xor ecx, ecx
call sub.kernel32.dll_SetLastError
mov rcx, r12
mov edx, edi
call sub.kernel32.dll_GetWindowsDirectoryW
mov esi, eax
test eax, eax
jne 0x1400a2f66
call sub.kernel32.dll_GetLastError
test eax, eax
jne 0x1400a3533
mov r8d, esi
cmp rdi, r8
jne 0x1400a2f8e
call sub.kernel32.dll_GetLastError
cmp eax, 0x7a
jne 0x1400a432b
add rdi, rdi
cmp rdi, rbp
cmovae rdi, rbp
mov r8, rdi
jmp 0x1400a2ee5
jb 0x1400a2ee5
lea r9, str._opt_x86_64_gnu_build_x86_64_unknown_linux_gnu_stage1_lib_rustlib_src_rust_library_std_src_sys_windows_mod.rs
mov rcx, r12
mov rdx, r15
call fcn.140086816
mov r8, rdx
lea rsi, [rsp + 0xb0]
mov rcx, rsi
mov rdx, rax
call fcn.140085e39
lea rdi, [rsp + 0x1a0]
lea rdx, [rsp + 0x1e0]
lea r8, [rsp + 0x200]
mov rcx, rdi
mov r9, rsi
call fcn.1400a446e
and qword [rdi - 8], 0
mov rcx, r14
mov rdx, rbx
call fcn.140085884
mov rsi, qword [rdi]
test rsi, rsi
je 0x1400a3557
mov r12, qword [rsp + 0x1a8]
mov rdi, qword [rsp + 0x1b0]
mov r13, qword [rsp + 0x58]
mov rbp, qword [rsp + 0x80]
mov rbx, qword [rsp + 0x78]
mov qword [rsp + 0x170], rsi
mov qword [rsp + 0x178], r12
mov qword [rsp + 0x180], rdi
mov r14, qword [rsp + 0x68]
mov rdx, qword [rsp + 0x170]
test rdx, rdx
je 0x1400a313b
mov rax, qword [rsp + 0x178]
mov qword [rsp + 0xa8], rax
mov r8, qword [rsp + 0x180]
cmp r8, 4
mov qword [rsp + 0x70], rdx
jbe 0x1400a3084
cmp word [rdx + r8*2 - 0xa], 0x2e
jne 0x1400a3084
cmp word [rdx + r8*2 - 2], 0
je 0x1400a347e
mov r14, qword [rbp + 0x30]
mov r12, qword [rbp + 0x90]
mov bl, byte [rbp + 0xad]
mov r15, qword [rbp + 0x40]
add r15, r14
imul rsi, qword [rbp + 0xa0], 0x28
lea rdi, [rsp + 0xb0]
mov qword [rdi], 2
xorps xmm0, xmm0
movups xmmword [rdi + 8], xmm0
mov rcx, rdi
mov dx, 0x22
call fcn.140099c13
lea rdx, [rsp + 0x250]
mov qword [rdx], r14
mov qword [rdx + 8], r15
and word [rdx + 0x10], 0
mov rcx, rdi
call fcn.140099b25
mov rcx, rdi
mov dx, 0x22
call fcn.140099c13
test rsi, rsi
je 0x1400a3148
lea r15, [r12 + 0x28]
mov rcx, rdi
mov dx, 0x20
call fcn.140099c13
mov rcx, rdi
mov rdx, r12
mov r8d, ebx
call fcn.1400a4acc
add rsi, 0xffffffffffffffd8
mov r12, r15
test rax, rax
je 0x1400a30ee
mov r14, rax
mov rcx, qword [rsp + 0xb0]
mov rdx, qword [rsp + 0xb8]
call fcn.140085884
jmp 0x1400a344e
mov rsi, qword [rsp + 0x178]
jmp 0x1400a26cc
mov rax, qword [rsp + 0xb0]
mov r14, qword [rsp + 0xb8]
test rax, rax
je 0x1400a344e
mov rdx, qword [rsp + 0xc0]
mov cl, 1
mov dword [rsp + 0x64], ecx
mov dword [rsp + 0x16c], 0
mov rcx, qword [rsp + 0x70]
mov qword [rsp + 0x90], rcx
mov rcx, qword [rsp + 0xa8]
mov qword [rsp + 0x88], rcx
mov rsi, qword [rsp + 0x78]
lea rcx, [rsp + 0x1e0]
mov qword [rcx], rax
mov qword [rcx + 8], r14
mov qword [rcx + 0x10], rdx
xor r12d, r12d
xor edx, edx
call fcn.140099c13
cmp byte [rbp + 0xac], 0
mov eax, 0x400
mov ecx, 0x608
cmove ecx, eax
or ecx, dword [rbp + 0xa8]
mov dword [rsp + 0x218], ecx
mov eax, 2
mov qword [rsp + 0x98], rax
mov r15d, 0
mov edi, 2
cmp byte [rsp + 0xa0], 0
jne 0x1400a34e3
mov qword [rsp + 0x80], rbp
mov qword [rsp + 0x58], r13
mov qword [rsp + 0x170], 2
xorps xmm0, xmm0
movups xmmword [rsp + 0x178], xmm0
test rsi, rsi
jne 0x1400a3238
lea rcx, [rsp + 0x170]
xor edx, edx
call fcn.140099c13
xor eax, eax
mov rcx, qword [rsp + 0x68]
test rcx, rcx
setne al
cmove rsi, rcx
lea r8, [rsp + 0x250]
mov qword [r8], rax
and qword [r8 + 8], 0
mov qword [r8 + 0x10], rcx
mov rdx, qword [rsp + 0x238]
mov qword [r8 + 0x18], rdx
mov qword [r8 + 0x20], rax
and qword [r8 + 0x28], 0
mov qword [r8 + 0x30], rcx
mov qword [r8 + 0x38], rdx
mov qword [r8 + 0x40], rsi
lea r13, [rsp + 0xc9]
lea r12, [rsp + 0xb0]
lea r14, [rsp + 0x198]
lea rbp, [rsp + 0x170]
mov rcx, r12
lea rdx, [rsp + 0x250]
call fcn.140085525
mov rax, qword [rsp + 0xb0]
test rax, rax
je 0x1400a34ad
mov rdx, qword [rsp + 0xc0]
imul r8, rdx, 0x38
mov cl, byte [rax + r8 + 0x198]
cmp cl, 2
je 0x1400a34ad
add r8, rax
add r8, 0x168
mov r15, qword [r8]
mov r9, qword [r8 + 8]
mov qword [rsp + 0xa0], r9
mov rsi, qword [r8 + 0x10]
shl rdx, 5
lea r9, [rax + rdx]
mov rdi, qword [rax + rdx]
mov rax, qword [rax + rdx + 8]
mov qword [rsp + 0x68], rax
mov rax, qword [r8 + 0x28]
mov qword [rsp + 0xc0], rax
movups xmm0, xmmword [r8 + 0x18]
movaps xmmword [rsp + 0xb0], xmm0
mov byte [rsp + 0xc8], cl
mov eax, dword [r8 + 0x31]
mov ecx, dword [r8 + 0x34]
mov dword [r13 + 3], ecx
mov dword [r13], eax
movups xmm0, xmmword [r9 + 0x10]
movaps xmmword [rsp + 0x200], xmm0
mov rcx, r14
mov rdx, r12
call fcn.1400a4c63
cmp byte [rsp + 0x1b0], 2
mov rbx, r13
mov r13, qword [rsp + 0x198]
je 0x1400a3868
mov rdx, qword [rsp + 0x1a0]
mov rcx, r13
call fcn.14005a6df
mov rcx, rbp
mov rdx, r15
mov r8, rsi
call fcn.140085842
mov rcx, r15
mov rdx, qword [rsp + 0xa0]
call fcn.140085884
mov rcx, rbp
mov dx, 0x3d
call fcn.140099c13
mov qword [rsp + 0xb0], rdi
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0xb8], rax
movaps xmm0, xmmword [rsp + 0x200]
mov rsi, rbx
movups xmmword [rbx - 9], xmm0
mov r15, r14
mov rcx, r14
mov rdx, r12
call fcn.1400a4c63
cmp byte [rsp + 0x1b0], 2
mov r13, qword [rsp + 0x198]
je 0x1400a3885
mov rdi, qword [rsp + 0x1a0]
mov rax, qword [rsp + 0x1a8]
add rax, r13
mov qword [rsp + 0x120], r13
mov qword [rsp + 0x128], rax
and word [rsp + 0x130], 0
mov rcx, rbp
lea rdx, [rsp + 0x120]
call fcn.140099b25
mov rcx, r13
mov rdx, rdi
call fcn.14005a6df
mov rcx, rbp
xor edx, edx
call fcn.140099c13
mov r13, rsi
mov r14, r15
jmp 0x1400a329e
mov rbx, qword [rsp + 0x78]
mov r15, qword [rsp + 0x70]
mov qword [r13], r14
mov qword [r13 + 0x10], 2
mov r14, qword [rsp + 0x68]
mov rcx, r15
mov rdx, qword [rsp + 0xa8]
call fcn.140085884
jmp 0x1400a26d8
movzx eax, word [rdx + r8*2 - 8]
cmp eax, 0x42
je 0x1400a38d5
cmp eax, 0x43
je 0x1400a38fb
cmp eax, 0x62
je 0x1400a38d5
cmp eax, 0x63
je 0x1400a38fb
jmp 0x1400a3084
lea rcx, [rsp + 0x250]
call fcn.140098a5c
lea rsi, [rsp + 0x170]
mov rcx, rsi
xor edx, edx
call fcn.140099c13
mov r15, qword [rsi]
mov r12, qword [rsi + 8]
mov rdi, r15
mov r13, qword [rsp + 0x58]
mov rbp, qword [rsp + 0x80]
xor eax, eax
cmp byte [rbp + 0x88], 2
mov ecx, 0
je 0x1400a36eb
lea rcx, [rbp + 0x70]
call fcn.1400a4ce2
test rax, rax
je 0x1400a36a4
mov qword [r13], rdx
mov qword [r13 + 0x10], 2
mov rsi, qword [rsp + 0x70]
mov rbx, qword [rsp + 0x88]
mov r14, qword [rsp + 0x90]
mov ebp, dword [rsp + 0x64]
jmp 0x1400a3b52
call fcn.14006b867
mov qword [rsp + 0x1a0], rax
mov qword [rsp + 0x198], 1
mov rcx, r14
mov rdx, rbx
call fcn.140085884
lea rcx, [rsp + 0x198]
call fcn.1400a44d9
lea rdx, str.PATH_opt_x86_64_gnu_build_x86_64_unknown_linux_gnu_stage1_lib_rustlib_src_rust_library_std_src_sys_common_process.rs
lea rsi, [rsp + 0x120]
mov r8d, 4
mov rcx, rsi
call fcn.14009a189
cmp byte [rsi + 0x18], 2
je 0x1400a3a7c
mov rcx, qword [rsp + 0x120]
mov rax, qword [rsp + 0x130]
add rax, rcx
lea r15, [rsp + 0x198]
mov qword [rsp + 0x70], rcx
mov qword [r15], rcx
mov qword [r15 + 8], rax
and word [r15 + 0x10], 0
mov rax, qword [rsp + 0x128]
mov qword [rsp + 0xa8], rax
mov byte [r15 + 0x18], 1
lea rbx, [rsp + 0xc9]
lea rbp, [rsp + 0x269]
lea r13, [rsp + 0x250]
lea rdi, [rsp + 0x200]
lea r14, [rsp + 0xb0]
mov rcx, r13
mov rdx, r15
call fcn.14009f778
mov al, byte [rsp + 0x268]
cmp al, 2
je 0x1400a3a5d
cmp qword [rsp + 0x260], 0
je 0x1400a368a
mov rcx, qword [rsp + 0x260]
mov qword [rsp + 0xc0], rcx
movups xmm0, xmmword [rsp + 0x250]
movaps xmmword [rsp + 0xb0], xmm0
mov ecx, dword [rbp]
mov edx, dword [rbp + 3]
mov dword [rbx + 3], edx
mov dword [rbx], ecx
mov byte [rsp + 0xc8], al
mov rcx, r13
lea rdx, [rsp + 0x1e0]
mov r8, rdi
mov r9, r14
call fcn.1400a446e
mov rsi, qword [rsp + 0x250]
mov r12, qword [rsp + 0x258]
test rsi, rsi
jne 0x1400a3b9b
xor ecx, ecx
mov rdx, r12
call fcn.1400a44cf
jmp 0x1400a35f5
mov rcx, qword [rsp + 0x250]
mov rdx, qword [rsp + 0x258]
call fcn.14005a6df
jmp 0x1400a35f5
mov rax, qword [rdx]
mov rcx, qword [rdx + 0x10]
add rcx, rax
lea rdx, [rsp + 0x250]
mov qword [rdx], rax
mov qword [rdx + 8], rcx
and word [rdx + 0x10], 0
lea rsi, [rsp + 0xb0]
mov rcx, rsi
call fcn.1400a4d3a
mov rcx, rsi
xor edx, edx
call fcn.140099c13
mov rcx, qword [rsi]
mov rax, qword [rsi + 8]
mov qword [rsp + 0x98], rcx
mov qword [rsp + 0x58], rcx
mov qword [rsp + 0xa0], rax
mov qword [rsp + 0x68], rdi
mov rdi, r12
xorps xmm0, xmm0
movaps xmmword [rsp + 0x120], xmm0
and qword [rsp + 0x130], 0
lea rdx, [0x140155160]
lea rcx, [rsp + 0x198]
call fcn.14009e3fa
and qword [rsp + 0xb0], 0
and qword [rsp + 0xc0], 0
and qword [rsp + 0xd0], 0
lea rdx, [rsp + 0x170]
mov qword [rdx], 1
mov rcx, qword [rbp]
cmp byte [rsp + 0x160], 0
lea r14, [rsp + 0x240]
cmovne rdx, r14
lea r12, [rsp + 0x248]
lea rax, [rsp + 0x200]
cmovne rax, r12
cmp rcx, 5
jne 0x1400a3789
mov rcx, qword [rdx]
jmp 0x1400a378d
lea rax, [rbp + 8]
mov rbx, qword [rbp + 0x10]
mov rsi, qword [rbp + 0x20]
mov rdx, qword [rax]
lea r9, [rsp + 0xb0]
mov r8d, 0xfffffff6
call fcn.1400a4df8
test rax, rax
je 0x1400a37ea
mov qword [r13], rdx
mov qword [r13 + 0x10], 2
mov rsi, qword [rsp + 0x70]
mov rbx, qword [rsp + 0x88]
mov r14, qword [rsp + 0x90]
mov ebp, dword [rsp + 0x64]
mov r15, qword [rsp + 0x98]
mov r12, rdi
mov rdi, qword [rsp + 0x68]
jmp 0x1400a3b1e
mov qword [rsp + 0x160], rdx
lea r9, [rsp + 0xc0]
lea rax, [rbp + 0x10]
cmp rbx, 5
cmove rax, r14
lea rdx, [rbp + 0x18]
cmp ebx, 5
mov rcx, qword [rax]
cmove rdx, r12
mov rdx, qword [rdx]
mov r8d, 0xfffffff5
call fcn.1400a4df8
mov rbx, rdx
test rax, rax
je 0x1400a3a94
mov qword [r13], rbx
mov qword [r13 + 0x10], 2
mov rsi, qword [rsp + 0x70]
mov rbx, qword [rsp + 0x88]
mov r14, qword [rsp + 0x90]
mov ebp, dword [rsp + 0x64]
mov r15, qword [rsp + 0x98]
mov r12, rdi
mov rdi, qword [rsp + 0x68]
jmp 0x1400a3b11
mov rcx, rdi
mov rdx, qword [rsp + 0x68]
call fcn.14005a6df
mov rcx, r15
mov rdx, qword [rsp + 0xa0]
call fcn.140085884
mov rsi, qword [rsp + 0x70]
mov rbx, qword [rsp + 0x88]
mov r14, qword [rsp + 0x90]
mov ebp, dword [rsp + 0x64]
lea rcx, [rsp + 0x250]
call fcn.140098a5c
mov rcx, qword [rsp + 0x170]
mov rdx, qword [rsp + 0x178]
call fcn.140085884
mov rax, qword [rsp + 0x58]
mov qword [rax], r13
mov qword [rax + 0x10], 2
jmp 0x1400a3b5d
movzx ecx, word [rdx + r8*2 - 6]
or ecx, 0x20
cmp ecx, 0x61
jne 0x1400a38f1
movzx ecx, word [rdx + r8*2 - 4]
or ecx, 0x20
cmp ecx, 0x74
je 0x1400a3920
cmp ax, 0x43
jne 0x1400a3084
movzx eax, word [rdx + r8*2 - 6]
or eax, 0x20
cmp eax, 0x6d
jne 0x1400a3084
movzx eax, word [rdx + r8*2 - 4]
add eax, 0xffffffbc
test ax, 0xffdf
jne 0x1400a3084
mov qword [rsp + 0x218], r8
mov qword [rsp + 0x80], rbp
mov qword [rsp + 0x58], r13
lea rax, [rsp + 0xb0]
mov qword [rax], 2
xorps xmm0, xmm0
movups xmmword [rax + 8], xmm0
mov r8d, 0x200
mov r14d, 2
xor r13d, r13d
mov ebx, 0xffffffff
xor r12d, r12d
cmp r8, 0x201
jae 0x1400a397e
lea rbp, [rsp + 0x250]
mov r15d, 0x200
mov rdi, r8
jmp 0x1400a39bf
sub r8, r12
lea rcx, [rsp + 0xb0]
mov rdx, r8
call fcn.140084513
mov r14, qword [rsp + 0xb0]
mov r13, qword [rsp + 0xb8]
cmp r13, rbx
mov r12d, 0xffffffff
cmovb r12, r13
mov qword [rsp + 0xc0], r12
mov rbp, r14
mov r15, r12
mov rdi, r12
xor ecx, ecx
call sub.kernel32.dll_SetLastError
mov rcx, rbp
mov edx, edi
call sub.kernel32.dll_GetSystemDirectoryW
mov esi, eax
test eax, eax
jne 0x1400a39e3
call sub.kernel32.dll_GetLastError
test eax, eax
jne 0x1400a3bba
mov r8d, esi
cmp rdi, r8
jne 0x1400a3a0b
call sub.kernel32.dll_GetLastError
cmp eax, 0x7a
jne 0x1400a432b
add rdi, rdi
cmp rdi, rbx
cmovae rdi, rbx
mov r8, rdi
jmp 0x1400a3962
jb 0x1400a3962
lea r9, str._opt_x86_64_gnu_build_x86_64_unknown_linux_gnu_stage1_lib_rustlib_src_rust_library_std_src_sys_windows_mod.rs
mov rcx, rbp
mov rdx, r15
call fcn.140086816
mov rsi, rax
mov rbx, rdx
mov rcx, rdx
call fcn.1400844c1
mov rbp, rax
mov rdi, rdx
mov r8, rbx
add r8, rbx
mov rcx, rax
mov rdx, rsi
call sub.msvcrt.dll_memcpy
mov r14, qword [rsp + 0xb0]
mov r13, qword [rsp + 0xb8]
jmp 0x1400a3bc4
lea rcx, [rsp + 0x250]
call fcn.140085f02
mov rcx, qword [rsp + 0x70]
mov rdx, qword [rsp + 0xa8]
call fcn.14005a6df
xor ecx, ecx
call fcn.1400a44cf
lea rsi, str.program_not_found
mov r13, qword [rsp + 0x58]
jmp 0x1400a28b7
lea r9, [rsp + 0xd0]
lea rax, [rbp + 0x20]
cmp rsi, 5
cmove rax, r14
add rbp, 0x28
cmp esi, 5
mov rcx, qword [rax]
cmove rbp, r12
mov rdx, qword [rbp]
mov r8d, 0xfffffff4
call fcn.1400a4df8
mov rsi, rdx
test rax, rax
je 0x1400a3ede
mov rbp, rbx
mov qword [r13], rsi
mov qword [r13 + 0x10], 2
mov rsi, qword [rsp + 0x70]
mov rbx, qword [rsp + 0x88]
mov r14, qword [rsp + 0x90]
mov r15, qword [rsp + 0x98]
mov r12, rdi
mov rdi, qword [rsp + 0x68]
mov rcx, rbp
call sub.kernel32.dll_CloseHandle
mov ebp, dword [rsp + 0x64]
mov rcx, qword [rsp + 0x160]
call sub.kernel32.dll_CloseHandle
mov ecx, 1
call fcn.1400a50d4
lea rcx, [rsp + 0xb0]
call fcn.1400a50e3
lea rcx, [rsp + 0x1a0]
call fcn.14009a74e
mov rcx, r15
mov rdx, qword [rsp + 0xa0]
call fcn.140085884
mov rcx, rdi
mov rdx, r12
call fcn.140085884
mov rcx, qword [rsp + 0x1e0]
mov rdx, qword [rsp + 0x1e8]
call fcn.140085884
mov rcx, r14
mov rdx, rbx
call fcn.140085884
test bpl, bpl
jne 0x1400a284e
mov rcx, rsi
mov rdx, qword [rsp + 0xa8]
call fcn.140085884
jmp 0x1400a284e
mov rdi, qword [rsp + 0x260]
mov rcx, qword [rsp + 0x70]
mov rdx, qword [rsp + 0xa8]
call fcn.14005a6df
jmp 0x1400a300b
xor ebp, ebp
call fcn.14006b867
mov rdi, rax
mov rcx, r14
mov rdx, r13
call fcn.140085884
test rbp, rbp
je 0x1400a3ec2
lea r12, [rsp + 0x198]
mov qword [r12], rbp
mov qword [r12 + 8], rdi
mov qword [r12 + 0x10], rbx
mov eax, 1
lea r13, [rsp + 0x270]
mov qword [r13 - 0x20], rax
and qword [r13 - 0x18], 0
mov qword [r13 - 0x10], rax
and word [r13 - 8], 0
lea rdi, [0x14012964e]
mov qword [r13], rdi
lea rax, [0x140129656]
mov qword [r13 + 8], rax
and word [r13 + 0x10], 0
mov esi, 3
mov r15, qword [rsp + 0x70]
test rdi, rdi
je 0x1400a3c54
mov rcx, r13
call fcn.140084f79
test ax, ax
je 0x1400a3c4b
mov r14d, edx
jmp 0x1400a3c8e
and qword [rsp + 0x270], 0
cmp qword [rsp + 0x250], 0
je 0x1400a3d4e
mov rax, qword [rsp + 0x258]
cmp qword [rsp + 0x260], rax
je 0x1400a3d4e
lea rcx, [rax + 1]
mov qword [rsp + 0x258], rcx
movzx r14d, word [rsp + rax*2 + 0x268]
mov rdi, qword [rsp + 0x270]
cmp rbx, qword [rsp + 0x1a0]
jne 0x1400a3d38
mov rcx, qword [rsp + 0x250]
test rdi, rdi
je 0x1400a3d00
mov rax, qword [rsp + 0x278]
sub rax, rdi
movzx r8d, word [rsp + 0x280]
add rax, 2
xor edx, edx
div rsi
cmp r8w, 1
sbb rax, 0xffffffffffffffff
test rcx, rcx
je 0x1400a3d19
mov rdx, qword [rsp + 0x260]
sub rdx, qword [rsp + 0x258]
mov rcx, 0xffffffffffffffff
add rax, rdx
jb 0x1400a3cfb
mov rcx, rax
mov rax, rcx
jmp 0x1400a3d19
test rcx, rcx
je 0x1400a3d17
mov rax, qword [rsp + 0x260]
sub rax, qword [rsp + 0x258]
jmp 0x1400a3d19
xor eax, eax
mov rdx, 0xffffffffffffffff
inc rax
je 0x1400a3d28
mov rdx, rax
mov rcx, r12
call fcn.140084513
mov rbp, qword [rsp + 0x198]
mov word [rbp + rbx*2], r14w
inc rbx
mov qword [rsp + 0x1a8], rbx
jmp 0x1400a3c34
mov rcx, qword [rsp + 0x198]
mov rax, qword [rsp + 0x1a0]
mov qword [rsp + 0x88], rax
test rcx, rcx
je 0x1400a40aa
mov qword [rsp + 0x90], rcx
mov rax, qword [rsp + 0x80]
mov rbx, qword [rax + 0x90]
mov r12, qword [rax + 0xa0]
mov al, byte [rax + 0xad]
mov byte [rsp + 0x98], al
test al, al
setne byte [rsp + 0x64]
lea rax, [0x140128cdd]
lea rcx, [rsp + 0x198]
mov qword [rcx], rax
lea rax, [0x140128cec]
mov qword [rcx + 8], rax
and word [rcx + 0x10], 0
call fcn.140084f79
test ax, ax
je 0x1400a40d1
mov ebp, edx
mov rax, qword [rsp + 0x1a0]
sub rax, qword [rsp + 0x198]
movzx ecx, word [rsp + 0x1a8]
add rax, 2
mov r15d, 3
xor edx, edx
div r15
cmp cx, 1
sbb rax, 0xffffffffffffffff
cmp rax, 4
cmovb rax, r15
lea rcx, [rax + 1]
call fcn.1400844c1
mov rdi, rax
mov word [rax], bp
lea r14, [rsp + 0xb0]
mov qword [r14], rax
mov qword [r14 + 8], rdx
mov qword [r14 + 0x10], 1
mov rax, qword [rsp + 0x1a8]
lea r13, [rsp + 0x250]
mov qword [r13 + 0x10], rax
movups xmm0, xmmword [rsp + 0x198]
movaps xmmword [r13], xmm0
mov esi, 1
mov rcx, r13
call fcn.140084f79
cmp ax, 1
jne 0x1400a4083
mov ebp, edx
cmp rsi, qword [rsp + 0xb8]
jne 0x1400a3eb1
mov rax, qword [rsp + 0x258]
sub rax, qword [rsp + 0x250]
movzx ecx, word [rsp + 0x260]
add rax, 2
xor edx, edx
div r15
cmp cx, 1
sbb rax, 0xffffffffffffffff
lea rdx, [rax + 1]
mov rcx, r14
call fcn.140084513
mov rdi, qword [rsp + 0xb0]
mov word [rdi + rsi*2], bp
inc rsi
mov qword [rsp + 0xc0], rsi
jmp 0x1400a3e56
mov qword [rsp + 0x88], rdi
mov rax, qword [rsp + 0x58]
mov r14, qword [rsp + 0x68]
mov r15, qword [rsp + 0x70]
jmp 0x1400a40b4
xorps xmm0, xmm0
movups xmmword [rsp + 0x284], xmm0
movups xmmword [rsp + 0x278], xmm0
movups xmmword [rsp + 0x268], xmm0
movups xmmword [rsp + 0x258], xmm0
movups xmmword [rsp + 0x298], xmm0
movups xmmword [rsp + 0x2a8], xmm0
mov dword [rsp + 0x250], 0x68
test rsi, rsi
mov r14, qword [rsp + 0x90]
mov r12, rdi
mov rax, qword [rsp + 0x160]
jne 0x1400a3f3e
test rbx, rbx
jne 0x1400a3f3e
test rax, rax
je 0x1400a3f61
mov dword [rsp + 0x28c], 0x100
mov qword [rsp + 0x2a0], rax
mov qword [rsp + 0x2a8], rbx
mov qword [rsp + 0x2b0], rsi
mov rbp, qword [rsp + 0x1e0]
lea rax, [rsp + 0x120]
mov qword [rsp + 0x48], rax
lea rax, [rsp + 0x250]
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x58]
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x30], r15
mov eax, dword [rsp + 0x218]
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], 1
mov rcx, r14
mov rdx, rbp
xor r8d, r8d
xor r9d, r9d
call sub.kernel32.dll_CreateProcessW
test eax, eax
mov rdi, qword [rsp + 0x68]
je 0x1400a4269
movaps xmm0, xmmword [rsp + 0x120]
movups xmm1, xmmword [rsp + 0xb0]
movups xmm2, xmmword [rsp + 0xc0]
movups xmm3, xmmword [rsp + 0xd0]
movups xmmword [r13 + 0x10], xmm1
movups xmmword [r13 + 0x20], xmm2
movups xmmword [r13 + 0x30], xmm3
movups xmmword [r13], xmm0
mov rcx, rsi
call sub.kernel32.dll_CloseHandle
mov rcx, rbx
call sub.kernel32.dll_CloseHandle
mov rcx, qword [rsp + 0x160]
call sub.kernel32.dll_CloseHandle
mov ecx, 1
call fcn.1400a50d4
lea rcx, [rsp + 0x1a0]
call fcn.14009a74e
mov rcx, qword [rsp + 0x98]
mov rdx, qword [rsp + 0xa0]
call fcn.140085884
mov rcx, rdi
mov rdx, r12
call fcn.140085884
mov rdx, qword [rsp + 0x1e8]
mov rcx, rbp
call fcn.140085884
mov rcx, r14
mov rdx, qword [rsp + 0x88]
call fcn.140085884
cmp byte [rsp + 0x16c], 0
mov rcx, qword [rsp + 0x70]
je 0x1400a284e
jmp 0x1400a3b89
movups xmm0, xmmword [rsp + 0xb0]
movaps xmmword [rsp + 0x120], xmm0
mov rax, qword [rsp + 0xc0]
mov qword [rsp + 0x130], rax
mov r15, qword [rsp + 0x70]
jmp 0x1400a40e8
mov rax, qword [rsp + 0x58]
mov r14, qword [rsp + 0x68]
mov rcx, qword [rsp + 0x88]
mov qword [rax], rcx
mov qword [rax + 0x10], 2
mov rbx, qword [rsp + 0x78]
jmp 0x1400a3469
mov qword [rsp + 0x120], 2
xorps xmm0, xmm0
movups xmmword [rsp + 0x128], xmm0
lea rcx, [rsp + 0x120]
mov dx, 0x22
call fcn.140099c13
mov rdx, qword [rsp + 0x218]
lea rax, [rdx + rdx]
xor ecx, ecx
lea r14, [0x140128d28]
mov rsi, qword [rsp + 0x58]
mov rdi, qword [rsp + 0x90]
cmp rax, rcx
je 0x1400a4131
cmp word [r15 + rcx], 0x22
lea rcx, [rcx + 2]
jne 0x1400a411b
jmp 0x1400a422f
cmp word [r15 + rdx*2 - 2], 0x5c
je 0x1400a422f
lea rsi, [rdx - 1]
lea rcx, [r15 + rdx*2]
add rcx, 0xfffffffffffffffe
mov rdi, rdx
lea r8, [0x14012e9b0]
mov edx, 1
mov r9d, 1
call fcn.140088758
xor edx, edx
test al, al
cmovne rdx, r15
test rdx, rdx
cmove rdx, r15
cmove rsi, rdi
lea r8, [rdx + rsi*2]
lea r13, [rsp + 0x120]
mov rcx, r13
call fcn.140085837
mov rcx, r13
mov dx, 0x22
call fcn.140099c13
imul r15, r12, 0x28
add r15, rbx
lea rbp, str._t____________
cmp rbx, r15
je 0x1400a429f
mov rcx, r13
mov dx, 0x20
call fcn.140099c13
mov dil, byte [rsp + 0x64]
cmp byte [rsp + 0x98], 0
jne 0x1400a4200
cmp qword [rbx], 0
mov dil, byte [rsp + 0x64]
jne 0x1400a4200
mov rsi, qword [rbx + 8]
mov r14, qword [rbx + 0x18]
xor r12d, r12d
cmp r14, r12
setne dil
je 0x1400a4200
mov r8b, byte [rsi + r12]
mov edx, 0x16
mov rcx, rbp
call fcn.1400a444e
inc r12
test al, al
je 0x1400a41df
lea rsi, [rbx + 0x28]
mov rcx, r13
mov rdx, rbx
mov r8d, edi
call fcn.1400a4acc
mov rbx, rsi
test rax, rax
je 0x1400a41a5
mov r14, rax
mov rsi, qword [rsp + 0x58]
mov r15, qword [rsp + 0x70]
mov rdi, qword [rsp + 0x90]
mov rcx, qword [rsp + 0x120]
mov rdx, qword [rsp + 0x128]
call fcn.140085884
mov qword [rsi], r14
mov qword [rsi + 0x10], 2
mov rcx, rdi
mov rdx, qword [rsp + 0x88]
call fcn.140085884
mov rbx, qword [rsp + 0x78]
jmp 0x1400a3464
mov rbp, rbx
call fcn.14006b867
mov qword [r13], rax
mov qword [r13 + 0x10], 2
mov rcx, rsi
call sub.kernel32.dll_CloseHandle
mov rsi, qword [rsp + 0x70]
mov rbx, qword [rsp + 0x88]
mov r15, qword [rsp + 0x98]
jmp 0x1400a3b05
lea rsi, [rsp + 0x120]
mov rcx, rsi
mov dx, 0x22
call fcn.140099c13
mov rax, qword [rsi]
mov r14, qword [rsi + 8]
test rax, rax
je 0x1400a42ea
mov rdx, qword [rsp + 0x130]
mov cl, 1
mov dword [rsp + 0x16c], ecx
mov dword [rsp + 0x64], 0
mov r13, qword [rsp + 0x58]
mov rbp, qword [rsp + 0x80]
jmp 0x1400a3197
mov rsi, qword [rsp + 0x58]
mov r15, qword [rsp + 0x70]
mov rdi, qword [rsp + 0x90]
jmp 0x1400a4244
lea rcx, str.called__Option::unwrap____on_a__None__value
lea r8, str._opt_x86_64_gnu_build_x86_64_unknown_linux_gnu_stage1_lib_rustlib_src_rust_library_alloc_src_collections_btree_navigate.rs
jmp 0x1400a431f
lea rcx, str.called__Option::unwrap____on_a__None__value
lea r8, str._opt_x86_64_gnu_build_x86_64_unknown_linux_gnu_stage1_lib_rustlib_src_rust_library_alloc_src_collections_btree_navigate.rs
mov edx, 0x2b
call fcn.140061bfa
ud2
lea rcx, str.internal_error:_entered_unreachable_code
lea r8, str._opt_x86_64_gnu_build_x86_64_unknown_linux_gnu_stage1_lib_rustlib_src_rust_library_std_src_sys_windows_mod.rs
mov edx, 0x28
jmp 0x1400a4324
lea rcx, str.assertion_failed:_self.height___0
lea r8, [0x140125fe0]
mov edx, 0x21
jmp 0x1400a4324
call fcn.14006b867
lea rcx, [rsp + 0x198]
mov qword [rcx], rax
lea r9, [rsp + 0xb0]
mov qword [r9], rcx
lea rax, [fcn.14008aa19]
mov qword [r9 + 8], rax
mov qword [rsp + 0x20], 1
lea rdx, str.failure_getting_env_string_from_OS:
lea rsi, [rsp + 0x250]
mov r8d, 1
mov rcx, rsi
call fcn.140001ad1
lea rdx, str._opt_x86_64_gnu_build_x86_64_unknown_linux_gnu_stage1_lib_rustlib_src_rust_library_std_src_sys_windows_os.rs
mov rcx, rsi
call fcn.140061448
ud2