Function at 0x14003b210
Capabilities:
Create process on windows
Query environment variable

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x408
lea rbp, [rsp + 0x80]
movaps xmmword [rbp + 0x370], xmm6
mov qword [rbp + 0x368], 0xfffffffffffffffe
mov qword [rbp + 0x330], r9
mov qword [rbp + 0x338], r8
xorps xmm0, xmm0
movaps xmmword [rbp + 0xe0], xmm0
test rcx, rcx
je 0x14003b640
mov rdi, rdx
mov rbx, rcx
xor esi, esi
jmp 0x14003b2d4
lea rcx, str.Pe_r_
mov rdx, r12
call fcn.1400680c0
mov r15, rdx
mov qword [rbp + 0xe0], r12
mov qword [rbp + 0xe8], rdx
mov ecx, 4
lea r14, str.copy
mov rdx, r14
mov r8, r12
mov r9, r12
call fcn.14006c5b0
mov qword [rsp + 0x20], r12
mov ecx, 4
mov rdx, r14
mov r8, r13
mov r9, r15
call fcn.14006c670
mov rcx, r15
mov rdx, r13
mov r8, r12
call fcn.1400a6b20
inc rsi
cmp rsi, rbx
je 0x14003b629
mov rax, rsi
shl rax, 4
mov r12, qword [rdi + rax]
mov r13, qword [rdi + rax + 8]
test r12, r12
je 0x14003b330
lea r14, [r12 + 2]
cmp r12, 1
jne 0x14003b350
mov r8b, 1
xor eax, eax
mov rcx, r12
test r12b, 1
je 0x14003b45c
movzx ecx, byte [r13 + rcx - 1]
cmp ecx, 0x21
jg 0x14003b440
cmp ecx, 9
je 0x14003b45a
cmp ecx, 0x20
je 0x14003b45a
jmp 0x14003b45c
mov r14d, 2
mov r15, qword [rbp + 0xe0]
jmp 0x14003b4e0
mov rdx, r12
and rdx, 0xfffffffffffffffe
mov r8b, 1
xor eax, eax
mov rcx, r12
jmp 0x14003b383
mov al, 1
xor r8d, r8d
add rcx, 0xfffffffffffffffe
add rdx, 0xfffffffffffffffe
je 0x14003b2fc
movzx r9d, byte [r13 + rcx - 1]
cmp r9d, 0x21
jg 0x14003b3b0
cmp r9d, 9
je 0x14003b39b
cmp r9d, 0x20
jne 0x14003b39d
mov al, 1
xor r8d, r8d
jmp 0x14003b3e0
cmp r9d, 0x5c
je 0x14003b3c6
cmp r9d, 0x22
jne 0x14003b39d
inc r14
mov al, 1
mov r8b, 1
jmp 0x14003b3e0
mov r9d, r8d
and r9b, 1
movzx r9d, r9b
add r14, r9
nop word cs:[rax + rax]
movzx r9d, byte [r13 + rcx - 2]
cmp r9d, 0x21
jg 0x14003b410
cmp r9d, 9
je 0x14003b370
cmp r9d, 0x20
je 0x14003b370
jmp 0x14003b372
cmp r9d, 0x22
je 0x14003b433
cmp r9d, 0x5c
jne 0x14003b372
mov r9d, r8d
and r9b, 1
movzx r9d, r9b
add r14, r9
jmp 0x14003b375
inc r14
mov al, 1
mov r8b, 1
jmp 0x14003b375
cmp ecx, 0x22
je 0x14003b457
cmp ecx, 0x5c
jne 0x14003b45c
and r8b, 1
movzx ecx, r8b
add r14, rcx
jmp 0x14003b45c
inc r14
mov al, 1
movzx ecx, byte [r13 + r12 - 1]
add ecx, 0xffffffd0
mov r15, qword [rbp + 0xe0]
cmp ecx, 0xa
jb 0x14003b4e0
and al, 1
jne 0x14003b4e0
test r15, r15
je 0x14003b268
lea r14, [r15 + r12]
inc r14
lea rcx, str.Pe_r_
mov rdx, r14
lea r8, [rbp + 0xe0]
call fcn.140069560
mov rax, qword [rbp + 0xe0]
cmp r15, rax
jae 0x14003c54a
mov rax, qword [rbp + 0xe8]
mov byte [rax + r15], 0x20
inc r15
mov rax, qword [rbp + 0xe0]
cmp r15, r14
ja 0x14003c575
cmp r14, rax
ja 0x14003c575
add r15, qword [rbp + 0xe8]
jmp 0x14003b288
mov qword [rbp + 0x360], rsi
test r15, r15
je 0x14003b560
mov rsi, rdi
mov rdi, rbx
lea rbx, [r15 + r14]
inc rbx
lea rcx, str.Pe_r_
mov rdx, rbx
lea r8, [rbp + 0xe0]
call fcn.140069560
mov rax, qword [rbp + 0xe0]
cmp r15, rax
jae 0x14003c54a
mov rax, qword [rbp + 0xe8]
mov byte [rax + r15], 0x20
inc r15
mov rax, qword [rbp + 0xe0]
cmp r15, rbx
ja 0x14003c569
cmp rbx, rax
ja 0x14003c569
add r15, qword [rbp + 0xe8]
mov rbx, rdi
mov rdi, rsi
jmp 0x14003b580
lea rcx, str.Pe_r_
mov rdx, r14
call fcn.1400680c0
mov r15, rdx
mov qword [rbp + 0xe0], r14
mov qword [rbp + 0xe8], rdx
mov r9, r14
sub r9, 1
jb 0x14003c50b
mov byte [r15 + r9], 0x22
test r12, r12
mov rsi, qword [rbp + 0x360]
je 0x14003b610
mov r8b, 1
jmp 0x14003b5bb
mov r8d, ecx
mov r9, rax
dec r12
je 0x14003b613
movzx edx, byte [r13 + r12 - 1]
mov cl, 1
cmp edx, 0x22
je 0x14003b5e2
cmp edx, 0x5c
jne 0x14003b5e0
mov ecx, r8d
jmp 0x14003b5e2
xor ecx, ecx
lea rax, [r9 - 1]
cmp rax, r14
jae 0x14003c4d0
mov byte [r15 + rax], dl
test cl, 1
je 0x14003b5b0
add r9, 0xfffffffffffffffe
cmp r9, r14
jae 0x14003c4ef
mov byte [r15 + r9], 0x5c
mov rax, r9
jmp 0x14003b5b0
mov rax, r9
dec rax
cmp rax, r14
jae 0x14003c52b
mov byte [r15 + rax], 0x22
jmp 0x14003b2c8
mov r8, qword [rbp + 0xe0]
mov r9, qword [rbp + 0xe8]
mov rcx, qword [rdi]
mov rdx, qword [rdi + 8]
jmp 0x14003b64a
xor r8d, r8d
xor r9d, r9d
xor ecx, ecx
xor edx, edx
mov rax, qword [rbp + 0x338]
movups xmm0, xmmword [rax]
movaps xmmword [rbp + 0x2a0], xmm0
mov rax, qword [rax + 0x10]
mov qword [rbp + 0x2b0], rax
mov rax, qword [rbp + 0x2a0]
test rax, rax
je 0x14003b676
lock inc dword [rax + 8]
mov rax, qword [rbp + 0x330]
movups xmm0, xmmword [rax]
movaps xmmword [rbp + 0x2c0], xmm0
mov rax, qword [rax + 0x10]
mov qword [rbp + 0x2d0], rax
mov rax, qword [rbp + 0x2c0]
test rax, rax
je 0x14003b6a2
lock inc dword [rax + 8]
mov rax, qword [rbp + 0x3f0]
movups xmm0, xmmword [rax]
movaps xmmword [rbp + 0x2e0], xmm0
mov rax, qword [rax + 0x10]
mov qword [rbp + 0x2f0], rax
mov rax, qword [rbp + 0x2e0]
test rax, rax
je 0x14003b6ce
lock inc dword [rax + 8]
test r8, r8
je 0x14003c625
mov eax, dword [rbp + 0x400]
test al, 1
mov qword [rbp + 0x290], rcx
mov qword [rbp + 0x298], rdx
mov qword [rbp + 0x280], r8
mov qword [rbp + 0x288], r9
jne 0x14003b728
cmp qword [rbp + 0x3f8], 0
je 0x14003b721
mov rax, qword [rbp + 0x3f8]
mov eax, dword [rax + 0x10]
mov rcx, qword [rbp + 0x3f8]
cmp eax, dword [rcx + 0x14]
jne 0x14003b7b0
xor edi, edi
jmp 0x14003bf60
xorps xmm6, xmm6
movaps xmmword [rbp - 0x30], xmm6
mov rdx, qword [0x1400f88c8]
mov rax, qword [rdx]
mov rax, qword [rax + 0x50]
mov qword [rsp + 0x20], 0
lea rcx, [rbp + 0x1f8]
mov r8d, 0x20
xor r9d, r9d
call rax
mov rsi, qword [rbp + 0x1f8]
movups xmmword [rsi + 0x10], xmm6
movups xmmword [rsi], xmm6
movaps xmmword [rbp + 0xe0], xmm6
lea rcx, [0x1400f6ab8]
lea r8, [rbp + 0xe0]
xor edx, edx
call fcn.140067700
test rax, rax
je 0x14003b7a0
lea rcx, [0x1400f6ab8]
lea r8, [rbp - 0x30]
mov rdx, rax
call fcn.140069560
mov rax, qword [rbp - 0x30]
jmp 0x14003b7a2
xor eax, eax
mov qword [rsi], rax
mov qword [rbp - 0x30], rsi
xor esi, esi
jmp 0x14003ba2c
xorps xmm6, xmm6
movaps xmmword [rbp - 0x30], xmm6
mov rdx, qword [0x1400f88c8]
mov rax, qword [rdx]
mov rax, qword [rax + 0x50]
mov qword [rsp + 0x20], 0
lea rcx, [rbp + 0x1f8]
mov r8d, 0x20
xor r9d, r9d
call rax
mov rsi, qword [rbp + 0x1f8]
movups xmmword [rsi + 0x10], xmm6
movups xmmword [rsi], xmm6
movaps xmmword [rbp + 0xe0], xmm6
lea rcx, [0x1400f6ab8]
lea r8, [rbp + 0xe0]
xor edx, edx
call fcn.140067700
test rax, rax
je 0x14003b828
lea rcx, [0x1400f6ab8]
lea r8, [rbp - 0x30]
mov rdx, rax
call fcn.140069560
mov rax, qword [rbp - 0x30]
jmp 0x14003b82a
xor eax, eax
mov qword [rsi], rax
mov qword [rbp - 0x30], rsi
mov qword [rbp + 0xe0], 0
call sub.KERNEL32.dll_GetEnvironmentStringsW
mov r8, rax
test rax, rax
je 0x14003c71b
xor esi, esi
cmp word [r8], 0
je 0x14003ba24
mov rdx, r8
xor eax, eax
mov qword [rbp + 0x360], r8
jmp 0x14003b88a
mov r8, qword [rbp + 0x360]
movsxd rax, esi
lea rdx, [r8 + rax*2]
cmp word [r8 + rax*2], 0
je 0x14003ba1d
mov edi, esi
nop dword [rax]
mov esi, edi
movsxd rcx, edi
lea edi, [rcx + 1]
cmp word [r8 + rcx*2], 0x3d
jne 0x14003b890
sub rcx, rax
call fcn.140025870
mov rcx, rax
call fcn.140027660
mov r8, qword [rbp + 0x360]
mov qword [rbp + 0x300], rax
mov qword [rbp + 0x308], rdx
nop word cs:[rax + rax]
movsxd rcx, esi
lea esi, [rcx + 1]
cmp word [r8 + rcx*2], 0
jne 0x14003b8d0
test rax, rax
je 0x14003b877
movsxd rax, edi
lea rdx, [r8 + rax*2]
sub rcx, rax
call fcn.140027660
mov qword [rbp + 0x358], rax
mov r14, rdx
mov r15, qword [rbp + 0xe0]
test r15, r15
je 0x14003b912
mov eax, dword [r15 + 0x10]
cmp eax, dword [r15 + 0x14]
jne 0x14003b95c
lea rax, [rbp + 0x210]
mov qword [rsp + 0x20], rax
lea rcx, [rbp + 0xe0]
lea rdx, [0x1400f0e70]
lea r9, [rbp + 0x300]
call fcn.140043c60
mov rdx, qword [rbp + 0x358]
mov rcx, rdx
or rcx, r14
lea rcx, [0x1400b3ec0]
cmove r14, rcx
mov qword [rax], rdx
mov qword [rax + 8], r14
jmp 0x14003b870
mov rcx, qword [r15 + 0x38]
lea rdx, [rbp + 0x300]
call qword [r15 + 0x40]
mov rcx, rax
shr rcx, 0xd
xor rcx, rax
imul rax, rcx, 0x5bd1e995
mov rbx, rax
shr rbx, 0xf
xor rbx, rax
movabs rax, 0x8000000000000000
or rbx, rax
mov rdi, qword [r15]
mov rcx, qword [r15 + 8]
dec rdi
and rdi, rbx
mov r12d, 1
nop word cs:[rax + rax]
mov r13, rdi
shl r13, 4
mov rax, qword [rcx + r13]
cmp rax, rbx
jne 0x14003b9e9
mov rax, qword [0x1400f6a68]
mov r8, qword [rcx + r13 + 8]
lea rcx, [0x1400f6a68]
lea rdx, [rbp + 0x300]
call qword [rax + reloc.WS2_32.dll_getservbyport]
mov rcx, qword [r15 + 8]
test al, al
jne 0x14003ba03
mov rax, qword [rcx + r13]
test rax, rax
je 0x14003b912
add rdi, r12
mov rax, qword [r15]
dec rax
and rdi, rax
inc r12
jmp 0x14003b9b0
test rcx, rcx
je 0x14003b912
cmp qword [rcx + r13 + 8], 0
jne 0x14003b870
jmp 0x14003b912
mov rsi, qword [rbp + 0xe0]
mov rcx, r8
call sub.KERNEL32.dll_FreeEnvironmentStringsW
mov rax, qword [rbp + 0x3f8]
mov qword [rbp - 0x28], rsi
test rax, rax
je 0x14003bd27
mov eax, dword [rax + 0x10]
mov rcx, qword [rbp + 0x3f8]
cmp eax, dword [rcx + 0x14]
mov rax, qword [rbp + 0x3f8]
je 0x14003bd27
mov rcx, qword [rax]
mov qword [rbp + 0x360], rcx
test rcx, rcx
je 0x14003bd27
mov rdx, qword [rax + 8]
mov eax, dword [rax + 0x2c]
mov qword [rbp + 0x358], rax
xor r12d, r12d
lea r15, [rbp - 0x30]
mov rcx, qword [rbp + 0x360]
mov qword [rbp + 0x340], rdx
jmp 0x14003baba
inc r12
mov rcx, qword [rbp + 0x360]
cmp r12, rcx
mov rdx, qword [rbp + 0x340]
je 0x14003bd23
mov rax, r12
shl rax, 4
cmp qword [rdx + rax], 0
js 0x14003bae0
inc r12
cmp r12, rcx
jne 0x14003baba
jmp 0x14003bd23
add rax, rdx
mov rax, qword [rax + 8]
mov rcx, qword [rbp + 0x358]
mov rdi, qword [rax + rcx]
mov r14, qword [rax + rcx + 8]
mov rcx, qword [rax]
mov rdx, qword [rax + 8]
call fcn.140026080
mov rbx, rax
mov r13, rdx
mov qword [rbp + 0xe0], rax
mov qword [rbp + 0xe8], rdx
jmp 0x14003bb30
inc r13
dec rbx
mov rcx, r15
mov edx, eax
call fcn.14004d2b0
test rbx, rbx
je 0x14003bb70
mov qword [rbp + 0x210], 0
movzx eax, byte [r13]
test al, al
jns 0x14003bb20
mov rcx, rbx
mov rdx, r13
lea r8, [rbp + 0x210]
call fcn.140012270
mov rcx, qword [rbp + 0x210]
add r13, rcx
sub rbx, rcx
jmp 0x14003bb26
mov edx, 1
mov rcx, r15
call fcn.14004d120
mov rcx, qword [rbp - 0x30]
mov rdx, qword [rcx + 8]
mov rax, rdx
inc rax
je 0x14003c599
mov rcx, qword [rcx + 0x10]
mov word [rcx + rdx*2], 0x3d
mov rdx, qword [rbp - 0x30]
mov qword [rdx + 8], rax
mov qword [rdx + 0x10], rcx
jmp 0x14003bbc0
inc r14
dec rdi
mov rcx, r15
mov edx, eax
call fcn.14004d2b0
test rdi, rdi
je 0x14003bc00
mov qword [rbp + 0x210], 0
movzx eax, byte [r14]
test al, al
jns 0x14003bbb0
mov rcx, rdi
mov rdx, r14
lea r8, [rbp + 0x210]
call fcn.140012270
mov rcx, qword [rbp + 0x210]
add r14, rcx
sub rdi, rcx
jmp 0x14003bbb6
mov edx, 1
mov rcx, r15
call fcn.14004d120
mov rcx, qword [rbp - 0x30]
mov rdx, qword [rcx + 8]
mov rax, rdx
inc rax
je 0x14003c5bc
mov rcx, qword [rcx + 0x10]
mov word [rcx + rdx*2], 0
mov rdx, qword [rbp - 0x30]
mov qword [rdx + 8], rax
mov qword [rdx + 0x10], rcx
mov rdi, qword [rbp - 0x28]
test rdi, rdi
je 0x14003baa0
mov eax, dword [rdi + 0x10]
cmp eax, dword [rdi + 0x14]
je 0x14003baa0
mov rcx, qword [rdi + 0x38]
lea rdx, [rbp + 0xe0]
call qword [rdi + 0x40]
mov rcx, rax
shr rcx, 0xd
xor rcx, rax
imul rax, rcx, 0x5bd1e995
mov rbx, rax
shr rbx, 0xf
xor rbx, rax
movabs rax, 0x8000000000000000
or rbx, rax
mov rsi, qword [rdi]
mov rcx, qword [rdi + 8]
dec rsi
and rsi, rbx
mov r13d, 1
nop dword [rax]
mov r14, rsi
shl r14, 4
mov rax, qword [rcx + r14]
cmp rax, rbx
jne 0x14003bcd9
mov rax, qword [0x1400f6a68]
mov r8, qword [rcx + r14 + 8]
lea rcx, [0x1400f6a68]
lea rdx, [rbp + 0xe0]
call qword [rax + reloc.WS2_32.dll_getservbyport]
mov rcx, qword [rdi + 8]
test al, al
jne 0x14003bcf3
mov rax, qword [rcx + r14]
test rax, rax
je 0x14003baa0
add rsi, r13
mov rax, qword [rdi]
dec rax
and rsi, rax
inc r13
jmp 0x14003bca0
test rcx, rcx
je 0x14003baa0
cmp qword [rcx + r14 + 8], 0
je 0x14003baa0
mov rcx, rdi
lea rdx, [0x1400f6a68]
lea r8, [rbp + 0xe0]
call fcn.140044be0
jmp 0x14003baa0
mov rsi, qword [rbp - 0x28]
test rsi, rsi
je 0x14003befe
mov eax, dword [rsi + 0x10]
cmp eax, dword [rsi + 0x14]
je 0x14003befe
mov rax, qword [rsi]
mov qword [rbp + 0x360], rax
test rax, rax
je 0x14003befe
mov rcx, qword [rsi + 8]
mov eax, dword [rsi + 0x2c]
mov qword [rbp + 0x358], rax
xor r13d, r13d
lea rsi, [rbp - 0x30]
lea r15, [rbp + 0xe0]
mov qword [rbp + 0x340], rcx
jmp 0x14003bd90
inc r13
cmp r13, qword [rbp + 0x360]
je 0x14003befe
mov rax, r13
shl rax, 4
cmp qword [rcx + rax], 0
jns 0x14003bd80
add rax, rcx
mov rax, qword [rax + 8]
mov rcx, qword [rbp + 0x358]
mov rdi, qword [rax + rcx]
mov r14, qword [rax + rcx + 8]
mov rbx, qword [rax]
test rbx, rbx
je 0x14003be1a
mov r12, qword [rax + 8]
nop word cs:[rax + rax]
mov qword [rbp + 0xe0], 0
movzx eax, byte [r12]
test al, al
js 0x14003bdf0
inc r12
dec rbx
jmp 0x14003be0b
mov rcx, rbx
mov rdx, r12
mov r8, r15
call fcn.140012270
mov rcx, qword [rbp + 0xe0]
add r12, rcx
sub rbx, rcx
mov rcx, rsi
mov edx, eax
call fcn.14004d2b0
test rbx, rbx
jne 0x14003bdd0
mov edx, 1
mov rcx, rsi
call fcn.14004d120
mov rcx, qword [rbp - 0x30]
mov rdx, qword [rcx + 8]
mov rax, rdx
inc rax
je 0x14003c5df
mov rcx, qword [rcx + 0x10]
mov word [rcx + rdx*2], 0x3d
mov rdx, qword [rbp - 0x30]
mov qword [rdx + 8], rax
mov qword [rdx + 0x10], rcx
jmp 0x14003be70
inc r14
dec rdi
mov rcx, rsi
mov edx, eax
call fcn.14004d2b0
test rdi, rdi
je 0x14003beb0
mov qword [rbp + 0xe0], 0
movzx eax, byte [r14]
test al, al
jns 0x14003be60
mov rcx, rdi
mov rdx, r14
mov r8, r15
call fcn.140012270
mov rcx, qword [rbp + 0xe0]
add r14, rcx
sub rdi, rcx
jmp 0x14003be66
mov edx, 1
mov rcx, rsi
call fcn.14004d120
mov rcx, qword [rbp - 0x30]
mov rdx, qword [rcx + 8]
mov rax, rdx
inc rax
je 0x14003c602
mov rcx, qword [rcx + 0x10]
mov word [rcx + rdx*2], 0
mov rdx, qword [rbp - 0x30]
mov qword [rdx + 8], rax
mov qword [rdx + 0x10], rcx
inc r13
cmp r13, qword [rbp + 0x360]
mov rcx, qword [rbp + 0x340]
jne 0x14003bd90
lea rcx, [rbp - 0x30]
mov edx, 2
call fcn.14004d120
mov rax, qword [rbp - 0x30]
mov r9, qword [rax + 8]
lea rbx, [r9 + 2]
cmp r9, 0xfffffffffffffffe
jae 0x14003c6fa
mov rdi, qword [rax + 0x10]
lea rsi, [rdi + r9*2]
mov qword [rsp + 0x20], 4
lea rdx, str.copy
lea r8, [0x1400c5d60]
mov ecx, 4
mov r9, rsi
call fcn.14006c670
mov dword [rsi], 0
mov rax, qword [rbp - 0x30]
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rdi
movups xmm0, xmmword [0x1400da870]
movaps xmmword [rbp + 0x210], xmm0
movups xmm0, xmmword [0x1400da880]
movaps xmmword [rbp + 0x220], xmm0
movups xmm0, xmmword [0x1400da890]
movaps xmmword [rbp + 0x230], xmm0
movups xmm0, xmmword [0x1400da8a0]
movaps xmmword [rbp + 0x240], xmm0
movups xmm0, xmmword [0x1400da8b0]
movaps xmmword [rbp + 0x250], xmm0
movups xmm0, xmmword [0x1400da8c0]
movaps xmmword [rbp + 0x260], xmm0
mov rax, qword [0x1400da8d0]
mov qword [rbp + 0x270], rax
lea rax, [rbp + 0x260]
mov dword [rbp + 0x210], WSAGetLastError
mov dword [rbp + 0x34c], 0xffffffff
mov dword [rbp + 0x350], 0xffffffff
mov dword [rbp + 0x354], 0xffffffff
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x34c]
mov qword [rsp + 0x20], rax
lea r9, str.stdin
lea rcx, [rbp + 0x2a0]
mov r8d, 5
mov edx, 0xfffffff6
call fcn.14003c9d0
lea rax, [rbp + 0x268]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x350]
mov qword [rsp + 0x20], rax
lea r9, str.stdout
lea rcx, [rbp + 0x2c0]
mov r8d, 6
mov edx, 0xfffffff5
call fcn.14003c9d0
lea rax, [rbp + 0x270]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x354]
mov qword [rsp + 0x20], rax
lea r9, str.stderr
lea rcx, [rbp + 0x2e0]
mov r8d, 6
mov edx, 0xfffffff4
call fcn.14003c9d0
mov r8, qword [rbp + 0x410]
mov rsi, qword [rbp + 0x408]
mov rax, qword [rbp + 0x260]
inc rax
cmp rax, 1
ja 0x14003c0ca
mov rax, qword [rbp + 0x268]
inc rax
cmp rax, 1
ja 0x14003c0ca
mov rax, qword [rbp + 0x270]
inc rax
cmp rax, 2
jb 0x14003c0d4
mov dword [rbp + 0x24c], 0x100
xorps xmm0, xmm0
movaps xmmword [rbp + 0x310], xmm0
mov qword [rbp + 0x320], 0
lea rcx, [rbp + 0xe0]
mov rdx, rsi
call fcn.14004ef70
lea rcx, [rbp - 0x30]
mov rdx, qword [rbp + 0x280]
mov r8, qword [rbp + 0x288]
call fcn.14004ef70
mov eax, dword [rbp + 0x400]
and eax, 0x10
shl eax, 0x17
or eax, 0x400
mov rcx, qword [rbp - 0x30]
cmp rcx, 0xffffffffffffffff
lea rdx, [rbp - 0x20]
cmovne rdx, rcx
mov rcx, qword [rbp + 0xe0]
cmp rcx, 0xffffffffffffffff
lea r8, [rbp + 0xf0]
cmovne r8, rcx
test rsi, rsi
cmove r8, rsi
lea rcx, [rbp + 0x310]
mov qword [rsp + 0x48], rcx
lea rcx, [rbp + 0x210]
mov qword [rsp + 0x40], rcx
mov qword [rsp + 0x38], r8
mov qword [rsp + 0x30], rdi
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], 1
xor ecx, ecx
xor r8d, r8d
xor r9d, r9d
call sub.KERNEL32.dll_CreateProcessW
mov esi, eax
mov rdi, qword [rbp - 0x30]
cmp rdi, 0xffffffffffffffff
je 0x14003c1aa
call fcn.14009218c
mov ebx, dword [rax]
mov rcx, rdi
call fcn.140097584
call fcn.14009218c
mov dword [rax], ebx
test esi, esi
je 0x14003c6c0
mov eax, dword [rbp + 0x400]
test al, 2
jne 0x14003c254
mov esi, dword [rbp + 0x34c]
cmp esi, 3
jl 0x14003c254
mov eax, dword [0x1400ff570]
test eax, eax
js 0x14003c22b
nop dword [rax]
mov eax, dword [0x1400ff570]
test eax, eax
js 0x14003c22b
mov eax, 1
lock xadd dword [0x1400ff570], eax
test eax, eax
je 0x14003c204
lock dec dword [0x1400ff570]
jmp 0x14003c1e0
xor ecx, ecx
call fcn.140087e88
mov qword [0x1400f0d80], rax
lea rax, [0x1400f0d80]
mov qword [0x1400ff558], rax
lock add dword [0x1400ff570], 0x7fffffff
mov rax, qword [0x1400ff558]
test rax, rax
je 0x14003c248
mov rcx, qword [rax]
test rcx, rcx
je 0x14003c248
call fcn.140092584
cmp esi, eax
je 0x14003c254
lea rcx, [rbp + 0x2a0]
call fcn.14002eb50
mov eax, dword [rbp + 0x400]
test al, 4
jne 0x14003c2f7
mov esi, dword [rbp + 0x350]
cmp esi, 3
jl 0x14003c2f7
mov eax, dword [0x1400ff550]
test eax, eax
js 0x14003c2ce
nop dword [rax + rax]
mov eax, dword [0x1400ff550]
test eax, eax
js 0x14003c2ce
mov eax, 1
lock xadd dword [0x1400ff550], eax
test eax, eax
je 0x14003c2a4
lock dec dword [0x1400ff550]
jmp 0x14003c280
mov ecx, 1
call fcn.140087e88
mov qword [0x1400f0d68], rax
lea rax, [0x1400f0d68]
mov qword [0x1400ff538], rax
lock add dword [0x1400ff550], 0x7fffffff
mov rax, qword [0x1400ff538]
test rax, rax
je 0x14003c2eb
mov rcx, qword [rax]
test rcx, rcx
je 0x14003c2eb
call fcn.140092584
cmp esi, eax
je 0x14003c2f7
lea rcx, [rbp + 0x2c0]
call fcn.14002eb50
mov eax, dword [rbp + 0x400]
test al, 8
jne 0x14003c397
mov esi, dword [rbp + 0x354]
cmp esi, 3
jl 0x14003c397
mov eax, dword [0x1400ff590]
test eax, eax
js 0x14003c36e
nop
mov eax, dword [0x1400ff590]
test eax, eax
js 0x14003c36e
mov eax, 1
lock xadd dword [0x1400ff590], eax
test eax, eax
je 0x14003c344
lock dec dword [0x1400ff590]
jmp 0x14003c320
mov ecx, 2
call fcn.140087e88
mov qword [0x1400f0d98], rax
lea rax, [0x1400f0d98]
mov qword [0x1400ff578], rax
lock add dword [0x1400ff590], 0x7fffffff
mov rax, qword [0x1400ff578]
test rax, rax
je 0x14003c38b
mov rcx, qword [rax]
test rcx, rcx
je 0x14003c38b
call fcn.140092584
cmp esi, eax
je 0x14003c397
lea rcx, [rbp + 0x2e0]
call fcn.14002eb50
mov rcx, qword [rbp + 0x318]
call sub.KERNEL32.dll_CloseHandle
mov eax, dword [rbp + 0x400]
test al, 0x40
jne 0x14003c3f9
lea rcx, [0x1400f1de0]
call fcn.140067130
mov rsi, rax
lea rax, [0x1400c5d10]
mov qword [rsi], rax
mov qword [rsi + 8], 0
movups xmm0, xmmword [0x1400c5d48]
movups xmmword [rsi + 0x10], xmm0
mov qword [rsi + 0x20], 0xffffffffffffffff
mov eax, dword [rbp + 0x320]
mov rcx, qword [rbp + 0x310]
mov dword [rsi + 0x10], eax
mov qword [rsi + 0x20], rcx
mov al, 1
jmp 0x14003c444
mov rcx, qword [rbp + 0x310]
call sub.KERNEL32.dll_CloseHandle
lea rcx, [0x1400f1de0]
call fcn.140067130
mov rsi, rax
lea rax, [0x1400c5d10]
mov qword [rsi], rax
mov qword [rsi + 8], 0
movups xmm0, xmmword [0x1400c5d48]
movups xmmword [rsi + 0x10], xmm0
mov qword [rsi + 0x20], 0xffffffffffffffff
mov eax, dword [rbp + 0x320]
mov dword [rsi + 0x10], eax
xor eax, eax
mov byte [rsi + 0x18], al
mov rdi, qword [rbp + 0xe0]
cmp rdi, 0xffffffffffffffff
je 0x14003c46a
call fcn.14009218c
mov ebx, dword [rax]
mov rcx, rdi
call fcn.140097584
call fcn.14009218c
mov dword [rax], ebx
lea rcx, [rbp + 0x2a0]
call fcn.14002e970
lea rcx, [rbp + 0x2c0]
call fcn.14002e970
lea rcx, [rbp + 0x2e0]
call fcn.14002e970
mov rcx, qword [rbp + 0x338]
call fcn.14002e970
mov rcx, qword [rbp + 0x330]
call fcn.14002e970
mov rcx, qword [rbp + 0x3f0]
call fcn.14002e970
mov rax, rsi
movaps xmm6, xmmword [rbp + 0x370]
add rsp, 0x408
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
mov qword [rsp + 0x20], r14
lea rdx, str.stdprocess.d
mov ecx, reloc.WS2_32.dll_listen
mov r8d, 0xf19
mov r9, rax
call fcn.1400461a0
mov qword [rsp + 0x20], r14
lea rdx, str.stdprocess.d
mov ecx, reloc.WS2_32.dll_listen
mov r8d, 0xf1b
call fcn.1400461a0
mov qword [rsp + 0x20], 0
lea rdx, str.stdprocess.d
mov ecx, reloc.WS2_32.dll_listen
mov r8d, 0xf0f
call fcn.1400461a0
mov qword [rsp + 0x20], r14
lea rdx, str.stdprocess.d
mov ecx, reloc.WS2_32.dll_listen
mov r8d, 0xf1d
mov r9, rax
call fcn.1400461a0
mov qword [rsp + 0x20], rax
lea rdx, str.stdprocess.d
mov ecx, reloc.WS2_32.dll_listen
mov r8d, 0xeab
mov r9, r15
call fcn.1400461a0
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rbx
jmp 0x14003c57f
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r14
lea rdx, str.stdprocess.d
mov ecx, reloc.WS2_32.dll_listen
mov r8d, 0xeac
mov r9, r15
call fcn.1400a7550
mov qword [rsp + 0x20], rax
lea rdx, str.std_array.d
mov ecx, reloc.WS2_32.dll_inet_addr
mov r8d, 0xe6e
mov r9, 0xffffffffffffffff
call fcn.1400461a0
mov qword [rsp + 0x20], rax
lea rdx, str.std_array.d
mov ecx, reloc.WS2_32.dll_inet_addr
mov r8d, 0xe6e
mov r9, 0xffffffffffffffff
call fcn.1400461a0
mov qword [rsp + 0x20], rax
lea rdx, str.std_array.d
mov ecx, reloc.WS2_32.dll_inet_addr
mov r8d, 0xe6e
mov r9, 0xffffffffffffffff
call fcn.1400461a0
mov qword [rsp + 0x20], rax
lea rdx, str.std_array.d
mov ecx, reloc.WS2_32.dll_inet_addr
mov r8d, 0xe6e
mov r9, 0xffffffffffffffff
call fcn.1400461a0
lea rcx, [0x1400f8040]
call fcn.140067130
lea rcx, [0x1400d6690]
mov qword [rax], rcx
mov qword [rax + 8], 0
movups xmm0, xmmword [0x1400d6de8]
movups xmmword [rax + 0x10], xmm0
movups xmm0, xmmword [0x1400d6e18]
movups xmmword [rax + 0x40], xmm0
movups xmm0, xmmword [0x1400d6df8]
movups xmmword [rax + 0x20], xmm0
movups xmm0, xmmword [0x1400d6e08]
movups xmmword [rax + 0x30], xmm0
mov rcx, qword [0x1400d6e28]
mov qword [rax + 0x50], rcx
mov qword [rax + 0x10], reloc.WS2_32.dll_ntohs
lea rcx, str.Range_violation
mov qword [rax + 0x18], rcx
mov qword [rax + 0x48], 0
mov qword [rax + 0x20], reloc.WS2_32.dll_setsockopt
lea rcx, str.Command_line_is_empty
mov qword [rax + 0x28], rcx
mov qword [rax + 0x30], 0x511
mov qword [rax + 0x58], 0
mov rcx, rax
call fcn.140046240
mov byte [rsp + 0x20], 0x22
lea rdx, str.Failed_to_spawn_process__
mov ecx, 0x19
mov r8, qword [rbp + 0x290]
mov r9, qword [rbp + 0x298]
call fcn.14004e9a0
mov r8d, 0x54e
mov rcx, rax
call fcn.14003cb90
mov rcx, rax
call fcn.140046240
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], rbx
lea rdx, str.std_array.d
mov ecx, reloc.WS2_32.dll_inet_addr
mov r8d, 0xea6
call fcn.1400a7550
lea rax, str.Failed_to_retrieve_environment_variables.
mov qword [rsp + 0x20], rax
lea rdx, str.stdprocess.d
mov ecx, reloc.WS2_32.dll_listen
mov r8d, 0x19e
mov r9d, 0x29
call fcn.140020470
int3