Function at 0x1400d3040
Capabilities:
Query environment variable

Disassembly:
push r12
mov eax, 0x10030
push rbp
push rdi
push rsi
push rbx
call fcn.1401d92a0
sub rsp, rax
mov rdi, qword [0x14022c040]
mov rax, qword [rdi]
mov qword [rsp + 0x10028], rax
xor eax, eax
mov rbx, rcx
test rcx, rcx
je 0x1400d3190
cmp byte [rcx], 0
je 0x1400d3190
call sub.msvcrt.dll_strlen
mov edx, 2
lea ebp, [rax + 1]
movsxd r12, ebp
mov rcx, r12
call fcn.1400eb230
mov rsi, rax
test rax, rax
je 0x1400d3199
mov rdx, rbx
mov r9d, 0xffffffff
mov r8, r12
mov rcx, rax
call fcn.1400d25c0
lea rbp, [rsp + 0x20]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_SetLastError]
mov r8d, 0x8000
mov rdx, rbp
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_GetEnvironmentVariableW]
mov ebx, eax
test eax, eax
je 0x1400d3168
lea r12d, [rbx + rbx*2 + 1]
mov rcx, rsi
call fcn.1400eaf30
movsxd rsi, r12d
mov edx, 1
mov rcx, rsi
call fcn.1400eb230
mov rbx, rax
test rax, rax
je 0x1400d31a7
mov r8, rsi
mov rdx, rbp
lea rsi, [0x1402569c0]
mov rcx, rax
call fcn.1400d2b10
movsxd rax, dword [0x140256bc0]
mov rcx, qword [rsi + rax*8]
call fcn.1400eaf30
movsxd rdx, dword [0x140256bc0]
lea eax, [rdx + 1]
mov qword [rsi + rdx*8], rbx
xor edx, edx
cmp eax, 0x40
cmovae eax, edx
mov dword [0x140256bc0], eax
mov rax, qword [rsp + 0x10028]
sub rax, qword [rdi]
jne 0x1400d3194
mov rax, rbx
add rsp, 0x10030
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
ret
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xcb
jne 0x1400d30dd
mov rcx, rsi
call fcn.1400eaf30
nop word cs:[rax + rax]
nop dword [rax]
xor ebx, ebx
jmp 0x1400d3147
call fcn.1401d96b0
mov edx, ebp
lea rcx, str.Out_of_memory___tried_to_allocate__u_wchar_ts_
call fcn.1400b6950
mov edx, r12d
lea rcx, str.Out_of_memory___tried_to_allocate__u_bytes_
call fcn.1400b6950
nop
nop word [rax + rax]
push r15
mov eax, 0x14b8
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
call fcn.1401d92a0
sub rsp, rax
mov rbp, qword [0x14022c040]
mov rbx, qword [rbp]
mov qword [rsp + 0x14a8], rbx
xor ebx, ebx
lea rsi, [rsp + 0x4a0]
mov r8, rcx
mov r9, rdx
mov rcx, rsi
mov edx, 0x1000
call sub.libintl_8.dll_libintl_vsnprintf
lea rcx, str.GIT_ASK_YESNO
call fcn.1400d3040
mov rdx, rax
test rax, rax
je 0x1400d3290
mov rax, rbx
lea rdi, [rsp + 0x28]
mov ecx, 0xf
xor r9d, r9d
rep stosq qword [rdi], rax
lea rbx, [rsp + 0x20]
mov rax, qword [0x14022c410]
mov r8, rsi
mov rcx, rbx
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x38], rax
call fcn.1400945c0
mov rcx, rbx
call fcn.1400821c0
test eax, eax
sete al
movzx eax, al
mov rdx, qword [rsp + 0x14a8]
sub rdx, qword [rbp]
jne 0x1400d345d
add rsp, 0x14b8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
xor ecx, ecx
mov rbx, qword [fcn.1401de8b0]
call rbx
mov rdi, qword [sym.imp.msvcrt.dll__fileno_1]
mov rcx, rax
call rdi
mov ecx, eax
call fcn.1400da6f0
test eax, eax
je 0x1400d3410
mov ecx, 2
call rbx
mov rcx, rax
call rdi
mov ecx, eax
call fcn.1400da6f0
test eax, eax
je 0x1400d3410
mov r12, qword [str._________AA__A__________________]
mov r13, qword [sym.imp.msvcrt.dll__strnicmp_1]
lea r14, str._s__y_n_
lea rdi, [rsp + 0xa0]
lea r15, [0x1402056dc]
nop word cs:[rax + rax]
mov ecx, 2
call rbx
mov r8, rsi
mov rdx, r14
mov rcx, rax
call sub.libintl_8.dll_libintl_fprintf
xor ecx, ecx
call rbx
mov edx, 0x400
mov rcx, rdi
mov r8, rax
call sub.msvcrt.dll_fgets
test rax, rax
je 0x1400d3410
mov rcx, rdi
call sub.msvcrt.dll_strlen
cmp rax, 1
jbe 0x1400d3430
cmp byte [rsp + rax + 0x9e], 0xd
je 0x1400d3440
cmp byte [rsp + rax + 0x9f], 0xa
jne 0x1400d336d
jmp 0x1400d3450
cmp eax, 0xffffffff
je 0x1400d3377
call sub.msvcrt.dll_getchar
cmp eax, 0xa
jne 0x1400d3368
movzx edx, byte [rsp + 0xa0]
mov eax, edx
movzx ecx, dl
or eax, 0x20
test byte [r12 + rcx], 4
movzx eax, al
cmovne edx, eax
cmp edx, 0x79
jne 0x1400d33a1
cmp byte [rsp + 0xa1], 0
je 0x1400d3420
mov r8d, 0x400
mov rdx, r15
mov rcx, rdi
call r13
test eax, eax
je 0x1400d3420
movzx edx, byte [rsp + 0xa0]
mov eax, edx
movzx ecx, dl
or eax, 0x20
test byte [r12 + rcx], 4
movzx eax, al
cmovne edx, eax
cmp edx, 0x6e
jne 0x1400d33de
cmp byte [rsp + 0xa1], 0
je 0x1400d3410
mov r8d, 0x400
lea rdx, [0x1402056e0]
mov rcx, rdi
call r13
test eax, eax
je 0x1400d3410
mov ecx, 2
call rbx
lea rdx, str.Sorry__I_did_not_understand_your_answer._Please_type_y_or_n_n
mov rcx, rax
call sub.libintl_8.dll_libintl_fprintf
jmp 0x1400d3300
xor eax, eax
jmp 0x1400d3261
mov eax, 1
jmp 0x1400d3261
test rax, rax
je 0x1400d336d
jmp 0x1400d3352
mov byte [rsp + rax + 0x9e], 0
jmp 0x1400d3377
mov byte [rsp + rax + 0x9f], 0
jmp 0x1400d3377
call fcn.1401d96b0
nop
nop word cs:[rax + rax]
nop