Function at 0x14000294c
Capabilities:
Connect socket

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x238
mov rax, qword [rcx + 0x10]
lea rsi, [rsp + 0x190]
mov qword [rsi + 0x10], rax
movups xmm0, xmmword [rcx]
movaps xmmword [rsi], xmm0
movups xmm0, xmmword [rdx]
movups xmmword [rsi + 0x18], xmm0
mov rax, qword [rdx + 0x10]
mov qword [rsi + 0x28], rax
lea rcx, [rsp + 0x220]
mov rdx, rsi
call fcn.140076585
mov rcx, rsi
call fcn.140002553
mov qword [rsi + 0x70], 0
mov byte [rsi + 0x68], 2
mov al, byte [0x1400951f8]
mov ecx, 0x20
mov edx, 8
call fcn.140006dd0
test rax, rax
je 0x140003bd7
mov rsi, rax
lea rbx, [rsp + 0x200]
lea rdx, str.powershellFailed_to_start_shell.src_windows_mod.rs
lea rdi, [rsp + 0x128]
mov r8d, 0xa
mov rcx, rdi
call fcn.140073a20
movups xmm0, xmmword [rdi]
movups xmm1, xmmword [rdi + 0x10]
movups xmmword [rsi + 0x10], xmm1
mov qword [rsp + 0x170], rsi
movups xmmword [rsi], xmm0
xor esi, esi
mov qword [rdi], rsi
mov qword [rdi + 0x10], rsi
mov qword [rdi + 0x20], rsi
mov dword [rdi + 0x30], 0
mov byte [rdi + 0x40], sil
mov eax, 1
mov qword [rbx - 0x70], rax
mov qword [rbx - 0x60], rax
mov qword [rbx - 0x50], 2
mov byte [rbx - 0x28], 2
mov byte [rbx + 0x18], sil
lea r9, [rsp + 0x178]
mov qword [r9], rsi
mov qword [rsp + 0xb0], rsi
mov qword [rsp + 0x100], rsi
lea rdi, [rsp + 0xd0]
lea r8, [rsp + 0x128]
mov rcx, rdi
mov dl, 1
call fcn.140076799
cmp qword [rdi], rsi
jne 0x140003bad
lea r8, [rsp + 0x138]
lea rdi, [rsp + 0xd0]
lea r9, [rsp + 0xb0]
mov rcx, rdi
xor edx, edx
call fcn.140076799
cmp qword [rdi], 0
jne 0x140003bad
lea rcx, [rsp + 0x100]
lea rdx, [rsp + 0xb0]
mov r8b, 1
call fcn.14007689d
test rax, rax
mov rsi, qword [rsp + 0x170]
jne 0x140003be8
mov rcx, qword [rsp + 0x178]
mov rdx, qword [rsp + 0xb0]
mov r14, qword [rsp + 0x100]
mov rax, rcx
mov qword [rsp + 0xa0], rcx
test rcx, rcx
jne 0x140002b19
mov qword [rsp + 0x78], rdx
xor ecx, ecx
call fcn.140076275
mov rdi, rdx
test rax, rax
jne 0x140003d84
mov qword [rsp + 0xa0], rdi
mov rdx, qword [rsp + 0x78]
test rdx, rdx
jne 0x140002b36
mov bl, 1
mov cl, 1
call fcn.140076275
mov rdi, rdx
test rax, rax
jne 0x140003d92
mov rdx, rdi
mov qword [rsp + 0x78], rdx
test r14, r14
jne 0x140002b56
mov cl, 2
call fcn.140076275
mov rdi, rdx
test rax, rax
jne 0x140003da4
mov r14, rdi
mov qword [rsp + 0x98], r14
lea r12, [rsp + 0x80]
mov qword [r12], 2
xorps xmm0, xmm0
movups xmmword [r12 + 8], xmm0
mov rax, rsi
add rax, 0x20
mov qword [rsp + 0xd0], rsi
mov qword [rsp + 0xd8], 1
mov qword [rsp + 0xe0], rsi
mov qword [rsp + 0xe8], rax
mov al, 1
mov dword [rsp + 0x120], eax
movabs rdi, 0x500000e00
mov rax, rsi
lea rcx, [rax + 0x20]
mov qword [rsp + 0xe0], rcx
cmp byte [rax + 0x18], 2
je 0x14000310e
mov r15, qword [rax]
mov r13, qword [rax + 8]
mov rsi, qword [rax + 0x10]
test byte [rsp + 0x120], 1
jne 0x140002c20
mov rdx, qword [rsp + 0x90]
cmp rdx, qword [rsp + 0x88]
jne 0x140002c05
mov rcx, r12
call fcn.14007669a
mov rdx, qword [rsp + 0x90]
mov rax, qword [rsp + 0x80]
mov word [rax + rdx*2], 0x20
inc rdx
mov qword [rsp + 0x90], rdx
jmp 0x140002c2b
mov dword [rsp + 0x120], 0
lea rbx, [r15 + rsi]
xor r8d, r8d
mov rax, r15
mov cx, 1
test r8w, r8w
je 0x140002c47
xor r8d, r8d
jmp 0x140002cdf
cmp rax, rbx
je 0x140002ced
movzx r8d, byte [rax]
test r8b, r8b
js 0x140002c61
inc rax
mov edx, r8d
jmp 0x140002cda
mov edx, r8d
and edx, 0x1f
movzx r10d, byte [rax + 1]
and r10d, 0x3f
cmp r8b, 0xdf
jbe 0x140002cab
movzx r9d, byte [rax + 2]
shl r10d, 6
and r9d, 0x3f
or r9d, r10d
cmp r8b, 0xf0
jb 0x140002cb7
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 0x140002cc1
add rax, 2
shl edx, 6
or edx, r10d
jmp 0x140002cda
add rax, 3
shl edx, 0xc
or edx, r9d
cmp edx, 0xffff
jbe 0x140002cda
and edx, 0x3ff
or edx, 0xdc00
mov r8d, edx
jmp 0x140002cdf
xor r8d, r8d
mov ecx, edx
test cx, cx
jne 0x140002c35
jmp 0x140003991
test rsi, rsi
je 0x140002dcc
xor r8d, r8d
mov rax, r15
test r8w, r8w
je 0x140002d0c
xor edx, edx
mov ecx, r8d
jmp 0x140002daf
cmp rax, rbx
je 0x1400030e2
movzx edx, byte [rax]
test dl, dl
js 0x140002d26
inc rax
mov ecx, edx
jmp 0x140002dad
mov ecx, edx
and ecx, 0x1f
movzx r9d, byte [rax + 1]
and r9d, 0x3f
cmp dl, 0xdf
jbe 0x140002d6a
movzx r8d, byte [rax + 2]
shl r9d, 6
and r8d, 0x3f
or r8d, r9d
cmp dl, 0xf0
jb 0x140002d76
movzx edx, byte [rax + 3]
add rax, 4
and ecx, 7
shl ecx, 0x12
shl r8d, 6
and edx, 0x3f
or edx, r8d
or ecx, edx
jmp 0x140002d80
add rax, 2
shl ecx, 6
or ecx, r9d
jmp 0x140002dad
add rax, 3
shl ecx, 0xc
or ecx, r8d
cmp ecx, 0xffff
jbe 0x140002dad
lea r8d, [rcx + 0xff0000]
shr r8d, 0xa
or r8d, 0xd800
and ecx, 0x3ff
or ecx, 0xdc00
mov edx, ecx
jmp 0x140002d04
xor edx, edx
mov r8d, edx
cmp cx, 0x22
ja 0x140002cfc
movzx ecx, cx
bt rdi, rcx
mov r8d, edx
jae 0x140002cfc
mov r14, qword [rsp + 0x90]
cmp r14, qword [rsp + 0x88]
jne 0x140002df1
mov rcx, r12
mov rdx, r14
call fcn.14007669a
mov r14, qword [rsp + 0x90]
mov qword [rsp + 0xc8], r13
mov rsi, qword [rsp + 0x80]
mov word [rsi + r14*2], 0x22
inc r14
mov qword [rsp + 0x90], r14
mov qword [rsp + 0xa8], r15
mov qword [rsp + 0xb0], r15
mov qword [rsp + 0xb8], rbx
mov word [rsp + 0xc0], 0
lea rcx, [rsp + 0x178]
lea rdx, [rsp + 0xb0]
call fcn.140075d78
mov r15, qword [rsp + 0x188]
test r15, r15
je 0x140003042
mov r13, qword [rsp + 0x178]
xor ebx, ebx
mov r10, r13
lea rcx, [rbx*2]
add rcx, r13
mov ebp, 1
xor edi, edi
mov r8d, 2
xor eax, eax
xor edx, edx
movzx r12d, word [rcx + rax*2]
cmp r12d, 0x5c
jne 0x140002eb2
mov r13d, r8d
add edx, 2
lea r9, [rbx + rax]
inc r9
inc rax
add ebp, 2
inc edi
lea r8d, [r13 + 2]
cmp r9, r15
jb 0x140002e84
jmp 0x140002fef
add rbx, rax
cmp r12d, 0x22
jne 0x140002f4f
mov di, 0x22
bt eax, 0x1e
lea r12, [rsp + 0x80]
mov r13, r10
jb 0x140002f20
cmp ebp, 2
mov eax, 1
cmovl ebp, eax
cmp r14, qword [rsp + 0x88]
jne 0x140002f04
mov rcx, r12
mov rdx, r14
call fcn.14007669a
mov rsi, qword [rsp + 0x80]
mov r14, qword [rsp + 0x90]
mov word [rsi + r14*2], 0x5c
inc r14
mov qword [rsp + 0x90], r14
dec ebp
jne 0x140002edf
movzx edi, word [r13 + rbx*2]
cmp r14, qword [rsp + 0x88]
jne 0x140002f3d
mov rcx, r12
mov rdx, r14
call fcn.14007669a
mov r14, qword [rsp + 0x90]
mov rsi, qword [rsp + 0x80]
mov word [rsi + r14*2], di
jmp 0x140002fd6
test eax, eax
mov r13, r10
jle 0x140002f9f
lea r12, [rsp + 0x80]
cmp r14, qword [rsp + 0x88]
jne 0x140002f83
mov rcx, r12
mov rdx, r14
call fcn.14007669a
mov rsi, qword [rsp + 0x80]
mov r14, qword [rsp + 0x90]
mov word [rsi + r14*2], 0x5c
inc r14
mov qword [rsp + 0x90], r14
dec edi
jne 0x140002f5e
movzx r12d, word [r13 + rbx*2]
cmp r14, qword [rsp + 0x88]
jne 0x140002fc1
lea rcx, [rsp + 0x80]
mov rdx, r14
call fcn.14007669a
mov r14, qword [rsp + 0x90]
mov rsi, qword [rsp + 0x80]
mov word [rsi + r14*2], r12w
lea r12, [rsp + 0x80]
inc r14
mov qword [rsp + 0x90], r14
inc rbx
cmp rbx, r15
jb 0x140002e65
jmp 0x140003042
cmp r15, rbx
jbe 0x140003b92
add eax, eax
test eax, eax
lea r12, [rsp + 0x80]
jle 0x140003042
cmp r14, qword [rsp + 0x88]
jne 0x14000302b
mov rcx, r12
mov rdx, r14
call fcn.14007669a
mov rsi, qword [rsp + 0x80]
mov r14, qword [rsp + 0x90]
mov word [rsi + r14*2], 0x5c
inc r14
mov qword [rsp + 0x90], r14
dec r13d
jne 0x140003006
cmp r14, qword [rsp + 0x88]
jne 0x14000305f
mov rcx, r12
mov rdx, r14
call fcn.14007669a
mov r14, qword [rsp + 0x90]
movabs rdi, 0x500000e00
mov r15, qword [rsp + 0xa8]
mov r13, qword [rsp + 0xc8]
mov rax, qword [rsp + 0x80]
mov word [rax + r14*2], 0x22
inc r14
mov qword [rsp + 0x90], r14
cmp qword [rsp + 0x180], 0
je 0x1400030b4
mov r8, qword [rsp + 0x178]
mov rcx, qword [0x140095150]
xor edx, edx
call fcn.1400798d4
test r13, r13
je 0x1400030ca
mov rcx, qword [0x140095150]
xor edx, edx
mov r8, r15
call fcn.1400798d4
mov rax, qword [rsp + 0xe0]
cmp rax, qword [rsp + 0xe8]
jne 0x140002bb8
jmp 0x14000310e
mov qword [rsp + 0xb0], r15
mov qword [rsp + 0xb8], rbx
mov word [rsp + 0xc0], 0
mov rcx, r12
lea rdx, [rsp + 0xb0]
call fcn.140075ef0
jmp 0x1400030b4
mov rdi, qword [rsp + 0x80]
mov rbx, qword [rsp + 0x90]
mov rsi, qword [rsp + 0x88]
lea rcx, [rsp + 0xd0]
call fcn.140076759
lea rcx, [rsp + 0x100]
mov rdx, rdi
mov r8, rbx
call fcn.14004e170
test rsi, rsi
je 0x14000315c
mov rcx, qword [0x140095150]
xor edx, edx
mov r8, rdi
call fcn.1400798d4
cmp byte [rsp + 0x118], 2
mov r14, qword [rsp + 0x100]
je 0x1400039ef
mov rsi, qword [rsp + 0x108]
mov r15, qword [rsp + 0x110]
lea rcx, [rsp + 0xb0]
lea rdx, [rsp + 0x200]
call fcn.1400768ef
lea rdx, [rsp + 0x1c0]
lea rdi, [rsp + 0xd0]
mov rcx, rdi
call fcn.140076d16
mov bpl, byte [rdi + 0x18]
xor eax, eax
mov edx, 0
cmp bpl, 2
je 0x1400031c8
mov rdx, qword [rsp + 0xd0]
cmp byte [rsp + 0x1f8], 2
mov ecx, 0
je 0x1400031df
mov rcx, qword [rsp + 0x1e0]
mov r8, qword [rsp + 0xa0]
test r8, r8
je 0x1400031f7
mov r9, qword [r8 + 0x10]
mov eax, 1
jmp 0x1400031f7
mov r8, qword [rsp + 0x78]
test r8, r8
je 0x14000320d
mov r11, qword [r8 + 0x10]
mov r10d, 1
jmp 0x140003210
xor r10d, r10d
mov r8, qword [rsp + 0xe0]
mov rdi, qword [rsp + 0x1f0]
mov rbx, qword [rsp + 0x98]
test rbx, rbx
je 0x140003271
mov r12, qword [rbx + 0x10]
mov rbx, qword [rsp + 0xb0]
mov qword [rsp + 0x68], r12
mov qword [rsp + 0x58], r11
mov qword [rsp + 0x50], r10
mov qword [rsp + 0x48], r9
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x38], rdi
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], r15
mov qword [rsp + 0x60], 1
jmp 0x1400032aa
mov rbx, qword [rsp + 0xb0]
mov qword [rsp + 0x58], r11
mov qword [rsp + 0x50], r10
mov qword [rsp + 0x48], r9
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x38], rdi
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], r15
mov qword [rsp + 0x60], 0
lea rcx, [rsp + 0x100]
mov r9, r14
call fcn.140078162
cmp qword [rsp + 0x100], 0
mov rcx, qword [rsp + 0x78]
jne 0x140003c2b
mov rdi, qword [rsp + 0x108]
mov r15d, dword [rsp + 0x110]
cmp dword [rsp + 0x158], 1
jne 0x1400032fa
mov rcx, qword [rsp + 0x160]
call sub.KERNEL32.dll_CloseHandle
mov rcx, qword [rsp + 0x78]
mov dword [rsp + 0x158], 1
mov dword [rsp + 0x15c], r15d
mov qword [rsp + 0x160], rdi
cmp bpl, 2
je 0x140003349
cmp qword [rsp + 0xd8], 0
je 0x140003349
mov r8, qword [rsp + 0xd0]
mov rcx, qword [0x140095150]
xor edx, edx
call fcn.1400798d4
mov rcx, qword [rsp + 0x78]
mov rbx, qword [rsp + 0xb0]
test rbx, rbx
je 0x14000336f
cmp qword [rsp + 0xb8], 0
je 0x14000336f
mov rcx, qword [0x140095150]
xor edx, edx
mov r8, rbx
call fcn.1400798d4
mov rcx, qword [rsp + 0x78]
test rsi, rsi
je 0x14000338a
mov rcx, qword [0x140095150]
xor edx, edx
mov r8, r14
call fcn.1400798d4
mov rcx, qword [rsp + 0x78]
mov rax, qword [rsp + 0x98]
test rax, rax
mov rsi, qword [rsp + 0xa0]
je 0x1400033ac
mov rcx, rax
call fcn.140074a39
mov rcx, qword [rsp + 0x78]
test rcx, rcx
je 0x1400033b6
call fcn.140074a39
test rsi, rsi
je 0x1400033c3
mov rcx, rsi
call fcn.140074a39
cmp byte [rsp + 0x1f8], 2
je 0x1400033ee
cmp qword [rsp + 0x1e8], 0
je 0x1400033ee
mov r8, qword [rsp + 0x1e0]
mov rcx, qword [0x140095150]
xor edx, edx
call fcn.1400798d4
mov rsi, qword [rsp + 0x128]
mov rbx, qword [rsp + 0x130]
mov rdi, qword [rsp + 0x138]
movups xmm0, xmmword [rsp + 0x140]
movaps xmmword [rsp + 0xd0], xmm0
movups xmm0, xmmword [rsp + 0x150]
movaps xmmword [rsp + 0xe0], xmm0
movups xmm0, xmmword [rsp + 0x160]
movaps xmmword [rsp + 0xf0], xmm0
cmp rsi, 2
je 0x140003adb
mov qword [rsp + 0x198], rbx
movaps xmm0, xmmword [rsp + 0xd0]
movaps xmm1, xmmword [rsp + 0xe0]
movaps xmm2, xmmword [rsp + 0xf0]
movups xmmword [rsp + 0x1a8], xmm0
movups xmmword [rsp + 0x1b8], xmm1
movups xmmword [rsp + 0x1c8], xmm2
xor ecx, ecx
call fcn.14000253e
xor ecx, ecx
call fcn.14000253e
xor ecx, ecx
call fcn.14000253e
mov qword [rsp + 0x190], 0
test rsi, rsi
je 0x140003c93
mov r14, qword [rsp + 0x1a8]
mov qword [rsp + 0x1a0], 0
test rdi, rdi
je 0x140003ca3
mov rdx, qword [rsp + 0x220]
mov rax, qword [rsp + 0x228]
mov qword [rsp + 0xa8], rax
mov r8, qword [rsp + 0x230]
lea rsi, [rsp + 0x128]
mov rcx, rsi
mov qword [rsp + 0xa0], rdx
call fcn.14006cc50
mov rax, qword [rsi]
test rax, rax
je 0x140003cbd
mov qword [rsp + 0x98], rax
mov rax, qword [rsp + 0x130]
mov qword [rsp + 0xc8], rax
mov rdi, qword [rsp + 0x138]
mov r13, qword [rsp + 0x140]
mov qword [rsp + 0x100], 0
cmp rdi, r13
je 0x140003cca
mov qword [rsp + 0x120], r14
mov qword [rsp + 0x78], rbx
xor esi, esi
movzx ebp, word [rdi]
cmp bp, 2
je 0x140003b10
mov r15d, dword [rdi + 0x14]
mov r12d, dword [rdi + 0x18]
movzx r14d, word [rdi + 0x1c]
movzx eax, word [rdi + 0x12]
mov word [rsp + 0xe0], ax
movups xmm0, xmmword [rdi + 2]
movaps xmmword [rsp + 0xd0], xmm0
mov rax, qword [0x140095158]
cmp rax, 3
jne 0x14000367c
lea rcx, [rsp + 0x128]
mov edx, ebp
call fcn.14006d730
cmp qword [rsp + 0x128], 0
mov rbx, qword [rsp + 0x130]
jne 0x14000364d
test bp, bp
je 0x1400035d1
mov r8d, 0x1c
mov ax, 0x17
movups xmm0, xmmword [rsp + 0xd2]
jmp 0x1400035ef
movzx r14d, word [rsp + 0xd4]
mov r15d, dword [rsp + 0xd0]
mov r8d, 0x10
mov ax, 2
xorps xmm0, xmm0
rol r14w, 8
mov word [rsp + 0x128], ax
mov word [rsp + 0x12a], r14w
mov dword [rsp + 0x12c], r15d
movups xmmword [rsp + 0x130], xmm0
mov dword [rsp + 0x140], r12d
mov rcx, rbx
lea rdx, [rsp + 0x128]
call sub.WS2_32.dll_connect
cmp eax, 0xffffffff
jne 0x140003686
call sub.WS2_32.dll_WSAGetLastError
mov r12d, eax
shl r12, 0x20
or r12, 2
mov rcx, rbx
call sub.WS2_32.dll_closesocket
mov rbx, r12
test rsi, rsi
je 0x14000365f
lea rcx, [rsp + 0x100]
call fcn.1400021a6
mov qword [rsp + 0x100], rbx
add rdi, 0x20
mov rsi, rbx
cmp rdi, r13
jne 0x14000354f
jmp 0x140003b13
call fcn.14006c9b0
jmp 0x140003592
cmp qword [rsp + 0xc8], 0
je 0x1400036a7
mov rcx, qword [0x140095150]
xor edx, edx
mov r8, qword [rsp + 0x98]
call fcn.1400798d4
test rsi, rsi
je 0x1400036b9
lea rcx, [rsp + 0x100]
call fcn.1400021a6
cmp qword [rsp + 0xa8], 0
je 0x1400036da
mov rcx, qword [0x140095150]
xor edx, edx
mov r8, qword [rsp + 0xa0]
call fcn.1400798d4
lea rdi, [rsp + 0x128]
mov rcx, rdi
mov rdx, rbx
call fcn.14006d830
cmp qword [rdi], 0
jne 0x140003cd1
mov r12, qword [rsp + 0x130]
call fcn.14006e100
mov rsi, rax
xor ecx, ecx
call fcn.140049480
lock inc qword [rax]
jle 0x140003ba9
mov rdi, rax
mov al, byte [0x1400951f8]
mov ecx, 0x30
mov edx, 8
call fcn.140006dd0
test rax, rax
je 0x140003bbf
mov r14, rax
mov eax, 1
mov qword [r14], rax
mov qword [r14 + 8], rax
xorps xmm0, xmm0
movups xmmword [r14 + 0x10], xmm0
mov qword [rsp + 0x128], r14
lock inc qword [r14]
jle 0x140003ba9
xor ecx, ecx
call fcn.14006bee0
mov r15, rax
test rax, rax
je 0x140003780
lock inc qword [r15]
jle 0x140003ba9
mov rcx, r15
jmp 0x140003782
xor ecx, ecx
call fcn.14006bee0
test rax, rax
je 0x14000379a
lock dec qword [rax]
jne 0x14000379a
mov rcx, rax
call fcn.1400763e9
mov rbp, qword [rsp + 0x128]
mov rcx, qword [rbp + 0x10]
test rcx, rcx
je 0x1400037b4
add rcx, 0x10
call fcn.14004c380
mov al, byte [0x1400951f8]
mov ecx, 0x28
mov edx, 8
call fcn.140006dd0
test rax, rax
je 0x140003bcb
mov qword [rax], rdi
mov qword [rax + 8], r14
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], r12
mov rcx, qword [rsp + 0x120]
mov qword [rax + 0x20], rcx
lea r8, [0x14007f1b0]
mov rcx, rsi
mov rdx, rax
call fcn.14006e260
mov rsi, rdx
test rax, rax
jne 0x140003cf0
call fcn.14006e100
mov r15, rax
xor ecx, ecx
call fcn.140049480
lock inc qword [rax]
jle 0x140003ba9
mov r14, rax
mov al, byte [0x1400951f8]
mov ecx, 0x30
mov edx, 8
call fcn.140006dd0
test rax, rax
je 0x140003bbf
mov r12, rax
mov eax, 1
mov qword [r12], rax
mov qword [r12 + 8], rax
xorps xmm0, xmm0
movups xmmword [r12 + 0x10], xmm0
mov qword [rsp + 0x128], r12
lock inc qword [r12]
jle 0x140003ba9
xor ecx, ecx
call fcn.14006bee0
mov r13, rax
test rax, rax
mov qword [rsp + 0xa8], rbp
je 0x140003899
lock inc qword [r13]
jle 0x140003ba9
mov rcx, r13
jmp 0x14000389b
xor ecx, ecx
call fcn.14006bee0
mov rbp, rdi
test rax, rax
je 0x1400038b6
lock dec qword [rax]
jne 0x1400038b6
mov rcx, rax
call fcn.1400763e9
mov rdi, qword [rsp + 0x128]
mov rcx, qword [rdi + 0x10]
test rcx, rcx
je 0x1400038d0
add rcx, 0x10
call fcn.14004c380
mov al, byte [0x1400951f8]
mov ecx, 0x28
mov edx, 8
call fcn.140006dd0
test rax, rax
je 0x140003bcb
mov qword [rax], r14
mov qword [rax + 8], r12
mov qword [rax + 0x10], r13
mov qword [rax + 0x18], rbx
mov rcx, qword [rsp + 0x78]
mov qword [rax + 0x20], rcx
lea r8, [0x14007f190]
mov rcx, r15
mov rdx, rax
call fcn.14006e260
mov rbx, rdx
test rax, rax
jne 0x140003d1f
lea r15, [rsp + 0x128]
mov qword [r15], rbp
mov rax, qword [rsp + 0xa8]
mov qword [r15 + 8], rax
mov qword [r15 + 0x10], rsi
mov rcx, r15
call fcn.140001aa7
mov rcx, rax
call fcn.140076098
mov qword [r15], r14
mov qword [r15 + 8], rdi
mov qword [r15 + 0x10], rbx
lea rcx, [rsp + 0x128]
call fcn.140001aa7
mov rcx, rax
call fcn.140076098
lea rcx, [rsp + 0x190]
call fcn.14000220f
nop
add rsp, 0x238
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
movabs rax, 0xa100000002
mov qword [rsp + 0x100], rax
test r13, r13
je 0x1400039b9
mov rcx, qword [0x140095150]
xor edx, edx
mov r8, r15
call fcn.1400798d4
lea rcx, [rsp + 0xd0]
call fcn.140076759
cmp qword [rsp + 0x88], 0
je 0x1400039e7
mov r8, qword [rsp + 0x80]
mov rcx, qword [0x140095150]
xor edx, edx
call fcn.1400798d4
mov r14, qword [rsp + 0x100]
mov bl, 1
xor esi, esi
mov rdi, r14
mov rcx, qword [rsp + 0x98]
test rcx, rcx
je 0x140003a08
call fcn.140074a39
mov rcx, qword [rsp + 0x78]
test rcx, rcx
je 0x140003a17
call fcn.140074a39
mov rcx, qword [rsp + 0xa0]
test rcx, rcx
je 0x140003a29
call fcn.140074a39
test bl, bl
je 0x140003a76
xor ebx, ebx
cmp byte [rsp + 0x1d8], 2
je 0x140003a5c
cmp qword [rsp + 0x1c8], 0
je 0x140003a5c
mov r8, qword [rsp + 0x1c0]
mov rcx, qword [0x140095150]
xor ebx, ebx
xor edx, edx
call fcn.1400798d4
cmp qword [rsp + 0x200], 0
je 0x140003a78
lea rcx, [rsp + 0x200]
call fcn.1400749b7
jmp 0x140003a78
xor ebx, ebx
cmp byte [rsp + 0x1f8], 2
je 0x140003aa3
cmp qword [rsp + 0x1e8], 0
je 0x140003aa3
mov r8, qword [rsp + 0x1e0]
mov rcx, qword [0x140095150]
xor edx, edx
call fcn.1400798d4
test sil, sil
je 0x140003ace
mov edx, 1
mov rsi, qword [rsp + 0x170]
mov rcx, rsi
call fcn.140074a71
mov rcx, qword [0x140095150]
xor edx, edx
mov r8, rsi
call fcn.1400798d4
lea rcx, [rsp + 0x128]
call fcn.14000220f
lea r8, [rsp + 0x190]
mov qword [r8], rbx
mov qword [r8 + 8], rdi
lea rax, [0x14007f3f0]
mov qword [rsp + 0x20], rax
lea rcx, [0x14007f3c2]
lea r9, [0x14007f2a0]
mov edx, 0x16
call fcn.140037a80
ud2
mov rbx, rsi
cmp qword [rsp + 0xc8], 0
je 0x140003b34
mov rcx, qword [0x140095150]
xor edx, edx
mov r8, qword [rsp + 0x98]
call fcn.1400798d4
test rbx, rbx
lea rsi, str.could_not_resolve_to_any_addresses
cmovne rsi, rbx
cmp qword [rsp + 0xa8], 0
je 0x140003b63
mov rcx, qword [0x140095150]
xor edx, edx
mov r8, qword [rsp + 0xa0]
call fcn.1400798d4
lea r8, [rsp + 0x128]
mov qword [r8], rsi
lea rax, [0x14007f438]
mov qword [rsp + 0x20], rax
lea rcx, str.called__Result::unwrap____on_an__Err__value
lea r9, fcn.1400021a6
mov edx, 0x2b
jmp 0x140003b09
inc rbx
lea r8, str._home_user_.cargo_registry_src_index.crates.io_6f17d22bba15001f_subprocess_0.2.8_src_popen.rsPATHexe
mov rcx, rbx
mov rdx, r15
call fcn.1400355c0
ud2
ud2
mov rbx, qword [rsp + 0xd8]
mov rdi, qword [rsp + 0xe0]
jmp 0x140003bed
mov ecx, 8
mov edx, 0x30
jmp 0x140003be1
mov ecx, 8
mov edx, 0x28
jmp 0x140003be1
mov ecx, 8
mov edx, 0x20
call fcn.1400072b0
ud2
mov rdi, rax
xor ebx, ebx
mov rcx, qword [rsp + 0x100]
test rcx, rcx
je 0x140003bff
call fcn.140074a39
mov rcx, qword [rsp + 0xb0]
test rcx, rcx
je 0x140003c11
call fcn.140074a39
mov rcx, qword [rsp + 0x178]
test rcx, rcx
je 0x140003c23
call fcn.140074a39
mov sil, 1
jmp 0x140003a5c
mov rdi, qword [rsp + 0x108]
cmp bpl, 2
je 0x140003c62
cmp qword [rsp + 0xd8], 0
je 0x140003c62
mov r8, qword [rsp + 0xd0]
mov rcx, qword [0x140095150]
xor edx, edx
call fcn.1400798d4
mov rbx, qword [rsp + 0xb0]
test rbx, rbx
je 0x140003c83
cmp qword [rsp + 0xb8], 0
je 0x140003c83
mov rcx, qword [0x140095150]
xor edx, edx
mov r8, rbx
call fcn.1400798d4
test rsi, rsi
jne 0x140003d6a
xor ebx, ebx
jmp 0x140003d7d
lea rcx, str.called__Option::unwrap____on_a__None__value_home_user_.cargo_registry_src_index.crates.io_6f17d22bba15001f_winapi_util_0.1.5_src_win.rs
lea r8, [0x14007f408]
jmp 0x140003cb1
lea rcx, str.called__Option::unwrap____on_a__None__value_home_user_.cargo_registry_src_index.crates.io_6f17d22bba15001f_winapi_util_0.1.5_src_win.rs
lea r8, [0x14007f420]
mov edx, 0x2b
call fcn.140036450
ud2
mov rsi, qword [rsp + 0x130]
jmp 0x140003b42
xor ebx, ebx
jmp 0x140003b13
mov rax, qword [rsp + 0x130]
lea r8, [rsp + 0xd0]
mov qword [r8], rax
lea rax, [0x14007f450]
jmp 0x140003b75
lock dec qword [rbp]
jne 0x140003d04
lea rcx, [rsp + 0x128]
call fcn.140076434
lock dec qword [rdi]
jne 0x140003d12
mov rcx, rdi
call fcn.140074c77
lea r8, [rsp + 0x128]
mov qword [r8], rsi
jmp 0x140003d4b
lock dec qword [rdi]
jne 0x140003d32
lea rcx, [rsp + 0x128]
call fcn.140076434
lock dec qword [r14]
jne 0x140003d40
mov rcx, r14
call fcn.140074c77
lea r8, [rsp + 0x128]
mov qword [r8], rbx
lea rax, str._rustc_79e9716c980570bfd1f666e3b16ac583f0168962library_std_src_threadmod.rs
mov qword [rsp + 0x20], rax
lea rcx, str.failed_to_spawn_thread
lea r9, fcn.1400021a6
jmp 0x140003b04
mov rcx, qword [0x140095150]
xor ebx, ebx
xor edx, edx
mov r8, r14
call fcn.1400798d4
xor esi, esi
jmp 0x1400039f6
xor eax, eax
mov qword [rsp + 0xa0], rax
mov bl, 1
jmp 0x140003d99
xor eax, eax
mov qword [rsp + 0x78], rax
mov sil, 1
mov rcx, r14
jmp 0x1400039fe
mov bl, 1
mov sil, 1
mov rcx, qword [rsp + 0x78]
jmp 0x140003a12