Function at 0x140062220
Capabilities:
Query environment variable

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x168
mov rax, qword [0x140177090]
xor rax, rsp
mov qword [rsp + 0x150], rax
mov rax, qword [rdx]
mov qword [rsp + 0x38], rcx
mov ecx, 1
mov rbx, r9
mov r13, r8
mov qword [rsp + 0x30], rdx
mov dword [rsp + 0x20], ecx
test rax, rax
je 0x140062270
cmp byte [rax], 0
je 0x140062270
mov esi, ecx
jmp 0x140062272
xor esi, esi
xor edi, edi
xor ebp, ebp
xor r15b, r15b
xor r14b, r14b
xor r12d, r12d
test rbx, rbx
jne 0x140062314
lea rcx, [0x14017afe8]
call qword [sym.imp.MSVCR120.dll_getenv]
mov byte [rsp + 0x40], dil
test rax, rax
je 0x140062408
lea rdx, [rsp + 0x40]
mov r8d, 0x104
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_ExpandEnvironmentStringsA]
cmp byte [rsp + 0x40], dil
je 0x140062408
lea rcx, [rsp + 0x40]
call qword [case.0x140054204.0]
mov rdi, rax
test rax, rax
je 0x140062408
lea r9, str._netrc
lea r8, [0x140178d9c]
lea rcx, [0x14017942c]
mov rdx, rax
call fcn.1400577a0
mov rcx, rdi
mov rbx, rax
call qword [case.0x140054204.2]
test rbx, rbx
jne 0x14006230f
or eax, 0xffffffff
jmp 0x1400625ea
mov edi, 1
lea rdx, [0x140178ddc]
mov rcx, rbx
call qword [sym.imp.MSVCR120.dll_fopen]
mov qword [rsp + 0x28], rax
test edi, edi
je 0x140062340
test rbx, rbx
je 0x140062340
mov rcx, rbx
call qword [case.0x140054204.2]
mov rax, qword [rsp + 0x28]
test rax, rax
je 0x1400625e6
mov rdi, qword [rsp + 0x38]
movsxd rsi, esi
lea rcx, [rsp + 0x40]
mov r8, rax
mov edx, 0x100
call qword [sym.imp.MSVCR120.dll_fgets]
test rax, rax
je 0x1400625db
cmp byte [rsp + 0x40], 0
lea rbx, [rsp + 0x40]
je 0x140062412
nop dword [rax]
movsx edx, byte [rbx]
lea rcx, [0x140178e54]
call qword [sym.imp.MSVCR120.dll_strchr]
test rax, rax
je 0x140062412
inc rbx
cmp byte [rbx], 0
jne 0x140062380
xor ebx, ebx
nop
test rbx, rbx
je 0x1400625c9
mov rax, qword [rsp + 0x30]
mov rcx, qword [rax]
test rcx, rcx
je 0x1400623cd
cmp byte [rcx], 0
je 0x1400623cd
mov rax, qword [r13]
test rax, rax
je 0x1400623cd
cmp byte [rax], 0
jne 0x1400625db
mov edx, ebp
test ebp, ebp
je 0x14006252b
dec edx
je 0x140062507
dec edx
jne 0x140062544
test r15b, r15b
je 0x140062481
test rsi, rsi
je 0x140062459
mov rdx, rbx
call fcn.1400627e0
xor r15b, r15b
mov r12d, eax
jmp 0x140062544
mov eax, 1
jmp 0x1400625ea
cmp byte [rbx], 0
je 0x14006239d
movzx eax, byte [rbx + 1]
lea rdi, [rbx + 1]
test al, al
je 0x1400623a0
nop word [rax + rax]
lea rcx, [0x140178e54]
movsx edx, al
call qword [sym.imp.MSVCR120.dll_strchr]
test rax, rax
jne 0x1400625b5
movzx eax, byte [rdi + 1]
inc rdi
test al, al
jne 0x140062430
jmp 0x1400623a0
call qword [case.0x140054204.2]
mov rcx, rbx
call qword [case.0x140054204.0]
mov rcx, qword [rsp + 0x30]
mov qword [rcx], rax
test rax, rax
je 0x1400625d3
xor r15b, r15b
jmp 0x140062544
test r14b, r14b
je 0x1400624b8
test r12d, r12d
jne 0x140062490
test rsi, rsi
jne 0x1400624b0
mov rcx, qword [r13]
call qword [case.0x140054204.2]
mov rcx, rbx
call qword [case.0x140054204.0]
mov qword [r13], rax
test rax, rax
je 0x1400625d3
xor r14b, r14b
jmp 0x140062544
lea rcx, str.login
mov rdx, rbx
call fcn.1400627e0
test eax, eax
je 0x1400624d0
mov r15b, 1
jmp 0x140062544
lea rcx, str.password
mov rdx, rbx
call fcn.1400627e0
test eax, eax
je 0x1400624e8
mov r14b, 1
jmp 0x140062544
lea rcx, str.machine
mov rdx, rbx
call fcn.1400627e0
test eax, eax
je 0x140062544
mov eax, 1
xor r12d, r12d
mov ebp, eax
jmp 0x140062544
mov rcx, qword [rsp + 0x38]
mov rdx, rbx
call fcn.1400627e0
test eax, eax
je 0x140062527
mov ebp, 2
mov dword [rsp + 0x20], 0
jmp 0x140062544
xor ebp, ebp
jmp 0x140062544
lea rcx, [0x14017b098]
mov rdx, rbx
call fcn.1400627e0
test eax, eax
mov eax, 1
cmovne ebp, eax
cmp byte [rdi], 0
mov rbx, rdi
je 0x140062572
nop dword [rax]
movsx edx, byte [rbx]
lea rcx, [0x140178eb4]
call qword [sym.imp.MSVCR120.dll_strchr]
test rax, rax
je 0x140062572
inc rbx
cmp byte [rbx], 0
jne 0x140062550
jmp 0x14006239d
cmp byte [rbx], 0
je 0x14006239d
movzx eax, byte [rbx + 1]
lea rdi, [rbx + 1]
test al, al
je 0x1400623a0
nop dword [rax + rax]
lea rcx, [0x140178eb4]
movsx edx, al
call qword [sym.imp.MSVCR120.dll_strchr]
test rax, rax
jne 0x1400625b5
movzx eax, byte [rdi + 1]
inc rdi
test al, al
jne 0x140062590
jmp 0x1400623a0
cmp byte [rdi], 0
je 0x1400623a0
mov byte [rdi], 0
inc rdi
jmp 0x1400623a0
mov rax, qword [rsp + 0x28]
jmp 0x140062351
mov dword [rsp + 0x20], 0xffffffff
mov rcx, qword [rsp + 0x28]
call qword [sym.imp.MSVCR120.dll_fclose]
mov eax, dword [rsp + 0x20]
mov rcx, qword [rsp + 0x150]
xor rcx, rsp
call fcn.140129b50
add rsp, 0x168
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret