Function at 0x14004e980
Capabilities:
Read file on windows

Disassembly:
push rsi
push rdi
push rbx
sub rsp, 0x40
mov rdi, rdx
mov rdx, qword [rdx + 8]
mov rsi, qword [rdi + 0x10]
mov r9, rdx
sub r9, rsi
jb 0x140049ccd
mov r8, qword [rdi]
add r8, rsi
mov rdx, qword [rcx]
mov qword [rsp + 0x20], 0
lea rcx, [rsp + 0x30]
call fcn.14004a010
mov rbx, qword [rsp + 0x30]
test rbx, rbx
je 0x140049b64
mov rdi, qword [rsp + 0x38]
mov eax, edi
and eax, 3
lea rcx, [0x14093b128]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
movzx eax, byte [rdi + 0x10]
jmp 0x140049b92
add rsi, qword [rsp + 0x38]
mov qword [rdi + 0x10], rsi
mov rax, qword [rdi + 0x18]
cmp rax, rsi
cmova rsi, rax
mov qword [rdi + 0x18], rsi
xor esi, esi
jmp 0x140049bad
movzx eax, byte [rdi + 0xf]
jmp 0x140049b92
mov rcx, rdi
shr rcx, 0x20
call fcn.140056770
xor esi, esi
cmp al, 0xb
cmovne rsi, rdi
test rbx, rbx
je 0x140049bad
cmp al, 0xb
jne 0x140049bad
lea rcx, [rsp + 0x38]
call fcn.14000db80
mov rax, rsi
add rsp, 0x40
pop rbx
pop rdi
pop rsi
ret
mov rax, rdi
shr rax, 0x20
cmp eax, 0x28
ja case.default.0x140049bd2
lea rcx, [0x14093b138]
movsxd rax, dword [rcx + rax*4]
invalid
add al, 0x81
add rax, rcx
add eax, ecx
invalid
add eax, ecx
jmp rax
xor eax, eax
jmp 0x140049b92
mov al, 0x29
jmp 0x140049b92
mov al, 1
jmp 0x140049b92
mov al, 2
jmp 0x140049b92
mov al, 3
jmp 0x140049b92
mov al, 4
jmp 0x140049b92
mov al, 5
jmp 0x140049b92
mov al, 6
jmp 0x140049b92
mov al, 7
jmp 0x140049b92
mov al, 8
jmp 0x140049b92
mov al, 9
jmp 0x140049b92
mov al, 0xa
jmp 0x140049b92
mov al, 0xb
jmp 0x140049b92
invalid
mov dh, byte [rax - 0x4f7914f4]
or eax, 0xeb082eb
jmp 0x140049b92
mov al, 0xe
mov al, 0xc
jmp 0x140049b92
mov al, 0xd
jmp 0x140049b92
mov al, 0xe
jmp 0x140049b92
invalid
mov al, 0xf
jmp 0x140049b92
invalid
invalid
invalid
mov al, 0x10
jmp 0x140049b92
invalid
invalid
invalid
mov al, 0x11
jmp 0x140049b92
invalid
invalid
invalid
mov al, 0x12
jmp 0x140049b92
invalid
invalid
invalid
mov al, 0x13
jmp 0x140049b92
invalid
invalid
invalid
mov al, 0x14
jmp 0x140049b92
invalid
invalid
invalid
mov al, 0x15
jmp 0x140049b92
invalid
invalid
invalid
mov al, 0x16
jmp 0x140049b92
invalid
invalid
invalid
mov al, 0x17
jmp 0x140049b92
invalid
invalid
invalid
mov al, 0x18
jmp 0x140049b92
invalid
invalid
invalid
mov al, 0x19
jmp 0x140049b92
invalid
invalid
invalid
mov al, 0x1a
jmp 0x140049b92
invalid
invalid
invalid
mov al, 0x1b
jmp 0x140049b92
invalid
invalid
invalid
mov al, 0x1c
jmp 0x140049b92
invalid
invalid
invalid
mov al, 0x1d
jmp 0x140049b92
invalid
invalid
invalid
mov al, 0x1e
jmp 0x140049b92
invalid
invalid
invalid
mov al, 0x1f
jmp 0x140049b92
invalid
invalid
invalid
mov al, 0x20
jmp 0x140049b92
invalid
invalid
invalid
mov al, 0x21
jmp 0x140049b92
invalid
invalid
invalid
mov al, 0x22
jmp 0x140049b92
invalid
invalid
invalid
mov al, 0x23
jmp 0x140049b92
invalid
invalid
invalid
mov al, 0x24
jmp 0x140049b92
invalid
invalid
invalid
mov al, 0x25
jmp 0x140049b92
invalid
invalid
invalid
mov al, 0x26
jmp 0x140049b92
mov al, 0x27
jmp 0x140049b92
mov al, 0x28
jmp 0x140049b92
lea r8, [0x14093bc28]
mov rcx, rsi
call fcn.140092130
int3
mov r9d, 0x2ceb0017
call sub.ws2_32.dll_WSAGetLastError
mov r15d, eax
shl r15, 0x20
or r15, 2
jmp 0x14004ace5
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 0x14004ab11
clc
push qword [rbp + rax + 0x45]
xor edi, edi
xor r15d, r15d
jmp 0x14004ab21
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 0x14004ab67
test r15, r15
je 0x14004ab84
mov eax, r15d
and eax, 3
lea rcx, [0x14093b1dc]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
movzx eax, byte [r15 + 0x10]
jmp 0x14004ab9f
call sub.ws2_32.dll_WSAGetLastError
mov esi, eax
shl rsi, 0x20
or rsi, 2
test r15, r15
jne 0x14004acd8
jmp case.0x140049b5c.74
xor r15d, r15d
jmp 0x14004ace5
movzx eax, byte [r15 + 0xf]
jmp 0x14004ab9f
mov rcx, r15
shr rcx, 0x20
call fcn.140056770
cmp al, 0xd
jne 0x14004ace5
test r14, r14
jne 0x14004abe0
test ebx, ebx
jne 0x14004abe0
lea rsi, str.cannot_set_a_0_duration_timeout
jmp 0x14004acd8
mov rax, r15
shr rax, 0x20
cmp eax, 0x28
ja case.default.0x14004abda
lea rcx, [0x14093b1ec]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
xor eax, eax
jmp 0x14004ab9f
cmp r14, 0x7fffffff
mov eax, 0x7fffffff
cmovb rax, r14
mov ecx, ebx
imul rcx, rcx, 0x10624dd3
shr rcx, 0x26
mov dword [rsp + 0x38], eax
test rax, rax
mov eax, 1
mov edx, ecx
cmove edx, eax
cmp ebx, 0x3e8
cmovae edx, ecx
mov dword [rsp + 0x3c], edx
lea rcx, [rsp + 0x50]
mov r8d, 0x1f8
xor edx, edx
call sub.msvcrt.dll_memset
mov qword [rsp + 0x248], 1
mov qword [rsp + 0x250], rdi
mov dword [rsp + 0x250], edi
mov dword [rsp + 0x250], edi
lea rcx, [rsp + 0x258]
mov r8d, 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
add dword [rax], eax
xor edx, edx
call sub.msvcrt.dll_memset
mov qword [rsp + 0x40], 1
add byte [rax], al
mov qword [rsp + 0x48], rdi
lea rax, [rsp + 0x38]
mov qword [rsp + 0x20], rax
and al, 0x20
and al, 0x20
lea r8, [rsp + 0x248]
lea r9, [rsp + 0x40]
and al, 0x40
add al, byte [rax]
add byte [rbp + rcx*4 + 0x4c], cl
and al, 0x40
mov ecx, 1
xor edx, edx
call sub.ws2_32.dll_select
test eax, eax
je 0x14004aca1
cmp eax, 0xffffffff
jne case.0x140049b5c.66
call sub.ws2_32.dll_WSAGetLastError
mov esi, eax
shl rsi, 0x20
or rsi, 2
or esi, 2
or esi, 2
jmp 0x14004acd8
lea r15, str.connection_timed_out
cmp eax, 0x8f5908
jmp 0x14004acb7
cmp dword [rsp + 0x248], 1
jne 0x14004acc3
add dword [rbp + 0xf], esi
xor r15d, r15d
lea rcx, [rsp + 0x30]
lea ecx, [rsp + 0x30]
call fcn.14000db80
jmp 0x14004ace5
cld
invalid
mov rcx, rsi
call fcn.14004b790
mov rsi, rdx
invalid
test rax, rax
jne 0x14004acd8
invalid
test rsi, rsi
test esi, esi
je 0x14004acb4
lea rcx, [rsp + 0x30]
and al, 0x30
call fcn.14000db80
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 0x14004ab9f
invalid
invalid
invalid
mov al, 1
jmp 0x14004ab9f
invalid
invalid
invalid
mov al, 2
jmp 0x14004ab9f
invalid
invalid
invalid
mov al, 3
jmp 0x14004ab9f
invalid
invalid
invalid
mov al, 4
jmp 0x14004ab9f
invalid
invalid
invalid
mov al, 5
jmp 0x14004ab9f
invalid
invalid
invalid
mov al, 6
jmp 0x14004ab9f
invalid
invalid
invalid
mov al, 7
jmp 0x14004ab9f
invalid
invalid
invalid
mov al, 8
jmp 0x14004ab9f
invalid
invalid
invalid
mov al, 9
jmp 0x14004ab9f
invalid
invalid
invalid
mov al, 0xa
jmp 0x14004ab9f
invalid
invalid
invalid
mov al, 0xb
jmp 0x14004ab9f
invalid
invalid
invalid
mov al, 0xc
jmp 0x14004ab9f
invalid
invalid
invalid
mov al, 0xd
jmp 0x14004ab9f
invalid
invalid
invalid
mov al, 0xe
jmp 0x14004ab9f
invalid
invalid
invalid
mov al, 0xf
jmp 0x14004ab9f
invalid
invalid
invalid
mov al, 0x10
jmp 0x14004ab9f
invalid
invalid
invalid
mov al, 0x11
jmp 0x14004ab9f
invalid
invalid
invalid
mov al, 0x12
jmp 0x14004ab9f
invalid
invalid
invalid
mov al, 0x13
jmp 0x14004ab9f
invalid
invalid
invalid
mov al, 0x14
jmp 0x14004ab9f
invalid
invalid
invalid
mov al, 0x15
jmp 0x14004ab9f
invalid
invalid
invalid
mov al, 0x16
jmp 0x14004ab9f
invalid
invalid
invalid
mov al, 0x17
jmp 0x14004ab9f
invalid
invalid
invalid
mov al, 0x18
jmp 0x14004ab9f
invalid
invalid
invalid
mov al, 0x19
jmp 0x14004ab9f
invalid
invalid
invalid
mov al, 0x1a
jmp 0x14004ab9f
invalid
invalid
invalid
mov al, 0x1b
jmp 0x14004ab9f
invalid
invalid
invalid
mov al, 0x1c
jmp 0x14004ab9f
invalid
invalid
invalid
mov al, 0x1d
jmp 0x14004ab9f
invalid
invalid
invalid
mov al, 0x1e
jmp 0x14004ab9f
invalid
invalid
invalid
mov al, 0x1f
jmp 0x14004ab9f
invalid
invalid
invalid
mov al, 0x20
jmp 0x14004ab9f
invalid
invalid
invalid
mov al, 0x21
jmp 0x14004ab9f
invalid
invalid
invalid
mov al, 0x22
jmp 0x14004ab9f
invalid
invalid
invalid
mov al, 0x23
jmp 0x14004ab9f
invalid
invalid
invalid
mov al, 0x24
jmp 0x14004ab9f
invalid
invalid
invalid
mov al, 0x25
jmp 0x14004ab9f
invalid
invalid
invalid
mov al, 0x26
jmp 0x14004ab9f
mov al, 0x27
jmp 0x14004ab9f
mov al, 0x28
jmp 0x14004ab9f
jmp 0x14004e90e
ud2
jmp 0x14004e942
test bh, 1
je 0x14004e940
jmp case.0x140049b5c.96
xor esi, esi
mov rcx, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x58]
test rdx, rdx
je 0x14004e95c
mov r8d, 1
call fcn.140004680
add byte [rax], al
add al, ch
and al, 0x5d
sti
inc dword [rax - 0x7c]
test dh, dh
je case.0x140049b5c.96
mov rcx, rdi
test sil, sil
test dh, dh
je case.0x140049b5c.96
mov rcx, rdi
call sub.kernel32.dll_CloseHandle
rcl dword [rbx], cl
add eax, 0xf1894c00
mov rcx, r14
mov rcx, r14
call fcn.1400a0450
fistp word [rdx]
add eax, 0x6666cc00
int3
nop word cs:[rax + rax]
nop word cs:[rax + rax]
int3
nop word cs:[rax + rax]
invalid
add byte [rax], al
add byte [rsi + 0x57], dl
push rsi
push rdi
js 0x14004e9d3
mov eax, eax
mov eax, 0xffffffff
dec dword [rbp + 0x39]
ror dword [rbp + 0xf], 0x42
cmovb r8, r9
invalid
and al, 0x44
add byte [rax], r8b
add byte [rax], r8b
add byte [rax], al
ror byte [rdi], 0x29
and al, 0x50
mov dword [rsp + 0x60], 0
add byte [rax - 0x73], cl
and al, 0x44
mov dword [rsp + 0x68], ecx
cmp eax, 0x48000007
mov dword [rsp + 0x20], ecx
and al, 0x20
and al, 0x20
and al, 0x50
mov edx, eax
mov word [0x10089e9df], ss
push rsp
invalid
add al, ch
or eax, 0x83000516
jl 0x14004ea16
add byte [rdx + rbp*8 + 0x48], r14b
invalid
or eax, 2
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 0x14004ea3e
invalid
and al, 0x38
cmp byte [rcx + 0x3e183c1], cl
lea edx, [0x14093b290]
mov es, word [rax]
invalid
or al, 0x8a
sar edi, 1
loope case.0x14004ab5e.50
adc al, 5
add byte [rax - 0x3f], cl
shl rax, 0x20
shl eax, 0x20
mov dword [rsp + 0x38], eax
cmp byte [rax - 0x39], cl
and al, 0x30
and al, 0x30
add dword [rax], eax
add byte [rax], al
adc eax, 0x8ec834
enter 0x8e, 0x48
invalid
or al, 0x8a
and al, 0x4c
cmp byte [rax - 0x39], cl
and al, 0x30
add byte [rax], al
add byte [rax], al
invalid
add byte [rax], al
add bl, ch
and eax, 0xf40b60f
movzx eax, byte [rax + 0xf]
por mm1, qword [rbx]
and byte [rcx + 0x7ce0e8c1], cl
add byte [rax], al
invalid
add byte [rbx + rcx], bh
ror byte [rdi], 0x11
invalid
invalid
mov dword [rsi + 8], eax
or eax, 0x8ec7d4
add al, 0x81
mov bl, 0xb0
add ebx, ebp
scasd eax, dword [rdi]
add al, 0xeb
movabs dword [0x9beb06b09feb05b0], eax
mov al, 5
jmp 0x14004ea90
mov al, 6
jmp 0x14004ea90
xchg edi, eax
or ebp, ebx
xchg dword [rax - 0x4f7c14f4], esi
mov al, 0xc
jmp 0x14004ea90
mov al, 0xd
invalid
jl 0x14004eb11
invalid
push qword [rax - 0x9116f1]
outsb dx, byte [rsi]
invalid
invalid
adc ecx, ebp
invalid
push qword [rax - 0xad16ed]
push rdx
invalid
invalid
adc eax, 0xffff44e9
push qword [rax - 0xc216ea]
mov al, 0x16
invalid
invalid
invalid
push qword [rax - 0xc916e9]
invalid
invalid
sub bh, bh
invalid
and edi, edi
sbb bh, bh
adc edi, edi
or al, 0xff
add eax, 0xb0ffffff
invalid
invalid
invalid
idiv esi
invalid
jmp 0xf104eba6
loop case.0x140049b5c.167
invalid
invalid
int 0xfe
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
jo 0x14004ec30
mov ebx, edx
ror dword [rax - 0x75], cl
push rdx
or byte [rax - 0x75], cl
invalid
invalid
jnp case.0x14004ab5e.108
sub eax, edi
clc
xor eax, dword [rdx]
add byte [rax], al
invalid
ror byte [rdi + rcx + 0x42], 0xc0
ror byte [rax - 0x75], 0x13
add byte [rdi], cl
push rdi
ror byte [rdi], 0x29
and al, 0x50
and al, 0x50
and al, 0x50
add byte [rax], al
add byte [rax], al
and al, 0x34
mov dword [rsp + 0x68], eax
and al, 0x50
add byte [rbp + 0x664d74c0], al
nop
add byte [rax], al
add al, ch
popfq
adc eax, dword [0x164816f62]
add byte [rbx + 0x34247c], al
add byte [rbx + 0x34247c], al
invalid
test esi, esi
and byte [rax - 0x7d], cl
invalid
add dword [rax], eax
invalid
adc dword [0x188cb75a3], eax
out 0x20, al
mov dword [rsp + 0x48], esi
invalid
invalid
add byte [rax], al
lea rcx, [rsp + 0xa0]
call fcn.14004c3d0
mov rsi, qword [rsp + 0xa0]
movabs rax, 0x8000000000000000
cmp rsi, rax
jne 0x140051186
lea rcx, [rsp + 0xa8]
call fcn.14000db80
jmp 0x140051262
mov rdi, qword [rsp + 0xa8]
mov rbx, qword [rsp + 0xb0]
mov r14, qword [rsp + 0xb8]
mov rcx, rdi
mov rdx, rbx
call fcn.14003bd20
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 fcn.14003ac90
cmp qword [rsp + 0x68], 1
je 0x14005120c
lea rdx, str.exe.NULexit_code:
lea rcx, [rsp + 0x260]
mov r8d, 3
call case.0x14003178a.226
mov rsi, qword [rsp + 0x268]
mov r8, qword [rsp + 0x270]
lea rcx, [rsp + 0x1a0]
mov rdx, rsi
call fcn.1400542c0
mov rdx, qword [rsp + 0x260]
test rdx, rdx
je 0x140051247
mov r8d, 1
mov rcx, rsi
call fcn.140004680
mov rcx, qword [rsp + 0x1a0]
movabs rax, 0x8000000000000000
cmp rcx, rax
jne 0x14005159f
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 0x1400512e7
jmp 0x140051300
mov r15, qword [rsp + 0x90]
jae 0x1400513cc
cmp r8, 0x201
jae 0x140051300
mov ebx, 0x200
lea rdi, [rsp + 0x260]
mov r15, r8
jmp 0x140051362
sub r8, rbp
sub rsi, rbp
cmp rsi, r8
mov rsi, qword [rsp + 0x60]
jae 0x140051338
lea rcx, [rsp + 0x150]
mov rdx, rbp
call fcn.1400176b0
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 0x140051388
call sub.kernel32.dll_GetLastError
test eax, eax
jne 0x1400515b9
mov r8d, r14d
cmp r15, r8
jne 0x1400512d0
call sub.kernel32.dll_GetLastError
cmp eax, 0x7a
jne 0x1400538b4
add r15, r15
mov eax, 0xffffffff
cmp r15, rax
mov r12d, 0xffffffff
cmovae r15, rax
mov r8, r15
cmp r8, 0x201
jae 0x140051300
jmp 0x1400512e7
cmp rbx, r8
jb 0x1400539b0
lea rcx, [rsp + 0xa0]
mov rdx, rdi
call fcn.140038f20
lea rcx, [rsp + 0xa0]
mov rdx, r15
mov r8, r13
call fcn.14003ac90
cmp qword [rsp + 0x68], 1
je 0x14005141a
lea rdx, str.exe.NULexit_code:
lea rcx, [rsp + 0xa0]
mov r8d, 3
call case.0x14003178a.226
mov rdi, qword [rsp + 0xa8]
mov r8, qword [rsp + 0xb0]
lea rcx, [rsp + 0x1a0]
mov rdx, rdi
call fcn.1400542c0
mov rdx, qword [rsp + 0xa0]
test rdx, rdx
je 0x140051455
mov r8d, 1
mov rcx, rdi
call fcn.140004680
movups xmm0, xmmword [rsp + 0x1a0]
movaps xmmword [rsp + 0x130], xmm0
mov rax, qword [rsp + 0x1b0]
mov qword [rsp + 0x140], rax
jmp 0x1400515eb
mov rcx, rsi
mov rdx, rdi
call fcn.14004c170
mov rdx, qword [rsp + 0x260]
movabs rax, 0x8000000000000000
cmp rdx, rax
je 0x140051150
mov rcx, qword [rsp + 0x268]
mov rax, qword [rsp + 0x270]
test rax, rax
je 0x140051586
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 fcn.14003ac90
cmp qword [rsp + 0x68], 1
je 0x140051529
mov r8d, 3
mov rcx, rsi
mov rdx, rbp
call case.0x14003178a.226
mov r14, qword [rsp + 0x268]
mov r8, qword [rsp + 0x270]
mov rcx, rbx
mov rdx, r14
call fcn.1400542c0
mov rdx, qword [rsp + 0x260]
test rdx, rdx
je 0x14005155f
mov r8d, 1
mov rcx, r14
call fcn.140004680
mov rcx, qword [rsp + 0x1a0]
movabs rax, 0x8000000000000000
cmp rcx, rax
jne 0x14005159f
mov rcx, rsi
mov rdx, rdi
call fcn.14004c170
jmp 0x1400514a6
test rdx, rdx
je 0x14005149b
mov r8d, 1
call fcn.140004680
jmp 0x14005149b
mov qword [rsp + 0x60], rcx
mov r14, qword [rsp + 0x1a8]
mov rdi, qword [rsp + 0x1b0]
jmp 0x140051835
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 0x14005160b
add rdx, rdx
mov r8d, 2
mov rcx, qword [rsp + 0x80]
call fcn.140004680
mov rdx, qword [rsp + 0x130]
movabs rax, 0x8000000000000000
lea rsi, [rax + 2]
cmp rdx, rsi
jge 0x140051654
cmp rdx, rax
je 0x1400522e1
add byte [rax], al
add byte [rax], al
movabs rax, 0x8000000000000001
cmp rdx, rax
jne 0x1400522cb
lea rcx, [rsp + 0x138]
call fcn.14000db80
jmp 0x1400522e1
mov qword [rsp + 0x60], rdx
mov r14, qword [rsp + 0x138]
mov rdi, qword [rsp + 0x140]
mov r12, qword [rsp + 0x98]
jmp 0x140051835
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 0x1400518f8
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 al, 0
add byte [rax], al
add byte [rax], al
add byte [rax - 0x3f], cl
out 3, al
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, qword [rsp + 0x138]
add rdx, rdx
mov r8d, 2
call fcn.140004680
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 0x140052353
jmp 0x140052365
mov r15, qword [rsp + 0x90]
jae 0x14005242f
cmp r8, 0x201
jae 0x140052365
mov ebx, 0x200
lea r14, [rsp + 0x260]
mov r15, r8
jmp 0x1400523c7
sub r8, rbp
sub r12, rbp
cmp r12, r8
mov r12, qword [rsp + 0x60]
jae 0x14005239d
lea rcx, [rsp + 0x150]
mov rdx, rbp
call fcn.1400176b0
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 0x1400523ec
call sub.kernel32.dll_GetLastError
test eax, eax
jne 0x1400524e2
mov r8d, edi
cmp r15, r8
jne 0x14005233c
call sub.kernel32.dll_GetLastError
cmp eax, 0x7a
jne 0x140053961
add r15, r15
mov eax, 0xffffffff
cmp r15, rax
mov esi, 0xffffffff
cmovae r15, rax
mov r8, r15
cmp r8, 0x201
jae 0x140052365
jmp 0x140052353
cmp rbx, r8
jb 0x1400539c7
lea rcx, [rsp + 0xa0]
mov rdx, r14
call fcn.140038f20
mov r12, qword [rsp + 0x98]
lea rcx, [rsp + 0xa0]
mov rdx, r15
mov r8, r13
call fcn.14003ac90
cmp qword [rsp + 0x68], 1
je 0x140052485
lea rdx, str.exe.NULexit_code:
lea rcx, [rsp + 0xa0]
mov r8d, 3
call case.0x14003178a.226
mov rbx, qword [rsp + 0xa8]
mov r8, qword [rsp + 0xb0]
lea rcx, [rsp + 0x1a0]
mov rdx, rbx
call fcn.1400542c0
mov rdx, qword [rsp + 0xa0]
test rdx, rdx
je 0x1400524c0
mov r8d, 1
mov rcx, rbx
call fcn.140004680
movups xmm0, xmmword [rsp + 0x1a0]
movaps xmmword [rsp + 0x130], xmm0
mov rax, qword [rsp + 0x1b0]
mov qword [rsp + 0x140], rax
jmp 0x14005251c
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 0x14005253c
add rdx, rdx
mov r8d, 2
mov rcx, qword [rsp + 0x80]
call fcn.140004680
mov rdx, qword [rsp + 0x130]
cmp rdx, qword [rsp + 0x88]
jge 0x140052586
movabs rax, 0x8000000000000000
cmp rdx, rax
je 0x140052706
movabs rax, 0x8000000000000001
cmp rdx, rax
jne 0x1400526f0
lea rcx, [rsp + 0x138]
call fcn.14000db80
jmp 0x140052706
mov qword [rsp + 0x60], rdx
mov r14, qword [rsp + 0x138]
mov rdi, qword [rsp + 0x140]
jmp 0x140051835
mov rcx, qword [rsp + 0x138]
add rdx, rdx
mov r8d, 2
call fcn.140004680
lea rdx, str.PATHlibrary_std_src_sys_commonprocess.rs
lea rcx, [rsp + 0x1a0]
mov r8d, 4
call fcn.14002c990
mov rsi, qword [rsp + 0x1a0]
movabs rax, 0x8000000000000000
cmp rsi, rax
je 0x1400528cd
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 fcn.14004c170
jmp 0x140052798
mov rcx, rdi
mov rdx, rbp
call fcn.14004c170
mov rdx, qword [rsp + 0x260]
movabs rax, 0x8000000000000000
cmp rdx, rax
je 0x1400528b7
mov rcx, qword [rsp + 0x268]
mov rax, qword [rsp + 0x270]
test rax, rax
jne 0x1400527da
test rdx, rdx
je 0x14005278d
mov r8d, 1
call fcn.140004680
jmp 0x14005278d
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 fcn.14003ac90
cmp qword [rsp + 0x68], 1
je 0x14005282d
mov r8d, 3
mov rcx, rdi
lea rdx, str.exe.NULexit_code:
call case.0x14003178a.226
mov r14, qword [rsp + 0x268]
mov r8, qword [rsp + 0x270]
lea rcx, [rsp + 0x150]
mov rdx, r14
call fcn.1400542c0
mov rdx, qword [rsp + 0x260]
test rdx, rdx
je 0x140052868
mov r8d, 1
mov rcx, r14
call fcn.140004680
mov rcx, qword [rsp + 0x150]
movabs rax, 0x8000000000000000
cmp rcx, rax
je 0x140052780
mov qword [rsp + 0x60], rcx
mov r14, qword [rsp + 0x158]
mov rdi, qword [rsp + 0x160]
test rsi, rsi
je 0x140051835
mov r8d, 1
mov rcx, rbx
mov rdx, rsi
call fcn.140004680
jmp 0x140051835
test rsi, rsi
je 0x1400528cd
mov r8d, 1
mov rcx, rbx
mov rdx, rsi
call fcn.140004680
lea r14, [0x140940a40]
jmp 0x140051757
lea rcx, str.internal_error:_entered_unreachable_code
lea r8, str.library_std_src_syswindowsmod.rs
mov edx, 0x28
call fcn.14008bda0
jmp 0x140053a17
lea rcx, str.internal_error:_entered_unreachable_code
lea r8, str.library_std_src_syswindowsmod.rs
mov edx, 0x28
call fcn.14008bda0
jmp 0x140053a17
lea rax, str.library_std_src_syswindowsmod.rs
mov rcx, r8
mov rdx, rbx
mov r8, rax
call fcn.1400921b0
jmp 0x140053a17
lea rax, str.library_std_src_syswindowsmod.rs
mov rcx, r8
mov rdx, rbx
mov r8, rax
call fcn.1400921b0
jmp 0x140053a17