Function at 0x140057ad0
Capabilities:
Read file on windows

Disassembly:
push rsi
push rdi
push rbx
sub rsp, 0x40
sub esp, 0x40
mov rdi, rdx
mov rdx, qword [rdx + 8]
mov rsi, qword [rdi + 0x10]
ja 0x140052a12
mov r9, rdx
sub r9, rsi
jb 0x140052bbd
mov r8, qword [rdi]
add r8, rsi
mov rdx, qword [rcx]
mov qword [rsp + 0x20], 0
mov dword [rsp + 0x20], 0
lea rcx, [rsp + 0x30]
call dbg.synchronous_read
add byte [rax], al
mov rbx, qword [rsp + 0x30]
test rbx, rbx
je 0x140052a54
mov rdi, qword [rsp + 0x38]
mov eax, edi
and eax, 3
loopne 0x140052a41
lea rcx, [0x1400aef48]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
add eax, ecx
jmp rax
movzx eax, byte [rdi + 0x10]
jmp case.0x14005279f.73
add rsi, qword [rsp + 0x38]
mov qword [rdi + 0x10], rsi
mov rax, qword [rdi + 0x18]
cmp rax, rsi
cmova rsi, rax
invalid
invalid
mov qword [rdi + 0x18], rsi
xor esi, esi
imul bl
invalid
movzx eax, byte [rdi + 0xf]
jmp case.0x14005279f.73
mov rcx, rdi
shr rcx, 0x20
jmp 0x10be412a0
add byte [rax], al
xor esi, esi
cmp al, 0xb
cmovne rsi, rdi
invalid
test rbx, rbx
je 0x140052a9d
cmp al, 0xb
jne 0x140052a9d
lea rcx, [rsp + 0x38]
call dbg.drop_in_place<std::io::error::Error>
mov rax, rsi
add rsp, 0x40
pop rbx
pop rdi
pop rsi
ret
mov rax, rdi
shr rax, 0x20
shr eax, 0x20
cmp eax, 0x28
ja case.default.0x140052ac2
invalid
lea rcx, [0x1400aef58]
movsxd rax, dword [rcx + rax*4]
invalid
add rax, rcx
add eax, ecx
jmp rax
xor eax, eax
jmp case.0x14005279f.73
mov al, 0x29
jmp case.0x14005279f.73
mov al, 1
jmp case.0x14005279f.73
invalid
mov al, 2
jmp case.0x14005279f.73
mov al, 3
jmp case.0x14005279f.73
mov al, 4
jmp case.0x14005279f.73
mov al, 5
jmp case.0x14005279f.73
mov al, 6
jmp case.0x14005279f.73
mov al, 7
jmp case.0x14005279f.73
mov al, 8
jmp case.0x14005279f.73
xchg esi, eax
mov al, 9
jmp case.0x14005279f.73
mov al, 0xa
jmp case.0x14005279f.73
mov al, 0xb
jmp case.0x14005279f.73
invalid
mov dh, byte [rax - 0x4f7914f4]
or eax, 0xeb082eb
jmp case.0x14005279f.73
mov al, 0xe
mov al, 0xc
jmp case.0x14005279f.73
mov al, 0xd
jmp case.0x14005279f.73
mov al, 0xe
jmp case.0x14005279f.73
invalid
mov al, 0xf
jmp case.0x14005279f.73
invalid
invalid
invalid
mov al, 0x10
jmp case.0x14005279f.73
invalid
invalid
invalid
mov al, 0x11
jmp case.0x14005279f.73
invalid
invalid
invalid
mov al, 0x12
jmp case.0x14005279f.73
invalid
invalid
invalid
mov al, 0x13
jmp case.0x14005279f.73
invalid
invalid
invalid
mov al, 0x14
jmp case.0x14005279f.73
invalid
invalid
invalid
mov al, 0x15
jmp case.0x14005279f.73
invalid
invalid
invalid
mov al, 0x16
jmp case.0x14005279f.73
invalid
invalid
invalid
mov al, 0x17
jmp case.0x14005279f.73
invalid
invalid
invalid
mov al, 0x18
jmp case.0x14005279f.73
invalid
invalid
invalid
mov al, 0x19
jmp case.0x14005279f.73
invalid
invalid
invalid
mov al, 0x1a
jmp case.0x14005279f.73
invalid
invalid
invalid
mov al, 0x1b
jmp case.0x14005279f.73
invalid
invalid
invalid
mov al, 0x1c
jmp case.0x14005279f.73
invalid
invalid
invalid
mov al, 0x1d
jmp case.0x14005279f.73
invalid
invalid
invalid
mov al, 0x1e
jmp case.0x14005279f.73
invalid
invalid
invalid
mov al, 0x1f
jmp case.0x14005279f.73
invalid
invalid
invalid
mov al, 0x20
jmp case.0x14005279f.73
invalid
invalid
invalid
mov al, 0x21
jmp case.0x14005279f.73
invalid
invalid
invalid
mov al, 0x22
jmp case.0x14005279f.73
invalid
invalid
invalid
mov al, 0x23
jmp case.0x14005279f.73
invalid
invalid
invalid
mov al, 0x24
jmp case.0x14005279f.73
invalid
invalid
invalid
mov al, 0x25
jmp case.0x14005279f.73
invalid
invalid
invalid
mov al, 0x26
jmp case.0x14005279f.73
mov al, 0x27
jmp case.0x14005279f.73
mov al, 0x28
jmp case.0x14005279f.73
lea r8, [0x1400afa48]
mov rcx, rsi
call dbg.slice_start_index_len_fail
int3
mov r9d, 0x2ceb0017
call sub.ws2_32.dll_WSAGetLastError
mov r15d, eax
shl r15, 0x20
or r15, 2
jmp 0x140053bd5
mov ecx, 0x570f0002
shl byte [rsi - 0x3f], 0xc1
rol ecx, 8
mov word [rsp + 0x40], r9w
rol ecx, 8
mov word [rsp + 0x40], r9w
mov word [rsp + 0x42], cx
mov dword [rsp + 0x44], eax
movups xmmword [rsp + 0x48], xmm0
mov dword [rsp + 0x58], edx
lea rdx, [rsp + 0x40]
mov rcx, rdi
call sub.ws2_32.dll_connect
cmp eax, 0xffffffff
clc
invalid
je 0x140053a01
clc
push qword [rbp + rax + 0x45]
xor edi, edi
xor r15d, r15d
jmp 0x140053a11
call sub.ws2_32.dll_WSAGetLastError
mov r15d, eax
invalid
shl r15, 0x20
or r15, 2
invalid
mov qword [rsp + 0x30], r15
mov dword [rsp + 0x40], 0
lea r8, [rsp + 0x40]
mov rcx, rdi
mov edx, 0x8004667e
call sub.ws2_32.dll_ioctlsocket
cmp eax, 0xffffffff
je 0x140053a57
test r15, r15
je 0x140053a74
mov eax, r15d
and eax, 3
lea rcx, [0x1400aeffc]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
movzx eax, byte [r15 + 0x10]
jmp 0x140053a8f
call sub.ws2_32.dll_WSAGetLastError
mov esi, eax
shl rsi, 0x20
or rsi, 2
test r15, r15
jne 0x140053bc8
jmp case.0x140052a4c.74
xor r15d, r15d
jmp 0x140053bd5
movzx eax, byte [r15 + 0xf]
jmp 0x140053a8f
mov rcx, r15
shr rcx, 0x20
call dbg.decode_error_kind
invalid
invalid
add byte [rax], al
cmp al, 0xd
jne 0x140053bd5
test r14, r14
jne 0x140053ad0
test ebx, ebx
jne 0x140053ad0
lea rsi, str.cannot_set_a_0_duration_timeout
jmp 0x140053bc8
mov rax, r15
shr rax, 0x20
cmp eax, 0x28
sub byte [rdi], cl
xchg dword [rbx], ebp
add dword [rax], eax
invalid
lea rcx, [0x1400af00c]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
xor eax, eax
jmp 0x140053a8f
cmp r14, 0x7fffffff
mov eax, 0x7fffffff
cmovb rax, r14
invalid
mov ecx, ebx
imul rcx, rcx, 0x10624dd3
invalid
invalid
adc byte [rax - 0x3f], cl
invalid
invalid
mov dword [rsp + 0x38], eax
test rax, rax
mov eax, 1
mov edx, ecx
cmove edx, eax
cmp ebx, 0x3e8
add byte [rax], al
cmovae edx, ecx
mov dword [rsp + 0x3c], edx
and al, 0x3c
lea rcx, [rsp + 0x50]
mov r8d, 0x1f8
xor edx, edx
shr al, cl
fist dword [rbx + 5]
add byte [rax - 0x39], cl
mov dword [rsp + 0x248], 1
mov qword [rsp + 0x250], rdi
mov dword [rsp + 0x250], edi
lea rcx, [rsp + 0x258]
mov r8d, 0x1f8
mov eax, 0x1f8
add byte [rcx - 0x48], al
clc
add dword [rax], eax
add byte [rcx], dh
xor edx, edx
call sub.msvcrt.dll_memset
invalid
invalid
and al, 0x40
xor edx, edx
call sub.msvcrt.dll_memset
mov qword [rsp + 0x40], 1
add dword [rax], eax
add byte [rax], al
mov qword [rsp + 0x48], rdi
lea rax, [rsp + 0x38]
mov qword [rsp + 0x20], rax
and al, 0x20
lea r8, [rsp + 0x248]
add al, byte [rax]
add byte [rbp + rcx*4 + 0x4c], cl
lea r9, [rsp + 0x40]
and al, 0x40
mov ecx, 1
xor edx, edx
call sub.ws2_32.dll_select
test eax, eax
je 0x140053b91
cmp eax, 0xffffffff
jne case.0x140052a4c.66
call sub.ws2_32.dll_WSAGetLastError
mov esi, eax
shl rsi, 0x20
or rsi, 2
or esi, 2
or esi, 2
jmp 0x140053bc8
lea r15, str.connection_timed_out
cmp eax, 0x60838
jmp 0x140053ba7
cmp dword [rsp + 0x248], 1
jne 0x140053bb3
add dword [rbp + 0xf], esi
xor r15d, r15d
lea rcx, [rsp + 0x30]
lea ecx, [rsp + 0x30]
call dbg.drop_in_place<std::io::error::Error>
jmp 0x140053bd5
cld
invalid
mov rcx, rsi
call sym.std::sys::windows::net::Socket::take_error::h5e556a29e9305867
mov rsi, rdx
invalid
test rax, rax
jne 0x140053bc8
invalid
test rsi, rsi
test esi, esi
je 0x140053ba4
lea rcx, [rsp + 0x30]
and al, 0x30
call dbg.drop_in_place<std::io::error::Error>
mov r15, rsi
mov rax, r15
add rsp, 0x450
add esp, 0x450
add esp, 0x450
add byte [rbx + 0x5f], bl
pop rbx
pop rdi
pop rsi
pop r14
pop r15
pop rdi
pop rdi
ret
mov al, 0x29
jmp 0x140053a8f
invalid
invalid
invalid
mov al, 1
jmp 0x140053a8f
invalid
invalid
invalid
mov al, 2
jmp 0x140053a8f
invalid
invalid
invalid
mov al, 3
jmp 0x140053a8f
invalid
invalid
invalid
mov al, 4
jmp 0x140053a8f
invalid
invalid
invalid
mov al, 5
jmp 0x140053a8f
invalid
invalid
invalid
mov al, 6
jmp 0x140053a8f
invalid
invalid
invalid
mov al, 7
jmp 0x140053a8f
invalid
invalid
invalid
mov al, 8
jmp 0x140053a8f
invalid
invalid
invalid
mov al, 9
jmp 0x140053a8f
invalid
invalid
invalid
mov al, 0xa
jmp 0x140053a8f
invalid
invalid
invalid
mov al, 0xb
jmp 0x140053a8f
invalid
invalid
invalid
mov al, 0xc
jmp 0x140053a8f
invalid
invalid
invalid
mov al, 0xd
jmp 0x140053a8f
invalid
invalid
invalid
mov al, 0xe
jmp 0x140053a8f
invalid
invalid
invalid
mov al, 0xf
jmp 0x140053a8f
invalid
invalid
invalid
mov al, 0x10
jmp 0x140053a8f
invalid
invalid
invalid
mov al, 0x11
jmp 0x140053a8f
invalid
invalid
invalid
mov al, 0x12
jmp 0x140053a8f
invalid
invalid
invalid
mov al, 0x13
jmp 0x140053a8f
invalid
invalid
invalid
mov al, 0x14
jmp 0x140053a8f
invalid
invalid
invalid
mov al, 0x15
jmp 0x140053a8f
invalid
invalid
invalid
mov al, 0x16
jmp 0x140053a8f
invalid
invalid
invalid
mov al, 0x17
jmp 0x140053a8f
invalid
invalid
invalid
mov al, 0x18
jmp 0x140053a8f
invalid
invalid
invalid
mov al, 0x19
jmp 0x140053a8f
invalid
invalid
invalid
mov al, 0x1a
jmp 0x140053a8f
invalid
invalid
invalid
mov al, 0x1b
jmp 0x140053a8f
invalid
invalid
invalid
mov al, 0x1c
jmp 0x140053a8f
invalid
invalid
invalid
mov al, 0x1d
jmp 0x140053a8f
invalid
invalid
invalid
mov al, 0x1e
jmp 0x140053a8f
invalid
invalid
invalid
mov al, 0x1f
jmp 0x140053a8f
invalid
invalid
invalid
mov al, 0x20
jmp 0x140053a8f
invalid
invalid
invalid
mov al, 0x21
jmp 0x140053a8f
invalid
invalid
invalid
mov al, 0x22
jmp 0x140053a8f
invalid
invalid
invalid
mov al, 0x23
jmp 0x140053a8f
invalid
invalid
invalid
mov al, 0x24
jmp 0x140053a8f
invalid
invalid
invalid
mov al, 0x25
jmp 0x140053a8f
invalid
invalid
invalid
mov al, 0x26
jmp 0x140053a8f
mov al, 0x27
jmp 0x140053a8f
mov al, 0x28
jmp 0x140053a8f
add al, byte [rax]
jmp 0x1400577fe
ud2
jmp 0x140057832
test bh, 1
je 0x140057830
jmp case.0x140052a4c.96
xor esi, esi
mov rcx, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x58]
test rdx, rdx
je 0x14005784c
mov r8d, 1
call sym.__rust_dealloc
je 0x1400577eb
cli
invalid
add byte [rax], al
add al, ch
je 0x1400577eb
cli
inc dword [rax - 0x7c]
test dh, dh
je case.0x140052a4c.96
mov rcx, rdi
test sil, sil
test dh, dh
je case.0x140052a4c.96
mov rcx, rdi
call fcn.1400a8474
sbb ecx, dword [rax - 0xe76b400]
mov rcx, r14
call dbg._Unwind_Resume
pop rdi
adc eax, dword [0x1a66c4464]
int3
invalid
invalid
int3
nop word cs:[rax + rax]
nop word cs:[rax + rax]
invalid
add byte [rax], al
add byte [rsi + 0x57], dl
push rsi
push rdi
push rdi
sub rsp, 0x78
mov rax, r8
js 0x1400578c3
mov eax, eax
mov rsi, rcx
mov r8d, 0xffffffff
mov eax, 0xffffffff
mov eax, 0xffffffff
dec dword [rbp + 0x39]
ror dword [rbp + 0xf], 0x42
cmovb r8, r9
invalid
invalid
cmp r9, r8
cmovb r8, r9
mov dword [rsp + 0x44], 0
add byte [rax], r8b
add byte [rax], al
and al, 0x44
add byte [rax], al
invalid
add byte [rax], r8b
add byte [rax], al
xorps xmm0, xmm0
movaps xmmword [rsp + 0x50], xmm0
ror byte [rdi], 0x29
and al, 0x50
mov qword [rsp + 0x60], 0
mov dword [rsp + 0x60], 0
add byte [rax - 0x73], cl
and al, 0x44
lea rcx, [rsp + 0x44]
mov qword [rsp + 0x68], rcx
mov dword [rsp + 0x68], ecx
lea rcx, [dbg.callback]
mov qword [rsp + 0x20], rcx
and al, 0x20
cmp eax, 0x48000007
mov dword [rsp + 0x20], ecx
and al, 0x20
and al, 0x20
lea r9, [rsp + 0x50]
and al, 0x50
mov rcx, rdx
mov rdx, rax
mov edx, eax
mov edx, eax
call sub.kernel32.dll_ReadFileEx
test eax, eax
je 0x140057920
push rsp
in al, 0xd
add eax, 0x74c08500
push rsp
nop dword [rax]
mov ecx, 0xffffffff
mov edx, 1
add al, ch
insd dword [rdi], dx
invalid
add eax, 0x247c8300
jl 0x140057906
invalid
invalid
je 0x1400578d0
invalid
add al, ch
insd dword [rdi], dx
invalid
jl 0x140057906
add byte [rdx + rbp*8 + 0x48], r14b
movsxd rax, dword [rsp + 0x48]
test rax, rax
invalid
invalid
je 0x14005795b
shl rax, 0x20
or rax, 2
or eax, 2
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x30], 1
xor byte [rcx], al
add byte [rax], al
invalid
cmp byte [rax - 0x39], cl
and al, 0x30
xor byte [rcx], al
add byte [rax], al
invalid
xor byte [rcx], al
add byte [rax], al
add byte [rax - 0x73], cl
jl 0x14005792e
invalid
lea rdi, [rsp + 0x38]
and al, 0x38
cmp byte [rcx + 0x3e183c1], cl
mov ecx, eax
and ecx, 3
lea rdx, [0x1400af0b0]
lea edx, [0x1400af0b0]
add eax, 0xc634800
mov cl, byte [rax + 1]
movsxd rcx, dword [rdx + rcx*4]
invalid
or al, 0x8a
add rcx, rdx
jmp rcx
invalid
sar edi, 1
loope case.0x140053a4e.50
call sub.kernel32.dll_GetLastError
xchg edi, eax
or al, 5
add byte [rax - 0x3f], cl
shl rax, 0x20
shl rax, 0x20
shl eax, 0x20
or rax, 2
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x38], eax
cmp byte [rax - 0x39], cl
mov qword [rsp + 0x30], 1
and al, 0x30
and al, 0x30
add dword [rax], eax
add byte [rax], al
lea rdi, [rsp + 0x38]
mov ecx, eax
and ecx, 3
lea rdx, [0x1400af0b0]
adc eax, 0x57764
adc eax, 0x57764
ja 0x140057950
add byte [rax + 0x63], cl
movsxd rcx, dword [rdx + rcx*4]
or al, 0x8a
add rcx, rdx
jmp rcx
movzx eax, byte [rax + 0x10]
jmp 0x140057980
invalid
mov eax, dword [rsp + 0x4c]
and al, 0x4c
mov qword [rsp + 0x38], rax
cmp byte [rax - 0x39], cl
mov qword [rsp + 0x30], 0
and al, 0x30
add byte [rax], al
add byte [rax], al
invalid
add byte [rax], al
add bl, ch
jmp case.0x140053a4e.75
and eax, 0xf40b60f
movzx eax, byte [rax + 0xf]
por mm1, qword [rbx]
jmp 0x140057980
shr rax, 0x20
and byte [rcx + 0x7ce0e8c1], cl
mov ecx, eax
call dbg.decode_error_kind
add byte [rax], al
add byte [rax], al
add byte [rbx + rcx], bh
cmp al, 0xb
jne case.0x140053a4e.75
xorps xmm0, xmm0
movups xmmword [rsi], xmm0
ror byte [rdi], 0x11
invalid
mov rcx, rdi
call dbg.drop_in_place<std::io::error::Error>
jmp 0x1400579a5
mov rax, qword [rsp + 0x30]
mov qword [rsi], rax
mov rax, qword [rsp + 0x38]
invalid
invalid
mov qword [rsi + 8], rax
mov dword [rsi + 8], eax
add rsp, 0x78
pop rdi
pop rsi
ret
shr rax, 0x20
cmp eax, 0x28
ja case.default.0x1400579c3
lea rcx, [0x1400af0c0]
or eax, 0x57704
movsxd rax, dword [rcx + rax*4]
invalid
add al, 0x81
add rax, rcx
add eax, ecx
jmp rax
xor eax, eax
jmp 0x140057980
mov al, 0x29
jmp 0x140057980
mov bl, 0xb0
add ebx, ebp
scasd eax, dword [rdi]
mov al, 1
jmp 0x140057980
mov al, 2
jmp 0x140057980
mov al, 3
jmp 0x140057980
cmpsd dword [rsi], dword [rdi]
mov al, 4
jmp 0x140057980
add al, 0xeb
movabs dword [0x9beb06b09feb05b0], eax
mov al, 5
jmp 0x140057980
mov al, 6
jmp 0x140057980
mov al, 5
jmp 0x140057980
mov al, 6
jmp 0x140057980
mov al, 7
jmp 0x140057980
xchg edi, eax
xchg edi, eax
mov al, 8
jmp 0x140057980
mov al, 9
jmp 0x140057980
mov al, 0xa
jmp 0x140057980
invalid
mov esi, dword [rax - 0x4f7814f5]
or al, 0xeb
jmp 0x140057980
mov al, 0xd
invalid
jl 0x140057a01
invalid
mov al, 0xb
jmp 0x140057980
or ebp, ebx
xchg dword [rax - 0x4f7c14f4], esi
mov al, 0xc
jmp 0x140057980
mov al, 0xd
invalid
jl 0x140057a01
invalid
mov al, 0xc
jmp 0x140057980
mov al, 0xd
jmp 0x140057980
invalid
invalid
invalid
push qword [rax - 0x8a16f2]
mov al, 0xe
jmp 0x140057980
invalid
invalid
invalid
push qword [rax - 0x9116f1]
mov al, 0xf
jmp 0x140057980
outsb dx, byte [rsi]
invalid
invalid
invalid
outsb dx, byte [rsi]
invalid
invalid
mov al, 0x10
jmp 0x140057980
invalid
invalid
invalid
invalid
invalid
mov al, 0x11
jmp 0x140057980
invalid
invalid
adc ecx, ebp
invalid
invalid
mov al, 0x12
jmp 0x140057980
invalid
push qword [rax - 0xad16ed]
mov al, 0x13
jmp 0x140057980
push rdx
invalid
invalid
invalid
push rdx
invalid
invalid
mov al, 0x14
jmp 0x140057980
invalid
invalid
invalid
invalid
invalid
mov al, 0x15
jmp 0x140057980
invalid
invalid
adc eax, 0xffff44e9
push qword [rax - 0xc216ea]
mov al, 0x16
invalid
invalid
invalid
invalid
mov al, 0x16
jmp 0x140057980
invalid
push qword [rax - 0xc916e9]
mov al, 0x17
jmp 0x140057980
invalid
invalid
invalid
invalid
invalid
invalid
mov al, 0x18
jmp 0x140057980
invalid
invalid
invalid
invalid
invalid
invalid
mov al, 0x19
jmp 0x140057980
sub bh, bh
invalid
invalid
sub bh, bh
invalid
invalid
mov al, 0x1a
jmp 0x140057980
and edi, edi
invalid
invalid
and edi, edi
invalid
mov al, 0x1b
jmp 0x140057980
sbb bh, bh
invalid
invalid
sbb bh, bh
invalid
mov al, 0x1c
jmp 0x140057980
adc edi, edi
invalid
invalid
adc edi, edi
invalid
mov al, 0x1d
jmp 0x140057980
or al, 0xff
invalid
invalid
or al, 0xff
invalid
mov al, 0x1e
jmp 0x140057980
invalid
invalid
invalid
invalid
add eax, 0xb0ffffff
invalid
invalid
mov al, 0x1f
jmp 0x140057980
invalid
invalid
invalid
invalid
invalid
invalid
invalid
mov al, 0x20
jmp 0x140057980
idiv esi
invalid
invalid
idiv esi
invalid
mov al, 0x21
jmp 0x140057980
invalid
invalid
invalid
invalid
invalid
invalid
mov al, 0x22
jmp 0x140057980
invalid
invalid
invalid
invalid
jmp 0xf1057a96
invalid
mov al, 0x23
jmp 0x140057980
loop case.0x140052a4c.167
invalid
invalid
loop case.0x140052a4c.167
invalid
mov al, 0x24
jmp 0x140057980
invalid
invalid
invalid
invalid
invalid
invalid
mov al, 0x25
jmp 0x140057980
invalid
invalid
invalid
invalid
invalid
invalid
mov al, 0x26
jmp 0x140057980
int 0xfe
invalid
invalid
int 0xfe
invalid
mov al, 0x27
jmp 0x140057980
invalid
invalid
invalid
invalid
invalid
mov al, 0x28
jmp 0x140057980
invalid
invalid
invalid
invalid
mov edi, 0x66fffffe
invalid
nop word cs:[rax + rax]
nop word cs:[rax + rax]
nop word cs:[rax + rax]
test byte [rax], al
add byte [rax], al
add byte [rax], al
add byte [rax], al
add byte [rax], al
push rsi
push rdi
add byte [rax], al
push rbx
sub rsp, 0x70
jo 0x140057b20
mov ebx, edx
jo 0x140057b20
mov ebx, edx
ror dword [rax - 0x75], cl
push rdx
or byte [rax - 0x75], cl
invalid
invalid
mov rdx, qword [rdx + 8]
mov rdi, qword [rbx + 0x10]
jnp case.0x140053a4e.108
mov rax, rdx
sub rax, rdi
sub eax, edi
sub eax, edi
clc
jb 0x140057d21
xor eax, dword [rdx]
add byte [rax], al
mov r8d, 0xffffffff
cmp rax, r8
ror byte [rdi + rcx + 0x42], 0xc0
invalid
ror byte [rdi + rcx + 0x42], 0xc0
ror byte [rax - 0x75], 0x13
mov rdx, qword [rbx]
add rdx, rdi
mov dword [rsp + 0x34], 0
add byte [rdi], cl
push rdi
ror byte [rdi], 0x29
and al, 0x50
and al, 0x50
xorps xmm0, xmm0
movaps xmmword [rsp + 0x50], xmm0
and al, 0x50
and al, 0x50
mov qword [rsp + 0x60], 0
add byte [rax], al
add byte [rax], al
lea rax, [rsp + 0x34]
and al, 0x34
mov qword [rsp + 0x68], rax
mov dword [rsp + 0x68], eax
lea rax, [dbg.callback]
mov qword [rsp + 0x20], rax
and al, 0x20
lea r9, [rsp + 0x50]
and al, 0x50
and al, 0x50
call sub.kernel32.dll_ReadFileEx
test eax, eax
je 0x140057b8b
add byte [rbp + 0x664d74c0], al
nop
nop
mov ecx, 0xffffffff
mov edx, 1
add byte [rax], al
add al, ch
std
or eax, dword [0x16481fe52]
add byte [rbx + 0x34247c], al
add byte [rax], al
add al, ch
std
or eax, dword [0x16481fe52]
add byte [rbx + 0x34247c], al
add byte [rbx + 0x34247c], al
je case.0x140053a4e.120
invalid
movsxd rsi, dword [rsp + 0x38]
test rsi, rsi
test esi, esi
test esi, esi
je case.0x140057953.68
shl rsi, 0x20
or rsi, 2
mov qword [rsp + 0x48], rsi
je 0x140057b90
mov qword [rsp + 0x40], 1
and byte [rax - 0x7d], cl
invalid
je 0x140057b90
mov qword [rsp + 0x40], 1
add dword [rax], eax
add dword [rax], eax
add byte [rax], al
mov eax, esi
and eax, 3
lea rcx, [0x1400af164]
loop 0x140057bf5
invalid
invalid
add ecx, dword [rax - 0x73]
or eax, 0x575e2
loop 0x140057bf5
invalid
invalid
loop 0x140057bf5
jne case.0x140057953.55
add eax, 0x4634800
or dword [rax + 1], 0xe8e0ffc8
add rax, rcx
jmp rax
loopne 0x140057b74
add byte [rax + 0x63], cl
add al, 0x81
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
invalid
loopne 0x140057b74
call sub.kernel32.dll_GetLastError
sub al, 0xa
or al, byte [0x188cc0493]
add eax, 0x48c68900
mov esi, eax
shl rsi, 0x20
shl esi, 0x20
out 0x20, al
or rsi, 2
mov qword [rsp + 0x48], rsi
mov dword [rsp + 0x48], esi
mov qword [rsp + 0x40], 1
mov qword [rsp + 0x40], 1
and al, 0x40
add dword [rax], eax
add byte [rax], al
mov eax, esi
and eax, 3
lea rcx, [0x1400af164]
lea ecx, [0x1400af164]
lea ecx, [0x1400af164]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
invalid
invalid
loopne 0x140057bcd
movzx eax, byte [rsi + 0x10]
jmp 0x140057bf3
mov dh, 0x46
adc bl, ch
xor byte [rbx + 0x483c2444], cl
mov eax, dword [rsp + 0x3c]
add rdi, rax
mov eax, dword [rsp + 0x3c]
add rdi, rax
mov qword [rbx + 0x10], rdi
mov rax, qword [rbx + 0x18]
sbb byte [rax + 0x39], cl
clc
adc byte [rax - 0x75], cl
sbb byte [r8 + 0x39], cl
sbb byte [rax + 0x39], cl
sbb byte [rax + 0x39], cl
clc
cmova rdi, rax
clc
mov qword [rbx + 0x18], rdi
xor edi, edi
jmp 0x140057c07
movzx eax, byte [rsi + 0xf]
jmp 0x140057bf3
invalid
or al, 0x48
mov ecx, esi
mov rcx, rsi
shr rcx, 0x20
call dbg.decode_error_kind
and al, ch
insd dword [rdi], dx
jp 0x140057bf2
add byte [rcx], dh
xor edi, edi
invalid
cmp al, 0xb
cmovne rdi, rsi
jne 0x140057c07
lea rcx, [rsp + 0x48]
call dbg.drop_in_place<std::io::error::Error>
mov rax, rdi
clc
add rsp, 0x70
pop rbx
pop rdi
pop rsi
ret
mov rax, rsi
shr rax, 0x20
call 0x168fdff3c
call 0x168fdff3c
ja case.default.0x140057c2c
lea rcx, [0x1400af174]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
add eax, ecx
invalid
add eax, ecx
jmp rax
xor eax, eax
jmp 0x140057bf3
mov al, 0x29
jmp 0x140057bf3
sub ebx, ebp
mov ebp, 0xb9eb01b0
mov al, 1
jmp 0x140057bf3
mov al, 1
jmp 0x140057bf3
mov al, 2
jmp 0x140057bf3
mov al, 3
jmp 0x140057bf3
invalid
mov cl, 0xb0
add al, 0xeb
lodsd eax, dword [rsi]
mov al, 4
jmp 0x140057bf3
mov al, 5
jmp 0x140057bf3
mov al, 6
jmp 0x140057bf3
mov al, 7
jmp 0x140057bf3
invalid
mov al, 8
jmp 0x140057bf3
mov al, 9
jmp 0x140057bf3
mov al, 0xa
jmp 0x140057bf3
mov al, 0xb
jmp 0x140057bf3
mov al, 0xc
jmp 0x140057bf3
mov al, 0xd
jmp 0x140057bf3
invalid
mov dword [rax - 0x4f7a14f2], esi
por mm0, qword [rcx + 0x7ae910b0]
jmp 0x140057bf3
mov al, 0x10
invalid
jp 0x140057c76
mov al, 0xe
jmp 0x140057bf3
mov al, 0xf
jmp 0x140057bf3
mov al, 0x10
jmp 0x140057bf3
invalid
invalid
invalid
mov al, 0x11
jmp 0x140057bf3
invalid
invalid
invalid
mov al, 0x12
jmp 0x140057bf3
invalid
invalid
invalid
mov al, 0x13
jmp 0x140057bf3
invalid
invalid
invalid
invalid
invalid
invalid
mov al, 0x14
jmp 0x140057bf3
invalid
invalid
invalid
mov al, 0x15
jmp 0x140057bf3
invalid
invalid
invalid
mov al, 0x16
jmp 0x140057bf3
invalid
invalid
invalid
mov al, 0x17
jmp 0x140057bf3
invalid
invalid
invalid
mov al, 0x18
jmp 0x140057bf3
invalid
invalid
invalid
mov al, 0x19
jmp 0x140057bf3
invalid
invalid
invalid
mov al, 0x1a
jmp 0x140057bf3
invalid
invalid
invalid
mov al, 0x1b
jmp 0x140057bf3
invalid
invalid
invalid
mov al, 0x1c
jmp 0x140057bf3
invalid
invalid
invalid
mov al, 0x1d
jmp 0x140057bf3
invalid
invalid
invalid
mov al, 0x1e
jmp 0x140057bf3
invalid
invalid
invalid
mov al, 0x1f
jmp 0x140057bf3
invalid
invalid
invalid
mov al, 0x20
jmp 0x140057bf3
invalid
invalid
invalid
mov al, 0x21
jmp 0x140057bf3
invalid
invalid
invalid
mov al, 0x22
jmp 0x140057bf3
invalid
invalid
invalid
mov al, 0x23
jmp 0x140057bf3
invalid
invalid
invalid
mov al, 0x24
jmp 0x140057bf3
invalid
mov al, 0x25
jmp 0x140057bf3
invalid
invalid
invalid
mov al, 0x26
jmp 0x140057bf3
mov al, 0x27
jmp 0x140057bf3
invalid
mov al, 0x28
jmp 0x140057bf3
lea r8, [0x1400afa48]
mov rcx, rdi
call dbg.slice_start_index_len_fail
int3
add byte [rax], al
lea ecx, [rsp + 0x30]
mov rdx, rbx
mov r8, r9
call dbg.small_probe_read<&std::sys::windows::handle::Handle>
cmp qword [rsp + 0x30], 0
mov rax, qword [rsp + 0x38]
je 0x140057da5
mov qword [rsi + 8], rax
mov eax, 1
mov qword [rsi], rax
jmp 0x140057f6b
test rax, rax
je 0x140057f7c
mov r9, qword [rsp + 0x28]
mov rdi, qword [r9]
mov edi, dword [rcx]
mov edi, dword [rcx]
mov r13, qword [r9 + 0x10]
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x20], rsi
mov esi, 0x2000
add byte [rbp + 0x31], al
dec dword [rbp + rcx*4 + 0x74]
and al, 0x30
add byte [rbp + 0x31], al
dec dword [rbp + rcx*4 + 0x74]
and al, 0x30
lea rbp, [0x1400af218]
mov qword [rsp + 0x58], r12
cmp rdi, r12
jne 0x140057e1c
cmp r13, rdi
jne 0x140057e1c
mov rcx, r14
mov rdx, rbx
mov r8, r9
mov rdi, r9
iretd
call dbg.small_probe_read<&std::sys::windows::handle::Handle>
cmp qword [rsp + 0x30], 0
mov rax, qword [rsp + 0x38]
jne 0x140057f9d
iretd
mov r13, qword [rdi + 0x10]
test rax, rax
je 0x140057faf
mov r9, rdi
mov rdi, qword [rdi]
cmp r13, rdi
je 0x140057f38
mov rax, qword [r9 + 8]
add rax, r13
mov r12, rdi
sub r12, r13
cmp r12, rsi
cmovae r12, rsi
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x38], r12
mov qword [rsp + 0x40], 0
mov qword [rsp + 0x48], r15
mov rcx, rbx
mov rdx, r14
call sym.std::sys::windows::handle::Handle::read_buf::h35a1e6e0d7ae59fc
test rax, rax
lea r15, [rsp + 0x60]
jne 0x140057f0d
add byte [rax], al
add byte [rax], al
mov rcx, qword [rsp + 0x40]
mov rax, qword [rsp + 0x48]
mov r15, rax
sub r15, rcx
jb 0x140057fc6
add dword [rax], r8d
invalid
add dword [rax], r8d
add byte [rax - 0x75], cl
push rsp
and al, 0x38
mov rdx, qword [rsp + 0x38]
cmp rax, rdx
mov r9, qword [rsp + 0x28]
ja 0x140057fd5
test rcx, rcx
je 0x140057f8b
add r13, rcx
cmp rax, r12
mov rdx, 0xffffffffffffffff
invalid
invalid
dec dword [rax + 0xf]
lea rax, [rsi + rsi]
test rsi, rsi
cmovs rax, rdx
cmp r12, rsi
cmovb rax, rsi
mov qword [r9 + 0x10], r13
cmp rcx, r12
cmove rsi, rax
mov r12, qword [rsp + 0x58]
cmp rdi, r12
je 0x140057de2
invalid
jmp 0x140057e1c
mov ecx, eax
and ecx, 3
movsxd rcx, dword [rbp + rcx*4]
add rcx, rbp
jmp rcx
mov r8d, 0x20
mov rcx, r9
mov rdx, rdi
call sym.alloc::raw_vec::RawVec_T_A_::reserve::do_reserve_and_handle::h6d5d947a81c0cfd9
mov r9, qword [rsp + 0x28]
mov rdi, qword [r9]
mov r13, qword [r9 + 0x10]
jmp 0x140057e25
mov qword [rcx], rax
add rsp, 0x68
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov qword [rsi + 8], 0
xor eax, eax
jmp 0x140057d9d
sub r13, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x20]
mov qword [rcx + 8], r13
xor eax, eax
jmp 0x140057f68
mov rcx, qword [rsp + 0x20]
mov qword [rcx + 8], rax
mov qword [rcx], 1
jmp 0x140057f6b
sub r13, qword [rsp + 0x50]
mov rax, qword [rsp + 0x20]
mov qword [rax + 8], r13
mov qword [rax], 0
jmp 0x140057f6b
lea r8, [0x1400b2300]
mov rdx, rax
call dbg.slice_index_order_fail
lea r8, [0x1400b2300]
mov rcx, rax
call dbg.slice_end_index_len_fail
int3
lea rcx, [rsp + 0xa0]
call dbg.current_exe
mov rsi, qword [rsp + 0xa0]
movabs rax, 0x8000000000000000
cmp rsi, rax
jne 0x14005a076
lea rcx, [rsp + 0xa8]
call dbg.drop_in_place<std::io::error::Error>
jmp 0x14005a152
mov rdi, qword [rsp + 0xa8]
mov rbx, qword [rsp + 0xb0]
mov r14, qword [rsp + 0xb8]
mov rcx, rdi
mov rdx, rbx
call dbg.parent
cmp rbx, rdx
cmovb rdx, rbx
test rax, rax
cmove rdx, rbx
mov qword [rsp + 0x260], rsi
mov qword [rsp + 0x268], rdi
mov qword [rsp + 0x270], rdx
mov qword [rsp + 0x278], r14
lea rcx, [rsp + 0x260]
mov rdx, r15
mov r8, r13
call dbg._push
cmp qword [rsp + 0x68], 1
je 0x14005a0fc
lea rdx, str.exe.NULexit_code:
lea rcx, [rsp + 0x260]
mov r8d, 3
call sym.std::path::PathBuf::_set_extension::h46abf9be3c5e611c
mov rsi, qword [rsp + 0x268]
mov r8, qword [rsp + 0x270]
lea rcx, [rsp + 0x1a0]
mov rdx, rsi
call dbg.program_exists
mov rdx, qword [rsp + 0x260]
test rdx, rdx
je 0x14005a137
mov r8d, 1
mov rcx, rsi
call sym.__rust_dealloc
mov rcx, qword [rsp + 0x1a0]
movabs rax, 0x8000000000000000
cmp rcx, rax
jne 0x14005a48f
mov qword [rsp + 0x98], r12
mov qword [rsp + 0x150], 0
mov qword [rsp + 0x158], 2
mov qword [rsp + 0x160], 0
mov r8d, 0x200
mov eax, 2
mov qword [rsp + 0x80], rax
xor eax, eax
mov qword [rsp + 0x60], rax
mov r12d, 0xffffffff
xor esi, esi
xor ebp, ebp
mov qword [rsp + 0x90], r15
cmp r8, 0x201
jb 0x14005a1d7
jmp 0x14005a1f0
mov r15, qword [rsp + 0x90]
jae 0x14005a2bc
cmp r8, 0x201
jae 0x14005a1f0
mov ebx, 0x200
lea rdi, [rsp + 0x260]
mov r15, r8
jmp 0x14005a252
sub r8, rbp
sub rsi, rbp
cmp rsi, r8
mov rsi, qword [rsp + 0x60]
jae 0x14005a228
lea rcx, [rsp + 0x150]
mov rdx, rbp
call sym.alloc::raw_vec::RawVec_T_A_::reserve::do_reserve_and_handle::h0f5ccd690f57f673
mov rsi, qword [rsp + 0x150]
mov rax, qword [rsp + 0x158]
mov qword [rsp + 0x80], rax
cmp rsi, r12
mov ebp, 0xffffffff
cmovb rbp, rsi
mov qword [rsp + 0x160], rbp
mov rax, rsi
mov qword [rsp + 0x60], rsi
mov rbx, rbp
mov rdi, qword [rsp + 0x80]
mov r15, rbp
xor ecx, ecx
call sub.kernel32.dll_SetLastError
mov rcx, rdi
mov edx, r15d
call sub.kernel32.dll_GetSystemDirectoryW
mov r14d, eax
test eax, eax
jne 0x14005a278
call sub.kernel32.dll_GetLastError
test eax, eax
jne 0x14005a4a9
mov r8d, r14d
cmp r15, r8
jne 0x14005a1c0
call sub.kernel32.dll_GetLastError
cmp eax, 0x7a
jne 0x14005c7a4
add r15, r15
mov eax, 0xffffffff
cmp r15, rax
mov r12d, 0xffffffff
cmovae r15, rax
mov r8, r15
cmp r8, 0x201
jae 0x14005a1f0
jmp 0x14005a1d7
cmp rbx, r8
jb 0x14005c8a0
lea rcx, [rsp + 0xa0]
mov rdx, rdi
call dbg.from_wide
lea rcx, [rsp + 0xa0]
mov rdx, r15
mov r8, r13
call dbg._push
cmp qword [rsp + 0x68], 1
je 0x14005a30a
lea rdx, str.exe.NULexit_code:
lea rcx, [rsp + 0xa0]
mov r8d, 3
call sym.std::path::PathBuf::_set_extension::h46abf9be3c5e611c
mov rdi, qword [rsp + 0xa8]
mov r8, qword [rsp + 0xb0]
lea rcx, [rsp + 0x1a0]
mov rdx, rdi
call dbg.program_exists
mov rdx, qword [rsp + 0xa0]
test rdx, rdx
je 0x14005a345
mov r8d, 1
mov rcx, rdi
call sym.__rust_dealloc
movups xmm0, xmmword [rsp + 0x1a0]
movaps xmmword [rsp + 0x130], xmm0
mov rax, qword [rsp + 0x1b0]
mov qword [rsp + 0x140], rax
jmp 0x14005a4db
mov rcx, rsi
mov rdx, rdi
call sym.__std::sys::windows::os::SplitPaths_as_core::iter::traits::iterator::Iterator_::next::h5294acb6b215382e
mov rdx, qword [rsp + 0x260]
movabs rax, 0x8000000000000000
cmp rdx, rax
je 0x14005a040
mov rcx, qword [rsp + 0x268]
mov rax, qword [rsp + 0x270]
test rax, rax
je 0x14005a476
mov r8, qword [rsp + 0x278]
mov qword [rsp + 0x260], rdx
mov qword [rsp + 0x268], rcx
mov qword [rsp + 0x270], rax
mov qword [rsp + 0x278], r8
mov rcx, rsi
mov rdx, r15
mov r8, r13
call dbg._push
cmp qword [rsp + 0x68], 1
je 0x14005a419
mov r8d, 3
mov rcx, rsi
mov rdx, rbp
call sym.std::path::PathBuf::_set_extension::h46abf9be3c5e611c
mov r14, qword [rsp + 0x268]
mov r8, qword [rsp + 0x270]
mov rcx, rbx
mov rdx, r14
call dbg.program_exists
mov rdx, qword [rsp + 0x260]
test rdx, rdx
je 0x14005a44f
mov r8d, 1
mov rcx, r14
call sym.__rust_dealloc
mov rcx, qword [rsp + 0x1a0]
movabs rax, 0x8000000000000000
cmp rcx, rax
jne 0x14005a48f
mov rcx, rsi
mov rdx, rdi
call sym.__std::sys::windows::os::SplitPaths_as_core::iter::traits::iterator::Iterator_::next::h5294acb6b215382e
jmp 0x14005a396
test rdx, rdx
je 0x14005a38b
mov r8d, 1
call sym.__rust_dealloc
jmp 0x14005a38b
mov qword [rsp + 0x60], rcx
mov r14, qword [rsp + 0x1a8]
mov rdi, qword [rsp + 0x1b0]
jmp 0x14005a725
call sub.kernel32.dll_GetLastError
shl rax, 0x20
or rax, 2
mov qword [rsp + 0x138], rax
movabs rax, 0x8000000000000000
inc rax
mov qword [rsp + 0x130], rax
mov r15, qword [rsp + 0x90]
mov rdx, qword [rsp + 0x60]
test rdx, rdx
je 0x14005a4fb
add rdx, rdx
mov r8d, 2
mov rcx, qword [rsp + 0x80]
call sym.__rust_dealloc
mov rdx, qword [rsp + 0x130]
movabs rax, 0x8000000000000000
lea rsi, [rax + 2]
cmp rdx, rsi
jge 0x14005a544
cmp rdx, rax
je 0x14005b1d1
add byte [rax], al
add byte [rax], al
movabs rax, 0x8000000000000001
cmp rdx, rax
jne 0x14005b1bb
lea rcx, [rsp + 0x138]
call dbg.drop_in_place<std::io::error::Error>
jmp 0x14005b1d1
mov qword [rsp + 0x60], rdx
mov r14, qword [rsp + 0x138]
mov rdi, qword [rsp + 0x140]
mov r12, qword [rsp + 0x98]
jmp 0x14005a725
add bl, ch
xor eax, 0x24948b48
jo 0x14005a5dc
add byte [rax], al
mov qword [rsp + 0x260], rcx
mov qword [rsp + 0x268], rax
mov qword [rsp + 0x270], rdx
lea rcx, [rsp + 0x110]
lea rdx, [rsp + 0x260]
call dbg.from_wide_to_user_path
test rsi, rsi
je 0x14005a61f
mov r8d, 1
mov rcx, rbx
mov rdx, rsi
call sym.__rust_dealloc
mov rcx, qword [rsp + 0x110]
mov r14, qword [rsp + 0x118]
movabs rax, 0x8000000000000000
mov qword [rsp + 0x60], rcx
cmp rcx, rax
jne 0x14005a71d
mov rax, qword [rsp + 0x58]
mov qword [rax], r14
mov qword [rax + 0x10], 2
cmp qword [rsp + 0x220], 0
je 0x14005a6eb
mov rcx, qword [rsp + 0x228]
test rcx, rcx
je 0x14005a6c2
mov rdx, qword [rsp + 0x230]
mov rax, qword [rsp + 0x238]
mov qword [rsp + 0x268], 0
test byte [rax + rbp*2], ah
add al, byte [rax]
add byte [rax], al
add byte [rax], al
add byte [rax - 0x77], cl
mov word [rax + rsi*2], fs
add al, byte [rax]
add byte [rax - 0x77], cl
xchg esp, eax
and al, 0x78
add al, byte [rax]
add byte [rax - 0x39], cl
test byte [rax + rcx*4], ah
add al, byte [rax]
add byte [rax], al
add byte [rax], al
add byte [rax - 0x77], cl
mov word [rax + rdx*4], fs
add al, byte [rax]
add byte [rax - 0x77], cl
xchg esp, eax
and al, 0x98
add al, byte [rax]
add byte [rax], al
test byte [rax + rbp*2], ah
add al, byte [rax]
add byte [rax], al
add byte [rax], al
add byte [rax - 0x77], cl
mov word [rax + rsi*2], fs
add al, byte [rax]
add byte [rax - 0x77], cl
xchg esp, eax
and al, 0x78
add al, byte [rax]
add byte [rax - 0x39], cl
test byte [rax + rcx*4], ah
add al, byte [rax]
add byte [rax], al
add byte [rax], al
add byte [rax - 0x77], cl
mov word [rax + rdx*4], fs
add al, byte [rax]
add byte [rax - 0x77], cl
xchg esp, eax
and al, 0x98
add al, byte [rax]
add byte [rax], al
mov ecx, 1
mov ecx, 1
jmp 0x14005a6c6
xor ecx, ecx
xor eax, eax
mov qword [rsp + 0x260], rcx
mov qword [rsp + 0x280], rcx
mov qword [rsp + 0x2a0], rax
lea rcx, [rsp + 0x260]
lea ecx, [rsp + 0x260]
call dbg.drop_in_place<alloc::collections::btree::map::IntoIter<std::sys::windows::process::EnvKey, std::ffi::os_str::OsString, alloc::alloc::Global>>
mov rax, qword [rsp + 0x200]
cmp dword [rax], 4
jb 0x14005a701
mov rcx, qword [rax + 8]
call fcn.1400a8474
movaps xmm6, xmmword [rsp + 0x660]
add rsp, 0x678
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov rdi, qword [rsp + 0x120]
cmp rdi, 5
mov qword [rsp + 0x98], r12
jb case.0x14005aa4b.68
cmp word [r14 + rdi*2 - 0xa], 0x2e
jne case.0x14005aa4b.68
cmp word [r14 + rdi*2 - 2], 0
je 0x14005aa2b
mov rdi, qword [r12 + 0x28]
mov rsi, qword [r12 + 0x30]
movzx ebx, byte [r12 + 0xc5]
mov qword [rsp + 0xa0], 0
mov qword [rsp + 0xa8], 2
add byte [rax], al
add byte [rdx], al
add byte [rax], al
add byte [rax - 0x39], cl
test byte [rax + rsi*4], ah
add byte [rax], al
add byte [rax], al
add byte [rax], al
add byte [rax - 0x73], cl
mov word [rax + riz*4], fs
add byte [rax], al
add byte [rcx], dh
shr al, cl
loope 0x14005a7e8
cld
dec dword [rax - 0x75]
test byte [rax + rbp*4], ah
test al, 0
add byte [rax], al
add byte [rax], al
add byte [rdx], al
add byte [rax], al
add byte [rax - 0x39], cl
test byte [rax + rsi*4], ah
add byte [rax], al
add byte [rax], al
add byte [rax], al
add byte [rax - 0x73], cl
mov word [rax + riz*4], fs
add byte [rax], al
add byte [rcx], dh
shr al, cl
loope 0x14005a7e8
cld
dec dword [rax - 0x75]
test byte [rax + rbp*4], ah
test al, 0
add byte [rax], al
mov rcx, qword [rsp + 0xb0]
mov word [rax + rcx*2], 0x22
test al, 0
add byte [rax], al
mov rcx, qword [rsp + 0xb0]
mov word [rax + rcx*2], 0x22
inc rcx
mov qword [rsp + 0xb0], rcx
mov qword [rsp + 0x260], r15
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x268], rax
mov word [rsp + 0x270], 0
lea rcx, [rsp + 0xa0]
lea rdx, [rsp + 0x260]
call dbg.spec_extend<u16, std::sys_common::wtf8::EncodeWide, alloc::alloc::Global>
mov rdx, qword [rsp + 0xb0]
mov al, 0
add byte [rax], al
cmp rdx, qword [rsp + 0xa0]
jne 0x14005a80b
lea rcx, [rsp + 0xa0]
call dbg.reserve_for_push<u16, alloc::alloc::Global>
mov rdx, qword [rsp + 0xb0]
mov rax, qword [rsp + 0xa8]
mov word [rax + rdx*2], 0x22
inc rdx
mov qword [rsp + 0xb0], rdx
add byte [rax], al
add byte [rax - 0x3f], cl
out 3, al
add byte [rax], al
add byte [rax - 0x3f], cl
out 3, al
lea r15, [rsi + rsi*4]
lea r12, [rsp + 0xa0]
nop word cs:[rax + rax]
test r15, r15
je 0x14005a8c3
mov rdx, qword [rsp + 0xb0]
cmp rdx, qword [rsp + 0xa0]
jne 0x14005a867
xchg esp, eax
and al, 0xb0
add byte [rax], al
add byte [rax + 0x3b], cl
xchg esp, eax
and al, 0xa0
add byte [rax], al
add byte [rbp + 0x10], dh
mov rcx, r12
call dbg.reserve_for_push<u16, alloc::alloc::Global>
mov rdx, qword [rsp + 0xb0]
mov rax, qword [rsp + 0xa8]
mov word [rax + rdx*2], 0x20
inc rdx
mov qword [rsp + 0xb0], rdx
mov rcx, r12
mov rdx, rdi
mov r8d, ebx
call dbg.append_arg
mov rsi, rax
add rdi, 0x28
add r15, 0xffffffffffffffd8
test rax, rax
je 0x14005a840
mov rdx, qword [rsp + 0xa0]
test rdx, rdx
je 0x14005a8e2
mov rcx, qword [rsp + 0xa8]
add rdx, rdx
mov r8d, 2
call sym.__rust_dealloc
jmp 0x14005a8e2
mov rax, qword [rsp + 0xa0]
mov rsi, qword [rsp + 0xa8]
movabs rcx, 0x8000000000000000
add byte [rax], al
add byte [rax], al
add byte [rax], al
add byte [rax + 0x75c83948], al
invalid
add byte [rax], al
add byte [rax], al
add byte [rax], al
add byte [rax + 0x75c83948], al
cmp ecx, dword [rax - 0x75]
and al, 0x58
mov rax, qword [rsp + 0x58]
mov qword [rax], rsi
mov qword [rax + 0x10], 2
xor esi, esi
mov rdx, qword [rsp + 0x60]
test rdx, rdx
invalid
je 0x14005a90f
sal byte [rcx + rdx + 0x48], cl
add edx, edx
add rdx, rdx
mov r8d, 2
mov rcx, r14
call sym.__rust_dealloc
test sil, sil
je 0x14005a657
jmp 0x14005a6eb
mov rdx, qword [rsp + 0xb0]
mov cl, 1
mov dword [rsp + 0x80], ecx
mov rcx, qword [rsp + 0x60]
mov qword [rsp + 0x70], rcx
mov qword [rsp + 0x90], r14
mov qword [rsp + 0x110], rax
mov qword [rsp + 0x118], rsi
mov qword [rsp + 0x120], rdx
cmp rdx, rax
mov rdi, qword [rsp + 0x98]
jne 0x14005a985
lea rcx, [rsp + 0x110]
mov rdx, rax
call dbg.reserve_for_push<u16, alloc::alloc::Global>
mov rsi, qword [rsp + 0x118]
mov rdx, qword [rsp + 0x120]
mov word [rsi + rdx*2], 0
add byte [rax], al
inc rdx
mov qword [rsp + 0x120], rdx
cmp byte [rdi + 0xc4], 0
mov eax, 0x400
mov r13d, 0x608
cmove r13d, eax
or r13d, dword [rdi + 0xc0]
rol byte [rax], 0
add byte [rax - 0x7d], cl
mov esp, 0x22024
add byte [rax], al
rol byte [rax], 0
add byte [rax - 0x7d], cl
mov esp, 0x22024
add byte [rax], al
je 0x14005abf4
mov r15, qword [rsp + 0x228]
mov r12, qword [rsp + 0x230]
mov rbp, qword [rsp + 0x238]
mov qword [rsp + 0x130], r15
mov qword [rsp + 0x138], r12
mov qword [rsp + 0x140], rbp
mov qword [rsp + 0x150], 0
mov qword [rsp + 0x158], 2
mov qword [rsp + 0x160], 0
test rbp, rbp
je 0x14005ac9c
mov ebx, 2
xor edi, edi
jmp 0x14005accf
movzx eax, word [r14 + rdi*2 - 8]
lea ecx, [rax - 0x42]
cmp ecx, 0x21
ja case.0x14005aa4b.68
lea rdx, [0x1400af228]
movsxd rcx, dword [rdx + rcx*4]
add rcx, rdx
jmp rcx
movzx ecx, word [r14 + rdi*2 - 6]
or ecx, 0x20
cmp ecx, 0x61
jne 0x14005aa69
movzx ecx, word [r14 + rdi*2 - 4]
or ecx, 0x20
cmp ecx, 0x74
je 0x14005aa99
cmp ax, 0x43
jne case.0x14005aa4b.68
movzx eax, word [r14 + rdi*2 - 6]
or eax, 0x20
cmp eax, 0x6d
jne case.0x14005aa4b.68
movzx eax, word [r14 + rdi*2 - 4]
add eax, 0xffffffbc
test eax, 0xffdf
jne case.0x14005aa4b.68
mov qword [rsp + 0x78], r14
mov qword [rsp + 0x88], rdi
mov qword [rsp + 0xa0], 0
lea rax, [rsp + 0xa8]
mov qword [rsp + 0x68], rax
mov qword [rsp + 0xa8], 2
mov qword [rsp + 0xb0], 0
mov r13d, 0x200
mov eax, 2
mov qword [rsp + 0x80], rax
xor eax, eax
mov qword [rsp + 0x70], rax
mov r14d, 0xffffffff
xor edi, edi
xor r12d, r12d
cmp r13, 0x201
jb 0x14005ab16
jmp 0x14005ab28
jae 0x14005b599
cmp r13, 0x201
jae 0x14005ab28
mov ebx, 0x200
lea rbp, [rsp + 0x260]
mov rsi, r13
jmp 0x14005ab8b
sub r13, r12
sub rdi, r12
cmp rdi, r13
jae 0x14005ab63
lea rcx, [rsp + 0xa0]
mov rdx, r12
mov r8, r13
call sym.alloc::raw_vec::RawVec_T_A_::reserve::do_reserve_and_handle::h0f5ccd690f57f673
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0x70], rax
mov rax, qword [rsp + 0xa8]
mov qword [rsp + 0x80], rax
mov rdi, qword [rsp + 0x70]
cmp rdi, r14
mov r12d, 0xffffffff
cmovb r12, rdi
mov qword [rsp + 0xb0], r12
mov rbx, r12
mov rbp, qword [rsp + 0x80]
mov rsi, r12
xor ecx, ecx
call sub.kernel32.dll_SetLastError
mov rcx, rbp
mov edx, esi
call sub.kernel32.dll_GetSystemDirectoryW
mov r15d, eax
test eax, eax
jne 0x14005abb0
call sub.kernel32.dll_GetLastError
test eax, eax
jne 0x14005b7c9
mov r13d, r15d
cmp rsi, r13
jne 0x14005ab07
call sub.kernel32.dll_GetLastError
cmp eax, 0x7a
jne 0x14005c878
add rsi, rsi
mov eax, 0xffffffff
cmp rsi, rax
mov r14d, 0xffffffff
cmovae rsi, rax
mov r13, rsi
cmp r13, 0x201
jae 0x14005ab28
jmp 0x14005ab16
mov eax, 2
mov qword [rsp + 0x88], rax
xor ebx, ebx
xor eax, eax
mov qword [rsp + 0x68], rax
movabs rax, 0x8000000000000000
cmp qword [rdi + 0x38], rax
jne 0x14005b885
mov rsi, rdi
mov r8d, 2
xor r12d, r12d
xor eax, eax
mov qword [rsp + 0x108], rax
mov qword [rsp + 0x128], r8
xorps xmm0, xmm0
movaps xmmword [rsp + 0x130], xmm0
mov qword [rsp + 0x140], 0
lea rdi, [0x1400e41f8]
mov rcx, rdi
call sub.kernel32.dll_AcquireSRWLockExclusive
mov rax, qword [0x1400e41c8]
movabs rcx, 0x8000000000000000
dec rcx
mov qword [rsp + 0x78], rcx
test rax, rcx
mov qword [rsp + 0x258], rbx
je 0x14005b490
call dbg.is_zero_slow_path
mov ebp, eax
xor bpl, 1
jmp 0x14005b492
mov sil, 1
lea rcx, [rsp + 0x150]
xor edx, edx
call dbg.reserve_for_push<u16, alloc::alloc::Global>
mov rbx, qword [rsp + 0x158]
mov rdi, qword [rsp + 0x160]
mov word [rbx + rdi*2], 0
inc rdi
mov qword [rsp + 0x160], rdi
xor eax, eax
test r15, r15
setne al
cmove rbp, r15
mov qword [rsp + 0x260], rax
mov qword [rsp + 0x268], 0
mov qword [rsp + 0x270], r15
mov qword [rsp + 0x278], r12
mov qword [rsp + 0x280], rax
mov qword [rsp + 0x288], 0
mov qword [rsp + 0x290], r15
mov qword [rsp + 0x298], r12
mov qword [rsp + 0x2a0], rbp
lea r15, [rsp + 0xa0]
lea rdx, [rsp + 0x260]
mov rcx, r15
call dbg.dying_next<std::sys::windows::process::EnvKey, core::option::Option<std::ffi::os_str::OsString>, alloc::alloc::Global>
mov r12d, r13d
mov rax, qword [rsp + 0xa0]
test rax, rax
je 0x14005b7f2
mov r9, qword [rsp + 0xb0]
imul r8, r9, 0x38
mov rdx, qword [rax + r8 + 0x168]
movabs rcx, 0x8000000000000000
cmp rdx, rcx
je 0x14005b7f2
mov rcx, qword [rax + r8 + 0x170]
mov r13, qword [rax + r8 + 0x188]
mov r10, qword [rax + r8 + 0x190]
mov qword [rsp + 0x108], r10
mov r10, qword [rax + r8 + 0x198]
mov qword [rsp + 0x128], r10
shl r9, 5
mov r10, qword [rax + r9]
mov qword [rsp + 0x68], r10
mov r10, qword [rax + r9 + 8]
mov qword [rsp + 0x88], r10
mov r15, qword [rax + r9 + 0x10]
mov rax, qword [rax + r8 + 0x178]
add rax, rcx
xor r11d, r11d
mov r8, rcx
jmp 0x14005aded
xor r11d, r11d
test r9w, r9w
je 0x14005b103
mov r9w, 1
test r11w, r11w
jne 0x14005ade0
cmp r8, rax
je 0x14005ae9c
movzx r11d, byte [r8]
test r11b, r11b
js 0x14005ae12
inc r8
mov r10d, r11d
jmp 0x14005ae91
mov r10d, r11d
and r10d, 0x1f
movzx ebp, byte [r8 + 1]
and ebp, 0x3f
cmp r11b, 0xdf
jbe 0x14005ae5a
movzx esi, byte [r8 + 2]
shl ebp, 6
and esi, 0x3f
or esi, ebp
cmp r11b, 0xf0
jb 0x14005ae67
movzx r11d, byte [r8 + 3]
add r8, 4
and r10d, 7
shl r10d, 0x12
shl esi, 6
and r11d, 0x3f
or r11d, esi
or r10d, r11d
jmp 0x14005ae72
add r8, 2
shl r10d, 6
or r10d, ebp
jmp 0x14005ae91
add r8, 3
shl r10d, 0xc
or r10d, esi
cmp r10d, 0xffff
jbe 0x14005ae91
and r10d, 0x3ff
or r10d, 0xdc00
mov r11d, r10d
jmp 0x14005ade3
xor r11d, r11d
mov r9d, r10d
jmp 0x14005ade3
test rdx, rdx
je 0x14005aebf
movabs rax, 0x8000000000000000
cmp rdx, rax
je 0x14005c656
mov r8d, 1
call sym.__rust_dealloc
mov rax, qword [rsp + 0x150]
sub rax, rdi
mov r8, qword [rsp + 0x128]
cmp rax, r8
jae 0x14005aeff
lea rcx, [rsp + 0x150]
mov rdx, rdi
call sym.alloc::raw_vec::RawVec_T_A_::reserve::do_reserve_and_handle::h0f5ccd690f57f673
mov rbx, qword [rsp + 0x158]
mov rdi, qword [rsp + 0x160]
mov r8, qword [rsp + 0x128]
mov rbp, r8
add r8, r8
mov rsi, rbx
lea rcx, [rbx + rdi*2]
mov rbx, qword [rsp + 0x108]
mov rdx, rbx
call sym.memcpy
add rdi, rbp
mov qword [rsp + 0x160], rdi
test r13, r13
je 0x14005af40
add r13, r13
mov r8d, 2
mov rcx, rbx
mov rdx, r13
call sym.__rust_dealloc
cmp rdi, qword [rsp + 0x150]
jne 0x14005af6f
lea rcx, [rsp + 0x150]
mov rdx, rdi
call dbg.reserve_for_push<u16, alloc::alloc::Global>
mov r13d, r12d
mov rsi, qword [rsp + 0x158]
mov rdi, qword [rsp + 0x160]
jmp 0x14005af72
mov r13d, r12d
mov word [rsi + rdi*2], 0x3d
inc rdi
mov qword [rsp + 0x160], rdi
mov rax, qword [rsp + 0x88]
add r15, rax
xor r8d, r8d
mov rsi, qword [rsp + 0x68]
jmp 0x14005afa4
xor r8d, r8d
test cx, cx
je 0x14005b152
mov cx, 1
test r8w, r8w
jne 0x14005af98
cmp rax, r15
je 0x14005b04e
movzx r8d, byte [rax]
test r8b, r8b
js 0x14005afc8
inc rax
mov edx, r8d
jmp 0x14005b044
mov edx, r8d
and edx, 0x1f
movzx r10d, byte [rax + 1]
and r10d, 0x3f
cmp r8b, 0xdf
jbe 0x14005b012
movzx r9d, byte [rax + 2]
shl r10d, 6
and r9d, 0x3f
or r9d, r10d
cmp r8b, 0xf0
jb 0x14005b01e
movzx r8d, byte [rax + 3]
add rax, 4
and edx, 7
shl edx, 0x12
shl r9d, 6
and r8d, 0x3f
or r8d, r9d
or edx, r8d
jmp 0x14005b028
add rax, 2
shl edx, 6
or edx, r10d
jmp 0x14005b044
add rax, 3
shl edx, 0xc
or edx, r9d
cmp edx, 0xffff
jbe 0x14005b044
and edx, 0x3ff
or edx, 0xdc00
mov r8d, edx
jmp 0x14005af9b
xor r8d, r8d
mov ecx, edx
jmp 0x14005af9b
movabs rax, 0x8000000000000000
cmp rsi, rax
je 0x14005c684
mov rax, qword [rsp + 0x88]
mov qword [rsp + 0x1a0], rax
mov qword [rsp + 0x1a8], r15
mov word [rsp + 0x1b0], 0
lea rcx, [rsp + 0x150]
lea rdx, [rsp + 0x1a0]
call dbg.spec_extend<u16, std::sys_common::wtf8::EncodeWide, alloc::alloc::Global>
test rsi, rsi
lea r15, [rsp + 0xa0]
je 0x14005b0bb
mov r8d, 1
mov rcx, qword [rsp + 0x88]
mov rdx, rsi
call sym.__rust_dealloc
mov rdi, qword [rsp + 0x160]
cmp rdi, qword [rsp + 0x150]
jne 0x14005b0e5
lea rcx, [rsp + 0x150]
mov rdx, rdi
call dbg.reserve_for_push<u16, alloc::alloc::Global>
mov rdi, qword [rsp + 0x160]
mov rbx, qword [rsp + 0x158]
mov word [rbx + rdi*2], 0
inc rdi
mov qword [rsp + 0x160], rdi
jmp 0x14005ad33
lea rbx, str.nul_byte_found_in_provided_data
test rdx, rdx
je 0x14005b11a
mov r8d, 1
call sym.__rust_dealloc
mov rdx, qword [rsp + 0x68]
test rdx, rdx
je 0x14005b137
mov r8d, 1
mov rcx, qword [rsp + 0x88]
call sym.__rust_dealloc
test r13, r13
je 0x14005b174
add r13, r13
mov r8d, 2
mov rcx, qword [rsp + 0x108]
mov rdx, r13
jmp 0x14005b16f
lea rbx, str.nul_byte_found_in_provided_data
test rsi, rsi
je 0x14005b174
mov r8d, 1
mov rcx, qword [rsp + 0x88]
mov rdx, rsi
call sym.__rust_dealloc
xor esi, esi
lea rcx, [rsp + 0x260]
call dbg.drop_in_place<alloc::collections::btree::map::IntoIter<std::sys::windows::process::EnvKey, std::ffi::os_str::OsString, alloc::alloc::Global>>
mov rdx, qword [rsp + 0x150]
test rdx, rdx
je 0x14005b1a6
mov rcx, qword [rsp + 0x158]
add rdx, rdx
mov r8d, 2
call sym.__rust_dealloc
mov rax, qword [rsp + 0x58]
mov qword [rax], rbx
mov qword [rax + 0x10], 2
jmp 0x14005c47b
mov rcx, qword [rsp + 0x138]
add rdx, rdx
mov r8d, 2
call sym.__rust_dealloc
mov qword [rsp + 0x88], rsi
mov qword [rsp + 0x150], 0
mov qword [rsp + 0x158], 2
mov qword [rsp + 0x160], 0
mov r8d, 0x200
mov eax, 2
mov qword [rsp + 0x80], rax
xor eax, eax
mov qword [rsp + 0x60], rax
mov esi, 0xffffffff
xor r12d, r12d
xor ebp, ebp
cmp r8, 0x201
jb 0x14005b243
jmp 0x14005b255
mov r15, qword [rsp + 0x90]
jae 0x14005b31f
cmp r8, 0x201
jae 0x14005b255
mov ebx, 0x200
lea r14, [rsp + 0x260]
mov r15, r8
jmp 0x14005b2b7
sub r8, rbp
sub r12, rbp
cmp r12, r8
mov r12, qword [rsp + 0x60]
jae 0x14005b28d
lea rcx, [rsp + 0x150]
mov rdx, rbp
call sym.alloc::raw_vec::RawVec_T_A_::reserve::do_reserve_and_handle::h0f5ccd690f57f673
mov r12, qword [rsp + 0x150]
mov rax, qword [rsp + 0x158]
mov qword [rsp + 0x80], rax
cmp r12, rsi
mov ebp, 0xffffffff
cmovb rbp, r12
mov qword [rsp + 0x160], rbp
mov rax, r12
mov qword [rsp + 0x60], r12
mov rbx, rbp
mov r14, qword [rsp + 0x80]
mov r15, rbp
xor ecx, ecx
call sub.kernel32.dll_SetLastError
mov rcx, r14
mov edx, r15d
call sub.kernel32.dll_GetWindowsDirectoryW
mov edi, eax
test eax, eax
jne 0x14005b2dc
call sub.kernel32.dll_GetLastError
test eax, eax
jne 0x14005b3d2
mov r8d, edi
cmp r15, r8
jne 0x14005b22c
call sub.kernel32.dll_GetLastError
cmp eax, 0x7a
jne 0x14005c851
add r15, r15
mov eax, 0xffffffff
cmp r15, rax
mov esi, 0xffffffff
cmovae r15, rax
mov r8, r15
cmp r8, 0x201
jae 0x14005b255
jmp 0x14005b243
cmp rbx, r8
jb 0x14005c8b7
lea rcx, [rsp + 0xa0]
mov rdx, r14
call dbg.from_wide
mov r12, qword [rsp + 0x98]
lea rcx, [rsp + 0xa0]
mov rdx, r15
mov r8, r13
call dbg._push
cmp qword [rsp + 0x68], 1
je 0x14005b375
lea rdx, str.exe.NULexit_code:
lea rcx, [rsp + 0xa0]
mov r8d, 3
call sym.std::path::PathBuf::_set_extension::h46abf9be3c5e611c
mov rbx, qword [rsp + 0xa8]
mov r8, qword [rsp + 0xb0]
lea rcx, [rsp + 0x1a0]
mov rdx, rbx
call dbg.program_exists
mov rdx, qword [rsp + 0xa0]
test rdx, rdx
je 0x14005b3b0
mov r8d, 1
mov rcx, rbx
call sym.__rust_dealloc
movups xmm0, xmmword [rsp + 0x1a0]
movaps xmmword [rsp + 0x130], xmm0
mov rax, qword [rsp + 0x1b0]
mov qword [rsp + 0x140], rax
jmp 0x14005b40c
call sub.kernel32.dll_GetLastError
shl rax, 0x20
or rax, 2
mov qword [rsp + 0x138], rax
movabs rax, 0x8000000000000000
inc rax
mov qword [rsp + 0x130], rax
mov r12, qword [rsp + 0x98]
mov r15, qword [rsp + 0x90]
mov rdx, qword [rsp + 0x60]
test rdx, rdx
je 0x14005b42c
add rdx, rdx
mov r8d, 2
mov rcx, qword [rsp + 0x80]
call sym.__rust_dealloc
mov rdx, qword [rsp + 0x130]
cmp rdx, qword [rsp + 0x88]
jge 0x14005b476
movabs rax, 0x8000000000000000
cmp rdx, rax
je 0x14005b5f6
movabs rax, 0x8000000000000001
cmp rdx, rax
jne 0x14005b5e0
lea rcx, [rsp + 0x138]
call dbg.drop_in_place<std::io::error::Error>
jmp 0x14005b5f6
mov qword [rsp + 0x60], rdx
mov r14, qword [rsp + 0x138]
mov rdi, qword [rsp + 0x140]
jmp 0x14005a725
xor ebp, ebp
movzx ebx, byte [0x1400e4200]
xor eax, eax
test bl, bl
setne al
mov qword [rsp + 0x158], rdi
mov byte [rsp + 0x160], bpl
mov qword [rsp + 0x150], rax
mov qword [rsp + 0x1a0], 0
mov qword [rsp + 0x1b0], 0
mov qword [rsp + 0x1c0], 0
cmp byte [rsp + 0x198], 0
lea rax, [rsp + 0x248]
mov rdx, qword [rsp + 0x200]
cmovne rax, rdx
mov dword [rsp + 0x248], 2
lea rcx, [rsi + 0x58]
cmp dword [rsi + 0x58], 6
cmove rcx, rax
cmp dword [rsi + 0x68], 6
lea r15, [rsi + 0x68]
cmove r15, rdx
lea rdi, [rsi + 0x78]
cmp dword [rsi + 0x78], 6
cmove rdi, rdx
lea r8, [rsp + 0x1a0]
mov edx, 0xfffffff6
call dbg.to_handle
mov qword [rsp + 0x198], rdx
test rax, rax
je 0x14005b563
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x198]
mov qword [rax], rcx
mov qword [rax + 0x10], 2
jmp 0x14005c3a3
lea r8, [rsp + 0x1b0]
mov rcx, r15
mov edx, 0xfffffff5
call dbg.to_handle
mov r15, rdx
test rax, rax
je 0x14005b9db
mov rax, qword [rsp + 0x58]
mov qword [rax], r15
mov qword [rax + 0x10], 2
jmp 0x14005c396
cmp rbx, r13
jb 0x14005c8ce
test r15d, r15d
mov r14, qword [rsp + 0x78]
je 0x14005ba4c
lea rsi, [r13*2]
mov rax, qword [0x1400d1578]
movzx eax, byte [rax]
mov edx, 2
mov rcx, rsi
call sym.__rust_alloc
test rax, rax
je 0x14005c8e2
mov rcx, rax
jmp 0x14005ba53
mov rcx, qword [rsp + 0x138]
add rdx, rdx
mov r8d, 2
call sym.__rust_dealloc
lea rdx, str.PATHlibrary_std_src_sys_commonprocess.rs
lea rcx, [rsp + 0x1a0]
mov r8d, 4
call dbg._var_os
mov rsi, qword [rsp + 0x1a0]
movabs rax, 0x8000000000000000
cmp rsi, rax
je 0x14005b7bd
mov rbx, qword [rsp + 0x1a8]
mov rax, qword [rsp + 0x1b0]
add rax, rbx
mov qword [rsp + 0xa0], rbx
mov qword [rsp + 0xa8], rax
mov word [rsp + 0xb0], 0
mov byte [rsp + 0xb8], 1
lea rdi, [rsp + 0x260]
lea rbp, [rsp + 0xa0]
mov rcx, rdi
mov rdx, rbp
call sym.__std::sys::windows::os::SplitPaths_as_core::iter::traits::iterator::Iterator_::next::h5294acb6b215382e
jmp 0x14005b688
mov rcx, rdi
mov rdx, rbp
call sym.__std::sys::windows::os::SplitPaths_as_core::iter::traits::iterator::Iterator_::next::h5294acb6b215382e
mov rdx, qword [rsp + 0x260]
movabs rax, 0x8000000000000000
cmp rdx, rax
je 0x14005b7a7
mov rcx, qword [rsp + 0x268]
mov rax, qword [rsp + 0x270]
test rax, rax
jne 0x14005b6ca
test rdx, rdx
je 0x14005b67d
mov r8d, 1
call sym.__rust_dealloc
jmp 0x14005b67d
mov r8, qword [rsp + 0x278]
mov qword [rsp + 0x260], rdx
mov qword [rsp + 0x268], rcx
mov qword [rsp + 0x270], rax
mov qword [rsp + 0x278], r8
mov rcx, rdi
mov rdx, r15
mov r8, r13
call dbg._push
cmp qword [rsp + 0x68], 1
je 0x14005b71d
mov r8d, 3
mov rcx, rdi
lea rdx, str.exe.NULexit_code:
call sym.std::path::PathBuf::_set_extension::h46abf9be3c5e611c
mov r14, qword [rsp + 0x268]
mov r8, qword [rsp + 0x270]
lea rcx, [rsp + 0x150]
mov rdx, r14
call dbg.program_exists
mov rdx, qword [rsp + 0x260]
test rdx, rdx
je 0x14005b758
mov r8d, 1
mov rcx, r14
call sym.__rust_dealloc
mov rcx, qword [rsp + 0x150]
movabs rax, 0x8000000000000000
cmp rcx, rax
je 0x14005b670
mov qword [rsp + 0x60], rcx
mov r14, qword [rsp + 0x158]
mov rdi, qword [rsp + 0x160]
test rsi, rsi
je 0x14005a725
mov r8d, 1
mov rcx, rbx
mov rdx, rsi
call sym.__rust_dealloc
jmp 0x14005a725
test rsi, rsi
je 0x14005b7bd
mov r8d, 1
mov rcx, rbx
mov rdx, rsi
call sym.__rust_dealloc
lea r14, str.MH_v_
jmp 0x14005a647
call sub.kernel32.dll_GetLastError
shl rax, 0x20
or rax, 2
mov qword [rsp + 0x90], rax
movabs r13, 0x8000000000000000
mov r14, qword [rsp + 0x78]
jmp 0x14005ba66
xor esi, esi
lea rcx, [rsp + 0x260]
call dbg.drop_in_place<alloc::collections::btree::map::IntoIter<std::sys::windows::process::EnvKey, std::ffi::os_str::OsString, alloc::alloc::Global>>
mov r13d, r12d
cmp rdi, qword [rsp + 0x150]
jne 0x14005b830
xor esi, esi
lea rcx, [rsp + 0x150]
mov rdx, rdi
call dbg.reserve_for_push<u16, alloc::alloc::Global>
mov rbx, qword [rsp + 0x158]
mov rdi, qword [rsp + 0x160]
mov word [rbx + rdi*2], 0
mov rdx, qword [rsp + 0x150]
movabs rax, 0x8000000000000000
mov rcx, rdx
mov qword [rsp + 0x68], rdx
cmp rdx, rax
mov rdi, qword [rsp + 0x98]
je 0x14005b1a6
mov rax, qword [rsp + 0x158]
mov qword [rsp + 0x88], rax
movabs rax, 0x8000000000000000
cmp qword [rdi + 0x38], rax
je 0x14005ac1e
mov rax, qword [rdi + 0x40]
mov rcx, qword [rdi + 0x48]
add rcx, rax
xor r10d, r10d
mov rdx, rax
jmp 0x14005b8a5
xor r10d, r10d
test r8w, r8w
je 0x14005b959
mov r8w, 1
test r10w, r10w
jne 0x14005b898
cmp rdx, rcx
je 0x14005b975
movzx r10d, byte [rdx]
test r10b, r10b
js 0x14005b8cd
inc rdx
mov r9d, r10d
jmp 0x14005b94e
mov r9d, r10d
and r9d, 0x1f
movzx esi, byte [rdx + 1]
and esi, 0x3f
cmp r10b, 0xdf
jbe 0x14005b917
movzx r11d, byte [rdx + 2]
shl esi, 6
and r11d, 0x3f
or r11d, esi
cmp r10b, 0xf0
jb 0x14005b924
movzx r10d, byte [rdx + 3]
add rdx, 4
and r9d, 7
shl r9d, 0x12
shl r11d, 6
and r10d, 0x3f
or r10d, r11d
or r9d, r10d
jmp 0x14005b92f
add rdx, 2
shl r9d, 6
or r9d, esi
jmp 0x14005b94e
add rdx, 3
shl r9d, 0xc
or r9d, r11d
cmp r9d, 0xffff
jbe 0x14005b94e
and r9d, 0x3ff
or r9d, 0xdc00
mov r10d, r9d
jmp 0x14005b89b
xor r10d, r10d
mov r8d, r9d
jmp 0x14005b89b
lea r12, str.nul_byte_found_in_provided_data
mov rax, qword [rsp + 0x58]
mov qword [rax], r12
mov qword [rax + 0x10], 2
jmp 0x14005c45b
mov qword [rsp + 0x260], rax
mov qword [rsp + 0x268], rcx
mov word [rsp + 0x270], 0
lea rcx, [rsp + 0xa0]
lea rdx, [rsp + 0x260]
call dbg.from_iter<u16, std::sys_common::wtf8::EncodeWide>
mov rax, qword [rsp + 0xa0]
mov rdx, qword [rsp + 0xb0]
cmp rdx, rax
jne 0x14005ba11
lea rcx, [rsp + 0xa0]
call dbg.reserve_for_push<u16, alloc::alloc::Global>
mov rsi, rdi
mov rcx, qword [rsp + 0xa0]
mov rdx, qword [rsp + 0xb0]
jmp 0x14005ba17
lea r8, [rsp + 0x1c0]
mov rcx, rdi
mov edx, 0xfffffff4
call dbg.to_handle
mov rdi, rdx
test rax, rax
je 0x14005c050
mov rax, qword [rsp + 0x58]
mov qword [rax], rdi
mov qword [rax + 0x10], 2
jmp 0x14005c38e
mov rcx, rax
mov rsi, rdi
mov r12, qword [rsp + 0xa8]
mov word [r12 + rdx*2], 0
mov r8, r12
movabs rax, 0x8000000000000000
mov rdx, rcx
mov qword [rsp + 0x108], rcx
cmp rcx, rax
jne 0x14005ac34
jmp 0x14005b960
mov ecx, 2
xor esi, esi
mov qword [rsp + 0x90], rcx
mov rdx, rbp
mov r8, rsi
call sym.memcpy
mov rdx, qword [rsp + 0x70]
test rdx, rdx
je 0x14005ba86
add rdx, rdx
mov r8d, 2
mov rcx, qword [rsp + 0x80]
call sym.__rust_dealloc
movabs rax, 0x8000000000000000
cmp r13, rax
je 0x14005bc91
mov qword [rsp + 0x1a0], r13
lea rax, [rsp + 0x1a8]
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x90]
mov qword [rsp + 0x1a8], rax
mov qword [rsp + 0x1b0], r13
lea rsi, str.cmd.exemaximum_number_of_ProcThreadAttributes_exceeded
xor r15d, r15d
lea rdi, [rsp + 0x1a0]
xor ebx, ebx
mov rbp, rsi
jmp 0x14005baf1
mov ebx, ecx
mov word [rax + r13*2], r12w
inc r13
mov qword [rsp + 0x1b0], r13
test rbp, rbp
je 0x14005bbb4
test bx, bx
je 0x14005bb43
xor ecx, ecx
mov r12d, ebx
cmp r13, qword [rsp + 0x1a0]
jne 0x14005badf
mov rax, rsi
sub rax, rbp
add rax, 0xa
movabs rdx, 0xaaaaaaaaaaaaaaab
mul rdx
mov r8, rdx
shr r8, 1
cmp cx, 1
mov rax, r15
adc rax, 0xffffffffffffffff
sub r8, rax
inc r8
mov ebx, ecx
jmp 0x14005bbe0
lea rcx, [0x1400b48e0]
cmp rbp, rcx
je 0x14005bbb4
movzx r12d, byte [rbp]
test r12b, r12b
js 0x14005bb60
inc rbp
xor ecx, ecx
jmp 0x14005bb04
mov r8, rax
mov eax, r12d
and eax, 0x1f
movzx edx, byte [rbp + 1]
and edx, 0x3f
cmp r12b, 0xdf
jbe 0x14005bbfb
movzx ecx, byte [rbp + 2]
shl edx, 6
and ecx, 0x3f
or ecx, edx
cmp r12b, 0xf0
jb 0x14005bc11
movzx r12d, byte [rbp + 3]
and eax, 7
shl eax, 0x12
shl ecx, 6
and r12d, 0x3f
or r12d, ecx
or r12d, eax
cmp r12d, 0x110000
mov rax, r8
jne 0x14005bc22
cmp r15, 1
je 0x14005bc62
mov r15d, 1
xor r12d, r12d
mov ebp, 0
mov r8d, 0
cmp r13, qword [rsp + 0x1a0]
jne 0x14005bae1
inc r8
mov rcx, rdi
mov rdx, r13
call sym.alloc::raw_vec::RawVec_T_A_::reserve::do_reserve_and_handle::h0f5ccd690f57f673
mov rax, qword [rsp + 0x1a8]
jmp 0x14005bae1
add rbp, 2
shl eax, 6
or eax, edx
mov r12d, eax
mov rax, r8
xor ecx, ecx
jmp 0x14005bb04
add rbp, 3
shl eax, 0xc
or ecx, eax
mov r12d, ecx
mov rax, r8
jmp 0x14005bc26
add rbp, 4
cmp r12d, 0xffff
jbe 0x14005bc5b
lea eax, [r12 + 0xff0000]
shr eax, 0xa
or eax, 0xd800
and r12d, 0x3ff
or r12d, 0xdc00
mov ecx, r12d
mov r12d, eax
mov rax, r8
jmp 0x14005bb04
xor ecx, ecx
jmp 0x14005bb04
mov rdx, qword [rsp + 0x1a0]
mov rax, qword [rsp + 0x1a8]
mov qword [rsp + 0x90], rax
movabs rax, 0x8000000000000000
mov rcx, rdx
mov qword [rsp + 0x70], rdx
cmp rdx, rax
jne 0x14005bca6
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x90]
mov qword [rax], rcx
jmp 0x14005a8ea
mov al, 1
test al, al
je 0x14005c8f1
mov rax, qword [rsp + 0x98]
mov rcx, qword [rax + 0x28]
mov qword [rsp + 0x80], rcx
mov rcx, qword [rax + 0x30]
mov qword [rsp + 0x108], rcx
movzx eax, byte [rax + 0xc5]
mov byte [rsp + 0x68], al
mov rax, qword [0x1400d1578]
movzx eax, byte [rax]
mov ecx, 0xc
mov edx, 2
call sym.__rust_alloc
test rax, rax
je 0x14005c8f8
mov ecx, 6
mov word [rax], 0x63
mov qword [rsp + 0x260], rcx
lea rcx, [rsp + 0x268]
mov qword [rsp + 0x128], rcx
mov qword [rsp + 0x268], rax
mov qword [rsp + 0x270], 1
lea rbp, [0x1400b40e3]
mov esi, 1
xor ebx, ebx
lea r15, [0x1400b40f1]
lea r13, [0x1400b40e2]
lea rdi, [rsp + 0x260]
jmp 0x14005bd73
mov rax, qword [rsp + 0x268]
mov word [rax + rsi*2], bx
inc rsi
mov qword [rsp + 0x270], rsi
mov ebx, r12d
test bx, bx
jne 0x14005be24
cmp rbp, r15
je 0x14005be6c
movzx ebx, byte [rbp]
test bl, bl
js 0x14005bd95
inc rbp
jmp 0x14005be24
mov ecx, ebx
and ecx, 0x1f
movzx r8d, byte [rbp + 1]
and r8d, 0x3f
cmp bl, 0xdf
jbe 0x14005bde1
movzx edx, byte [rbp + 2]
shl r8d, 6
and edx, 0x3f
or edx, r8d
cmp bl, 0xf0
jb 0x14005bdef
movzx ebx, byte [rbp + 3]
and ecx, 7
shl ecx, 0x12
shl edx, 6
and ebx, 0x3f
or ebx, edx
or ebx, ecx
cmp ebx, 0x110000
je 0x14005be6c
add rbp, 4
jmp 0x14005bdfa
add rbp, 2
shl ecx, 6
or ecx, r8d
mov ebx, ecx
jmp 0x14005be24
add rbp, 3
shl ecx, 0xc
or edx, ecx
mov ebx, edx
cmp ebx, 0xffff
jbe 0x14005be24
lea ecx, [rbx + 0xff0000]
shr ecx, 0xa
or ecx, 0xd800
and ebx, 0x3ff
or ebx, 0xdc00
mov r12d, ebx
mov ebx, ecx
jmp 0x14005be27
xor r12d, r12d
cmp rsi, qword [rsp + 0x260]
jne 0x14005bd61
mov rax, r13
sub rax, rbp
add rax, 0x11
movabs rcx, 0xaaaaaaaaaaaaaaab
mul rcx
shr rdx, 1
cmp r12w, 1
sbb rdx, 0
lea r8, [rdx + 2]
mov rcx, rdi
mov rdx, rsi
call sym.alloc::raw_vec::RawVec_T_A_::reserve::do_reserve_and_handle::h0f5ccd690f57f673
jmp 0x14005bd59
mov rdi, qword [rsp + 0x270]
mov qword [rsp + 0xb0], rdi
movups xmm0, xmmword [rsp + 0x260]
movaps xmmword [rsp + 0xa0], xmm0
cmp rdi, qword [rsp + 0xa0]
jne 0x14005bec0
lea rcx, [rsp + 0xa0]
mov rdx, rdi
call dbg.reserve_for_push<u16, alloc::alloc::Global>
mov rdx, qword [rsp + 0x88]
mov rbp, qword [rsp + 0x80]
mov rdi, qword [rsp + 0xb0]
jmp 0x14005bed0
mov rdx, qword [rsp + 0x88]
mov rbp, qword [rsp + 0x80]
mov r15, qword [rsp + 0xa8]
mov word [r15 + rdi*2], 0x22
inc rdi
mov qword [rsp + 0xb0], rdi
lea rax, [rdx + rdx]
xor ecx, ecx
lea rsi, str.Windows_file_names_may_not_contain_____or_end_with___
cmp rax, rcx
je 0x14005bf0d
cmp word [r14 + rcx], 0x22
lea rcx, [rcx + 2]
jne 0x14005bef7
jmp 0x14005c5a1
movzx eax, word [r14 + rdx*2 - 2]
cmp ax, 0x5c
je 0x14005c5a1
lea rsi, [rdx - 1]
xor ebx, ebx
test ax, ax
cmove rbx, r14
test rbx, rbx
cmove rsi, rdx
cmove rbx, r14
mov r13, qword [rsp + 0xa0]
mov rax, r13
sub rax, rdi
cmp rax, rsi
jae 0x14005bf73
lea rcx, [rsp + 0xa0]
mov rdx, rdi
mov r8, rsi
call sym.alloc::raw_vec::RawVec_T_A_::reserve::do_reserve_and_handle::h0f5ccd690f57f673
mov rdi, qword [rsp + 0xb0]
mov r13, qword [rsp + 0xa0]
mov r15, qword [rsp + 0xa8]
lea r8, [rsi + rsi]
lea rcx, [r15 + rdi*2]
mov rdx, rbx
call sym.memcpy
add rdi, rsi
mov qword [rsp + 0xb0], rdi
cmp rdi, r13
jne 0x14005bfb3
lea rcx, [rsp + 0xa0]
mov rdx, r13
call dbg.reserve_for_push<u16, alloc::alloc::Global>
mov r15, qword [rsp + 0xa8]
mov rdi, qword [rsp + 0xb0]
lea rax, [rdi + 1]
mov word [r15 + rdi*2], 0x22
mov qword [rsp + 0xb0], rax
cmp byte [rsp + 0x68], 0
je 0x14005c4d4
mov rax, qword [rsp + 0x108]
shl rax, 3
lea rbx, [rax + rax*4]
lea rdi, [rsp + 0xa0]
test rbx, rbx
je 0x14005c5fd
mov rdx, qword [rsp + 0xb0]
cmp rdx, qword [rsp + 0xa0]
jne 0x14005c014
mov rcx, rdi
call dbg.reserve_for_push<u16, alloc::alloc::Global>
mov rdx, qword [rsp + 0xb0]
mov rax, qword [rsp + 0xa8]
mov word [rax + rdx*2], 0x20
inc rdx
mov qword [rsp + 0xb0], rdx
mov rcx, rdi
mov rdx, rbp
mov r8b, 1
call dbg.append_arg
mov rsi, rax
add rbp, 0x28
add rbx, 0xffffffffffffffd8
test rax, rax
je 0x14005bfe9
jmp 0x14005c5a1
xorps xmm0, xmm0
movups xmmword [rsp + 0xd4], xmm0
movups xmmword [rsp + 0xc8], xmm0
movups xmmword [rsp + 0xb8], xmm0
movups xmmword [rsp + 0xa8], xmm0
movups xmmword [rsp + 0xe8], xmm0
movups xmmword [rsp + 0xf8], xmm0
test rdi, rdi
jne 0x14005c098
test r15, r15
jne 0x14005c098
cmp qword [rsp + 0x198], 0
je 0x14005c0c3
mov dword [rsp + 0xdc], 0x100
mov rax, qword [rsp + 0x198]
mov qword [rsp + 0xf0], rax
mov qword [rsp + 0xf8], r15
mov qword [rsp + 0x100], rdi
mov rdx, rsi
mov rsi, qword [rsi + 0xb8]
test rsi, rsi
je 0x14005c1a7
add rdx, 0xa8
mov dword [rsp + 0xa0], 0x70
lea rcx, [rsp + 0x208]
call dbg.make_proc_thread_attribute_list
mov rdx, qword [rsp + 0x208]
mov rcx, qword [rsp + 0x210]
test rdx, rdx
je 0x14005c376
mov qword [rsp + 0x98], rcx
or r13d, 0x80000
mov rax, qword [rsp + 0x100]
mov qword [rsp + 0x2c0], rax
movups xmm0, xmmword [rsp + 0xf0]
movaps xmmword [rsp + 0x2b0], xmm0
movups xmm0, xmmword [rsp + 0xe0]
movaps xmmword [rsp + 0x2a0], xmm0
movups xmm0, xmmword [rsp + 0xa0]
movups xmm1, xmmword [rsp + 0xb0]
movups xmm2, xmmword [rsp + 0xc0]
movups xmm3, xmmword [rsp + 0xd0]
movaps xmmword [rsp + 0x290], xmm3
movaps xmmword [rsp + 0x280], xmm2
movaps xmmword [rsp + 0x270], xmm1
movaps xmmword [rsp + 0x260], xmm0
mov qword [rsp + 0x240], rdx
mov qword [rsp + 0x2c8], rdx
lea rax, [rsp + 0x260]
jmp 0x14005c1ba
mov dword [rsp + 0xa0], 0x68
lea rax, [rsp + 0xa0]
mov rdx, qword [rsp + 0x118]
lea rcx, [rsp + 0x130]
mov qword [rsp + 0x48], rcx
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x38], r12
mov r12, rdx
mov rax, qword [rsp + 0x258]
mov qword [rsp + 0x30], rax
mov dword [rsp + 0x28], r13d
mov dword [rsp + 0x20], 1
mov rcx, qword [rsp + 0x90]
xor r8d, r8d
xor r9d, r9d
call sub.kernel32.dll_CreateProcessW
test eax, eax
je 0x14005c33d
movups xmm0, xmmword [rsp + 0x1a0]
movups xmm1, xmmword [rsp + 0x1b0]
movups xmm2, xmmword [rsp + 0x1c0]
mov rax, qword [rsp + 0x58]
movups xmmword [rax + 0x30], xmm2
movups xmmword [rax + 0x20], xmm1
movups xmmword [rax + 0x10], xmm0
movaps xmm0, xmmword [rsp + 0x130]
movups xmmword [rax], xmm0
test rsi, rsi
je 0x14005c25f
mov rcx, qword [rsp + 0x240]
mov rdx, qword [rsp + 0x98]
call sym.core::ptr::drop_in_place_std::sys::windows::process::ProcThreadAttributeList_::hf2a6e431e0096f05
mov rcx, rdi
call fcn.1400a8474
mov rcx, r15
call fcn.1400a8474
mov rcx, qword [rsp + 0x198]
call fcn.1400a8474
lea rcx, [rsp + 0x150]
call sym._ZN4core3ptr178drop_in_place_LT_core..result..Result_LT_std..sync..mutex..MutexGuard_LT__LP__RP__GT__C_std..sync..poison..Pois
mov rdx, qword [rsp + 0x108]
test rdx, rdx
je 0x14005c2ac
add rdx, rdx
mov r8d, 2
mov rcx, qword [rsp + 0x128]
call sym.__rust_dealloc
mov rdx, qword [rsp + 0x68]
test rdx, rdx
je 0x14005c2cc
add rdx, rdx
mov r8d, 2
mov rcx, qword [rsp + 0x88]
call sym.__rust_dealloc
mov rdx, qword [rsp + 0x110]
test rdx, rdx
je 0x14005c2ea
add rdx, rdx
mov r8d, 2
mov rcx, r12
call sym.__rust_dealloc
mov rdx, qword [rsp + 0x70]
test rdx, rdx
je 0x14005c30a
add rdx, rdx
mov r8d, 2
mov rcx, qword [rsp + 0x90]
call sym.__rust_dealloc
mov rdx, qword [rsp + 0x60]
test rdx, rdx
setne al
mov ecx, dword [rsp + 0x80]
xor cl, 1
test al, cl
je 0x14005a6eb
add rdx, rdx
mov r8d, 2
mov rcx, r14
call sym.__rust_dealloc
jmp 0x14005a6eb
call sub.kernel32.dll_GetLastError
shl rax, 0x20
or rax, 2
mov rcx, qword [rsp + 0x58]
mov qword [rcx], rax
mov qword [rcx + 0x10], 2
test rsi, rsi
je 0x14005c386
mov rcx, qword [rsp + 0x240]
mov rdx, qword [rsp + 0x98]
call sym.core::ptr::drop_in_place_std::sys::windows::process::ProcThreadAttributeList_::hf2a6e431e0096f05
jmp 0x14005c386
mov rax, qword [rsp + 0x58]
mov qword [rax], rcx
mov qword [rax + 0x10], 2
mov rcx, rdi
call fcn.1400a8474
mov rcx, r15
call fcn.1400a8474
mov rcx, qword [rsp + 0x198]
call fcn.1400a8474
cmp qword [rsp + 0x1a0], 0
je 0x14005c3bb
mov rcx, qword [rsp + 0x1a8]
call fcn.1400a8474
cmp qword [rsp + 0x1b0], 0
je 0x14005c3d3
mov rcx, qword [rsp + 0x1b8]
call fcn.1400a8474
cmp qword [rsp + 0x1c0], 0
je 0x14005c3eb
mov rcx, qword [rsp + 0x1c8]
call fcn.1400a8474
test bl, bl
je 0x14005c409
test bpl, bpl
jne 0x14005c42c
mov rax, qword [0x1400e41c8]
test qword [rsp + 0x78], rax
je 0x14005c42c
call dbg.is_zero_slow_path
jmp 0x14005c421
test bpl, bpl
jne 0x14005c42c
mov rax, qword [0x1400e41c8]
test qword [rsp + 0x78], rax
je 0x14005c42c
call dbg.is_zero_slow_path
test al, al
jne 0x14005c42c
mov byte [0x1400e4200], 1
lea rcx, [0x1400e41f8]
call fcn.1400a86b4
mov rdx, qword [rsp + 0x108]
test rdx, rdx
je 0x14005c45b
add rdx, rdx
mov r8d, 2
mov rcx, qword [rsp + 0x128]
call sym.__rust_dealloc
mov rdx, qword [rsp + 0x68]
test rdx, rdx
je 0x14005c47b
add rdx, rdx
mov r8d, 2
mov rcx, qword [rsp + 0x88]
call sym.__rust_dealloc
mov rdx, qword [rsp + 0x110]
test rdx, rdx
je 0x14005c49e
mov rcx, qword [rsp + 0x118]
add rdx, rdx
mov r8d, 2
call sym.__rust_dealloc
mov rdx, qword [rsp + 0x70]
test rdx, rdx
je 0x14005c4be
add rdx, rdx
mov r8d, 2
mov rcx, qword [rsp + 0x90]
call sym.__rust_dealloc
mov sil, 1
cmp byte [rsp + 0x80], 0
jne 0x14005a6eb
jmp 0x14005a8f4
mov rax, qword [rsp + 0x108]
lea rax, [rax + rax*4]
lea r15, [rax*8]
add r15, rbp
lea rbx, str._t____________
cmp rbp, r15
je 0x14005c5fd
mov rdx, qword [rsp + 0xb0]
cmp rdx, qword [rsp + 0xa0]
jne 0x14005c522
lea rcx, [rsp + 0xa0]
call dbg.reserve_for_push<u16, alloc::alloc::Global>
mov rdx, qword [rsp + 0xb0]
mov rax, qword [rsp + 0xa8]
mov word [rax + rdx*2], 0x20
inc rdx
mov qword [rsp + 0xb0], rdx
cmp qword [rbp], 0
je 0x14005c549
mov rdi, rbp
xor esi, esi
jmp 0x14005c57b
mov r12, qword [rbp + 0x10]
mov rdi, rbp
mov r13, qword [rbp + 0x18]
xor ebp, ebp
cmp r13, rbp
setne sil
je 0x14005c57b
movzx ecx, byte [r12 + rbp]
mov r8d, 0x16
mov rdx, rbx
call sym.core::slice::memchr::memchr_aligned::h3cd021e9a6dd8d9a
inc rbp
cmp rax, 1
jne 0x14005c556
lea rcx, [rsp + 0xa0]
mov rbp, rdi
mov rdx, rdi
mov r8d, esi
call dbg.append_arg
mov rsi, rax
add rbp, 0x28
test rax, rax
je 0x14005c4f2
mov rdx, qword [rsp + 0xa0]
test rdx, rdx
je 0x14005c5c4
mov rcx, qword [rsp + 0xa8]
add rdx, rdx
mov r8d, 2
call sym.__rust_dealloc
mov rax, qword [rsp + 0x58]
mov qword [rax], rsi
mov qword [rax + 0x10], 2
mov rdx, qword [rsp + 0x70]
test rdx, rdx
je 0x14005a8f2
add rdx, rdx
mov r8d, 2
mov rcx, qword [rsp + 0x90]
call sym.__rust_dealloc
jmp 0x14005a8f2
mov rax, qword [rsp + 0xa0]
mov rdx, qword [rsp + 0xb0]
cmp rdx, rax
jne 0x14005c62f
lea rcx, [rsp + 0xa0]
call dbg.reserve_for_push<u16, alloc::alloc::Global>
mov rax, qword [rsp + 0xa0]
mov rdx, qword [rsp + 0xb0]
mov rsi, qword [rsp + 0xa8]
mov word [rsi + rdx*2], 0x22
movabs rcx, 0x8000000000000000
cmp rax, rcx
jne 0x14005c66c
mov r14, qword [rsp + 0x78]
jmp 0x14005c5c4
mov rbx, rcx
mov rdx, qword [rsp + 0x68]
test rdx, rdx
jne 0x14005b124
jmp 0x14005b137
inc rdx
mov dword [rsp + 0x80], 0
mov r14, qword [rsp + 0x78]
jmp 0x14005a940
mov rbx, qword [rsp + 0x88]
jmp 0x14005b174
lea rcx, str.internal_error:_entered_unreachable_code
lea r8, str.library_std_src_syswindowsmod.rs
mov edx, 0x28
call dbg.panic
jmp 0x14005c907
lea rcx, str.internal_error:_entered_unreachable_code
lea r8, str.library_std_src_syswindowsmod.rs
mov edx, 0x28
call dbg.panic
jmp 0x14005c907
lea rcx, str.internal_error:_entered_unreachable_code
lea r8, str.library_std_src_syswindowsmod.rs
mov edx, 0x28
call dbg.panic
jmp 0x14005c907
lea rax, str.library_std_src_syswindowsmod.rs
mov rcx, r8
mov rdx, rbx
mov r8, rax
call dbg.slice_end_index_len_fail
jmp 0x14005c907
lea rax, str.library_std_src_syswindowsmod.rs
mov rcx, r8
mov rdx, rbx
mov r8, rax
call dbg.slice_end_index_len_fail
jmp 0x14005c907
lea r8, str.library_std_src_syswindowsmod.rs
mov rcx, r13
mov rdx, rbx
call dbg.slice_end_index_len_fail
jmp 0x14005c907
mov ecx, 2
mov rdx, rsi
call dbg.handle_alloc_error
jmp 0x14005c907
call dbg.capacity_overflow
jmp 0x14005c907
mov ecx, 2
mov edx, 0xc
call dbg.handle_alloc_error
ud2