Function at 0x1800c7710
Capabilities:
Query environment variable

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0xf]
sub rsp, 0xa8
mov ebx, dword [rbp + 0x77]
mov r10, rdx
lea eax, [rbx - 0xa]
mov dword [rbp - 0x45], eax
cmp ebx, eax
jbe 0x1800c7a56
mov r14, qword [rbp - 0x39]
lea eax, [rbx - 0x89]
mov r15, qword [rbp - 0x39]
lea r8, [0x180000000]
mov r12, qword [rbp - 0x39]
xor ebx, ebx
movzx esi, byte [rbp + 0x77]
mov edi, dword [rbp + 0x77]
movzx r13d, byte [rbp + 0x77]
mov edx, dword [rbp - 0x45]
mov dword [rbp - 0x49], eax
mov ecx, dword [rbp - 0x49]
mov eax, dword [rbp + 0x77]
cmp ecx, 0x1f
ja case.default.0x1800c77a3
mov eax, dword [rbp - 0x49]
movzx eax, byte [r8 + rax + 0xc7b98]
mov ecx, dword [r8 + rax*4 + 0xc7b6c]
add rcx, r8
jmp rcx
mov qword [rsp + 0x28], rbx
mov r9d, 0x10b
xor r8d, r8d
mov qword [rsp + 0x20], rbx
xor edx, edx
mov rcx, r10
call fcn.180015c80
mov r10, qword [rbp + 0x5f]
lea r8, [0x180000000]
mov edx, dword [rbp - 0x45]
jmp case.0x1800c77a3.10
mov rcx, qword [r10]
mov rdx, qword [rcx + 0x2d8]
mov r12d, dword [rcx + 0x30c]
mov eax, dword [rcx + 0x304]
movsxd r15, dword [rcx + 0x330]
imul r12d, dword [rdx + 0x4a4]
imul eax, dword [rdx + 0x4a8]
add r15, qword [rcx + 0x348]
add r12, rax
add r12, qword [rdx + 0x4b0]
mov edx, dword [rbp - 0x45]
xor sil, sil
jmp case.0x1800c77a3.10
mov rax, qword [r10]
cmp dword [rax], 0x7f2bb701
jne 0x1800c7a73
mov eax, dword [rax + 0x28]
lea r8, [rbp - 0x11]
mov dword [rbp - 0x31], eax
xor r9d, r9d
lea rax, [rbp - 0x31]
xor edx, edx
mov ecx, 0xb3
mov qword [rsp + 0x20], rax
call fcn.180081490
test eax, eax
jne 0x1800c7a6e
mov rcx, qword [rbp + 0x57]
mov rax, 0xffffffffffffffff
mov dword [rbp - 0x21], ebx
mov dword [rbp - 0x41], ebx
inc rax
cmp byte [rcx + rax], bl
jne 0x1800c7868
mov qword [rbp - 0x39], rax
lea r9, [rbp - 0x19]
mov rax, qword [rbp + 0x6f]
lea r8, [rbp - 0x39]
lea rdx, [rbp - 0x41]
mov eax, dword [rax]
mov dword [rbp - 0x19], eax
mov rax, qword [rbp + 0x7f]
mov eax, dword [rax]
mov dword [rbp - 0x29], eax
mov rax, qword [rbp + 0x5f]
mov rax, qword [rax]
mov qword [rbp - 9], rax
lea rax, [rbp - 0x29]
mov qword [rsp + 0x48], rax
mov rax, qword [rbp + 0x67]
mov qword [rsp + 0x40], rax
lea rax, [rbp - 9]
mov qword [rsp + 0x38], rax
mov rax, qword [rbp - 0x11]
mov qword [rsp + 0x30], rax
lea rax, [rbp - 0x21]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0x8a
call fcn.1800ca5f0
mov r10, qword [rbp + 0x5f]
lea r8, [0x180000000]
mov edx, dword [rbp - 0x45]
mov rdi, rax
jmp case.0x1800c77a3.10
test r10, r10
je 0x1800c7a7c
mov rcx, qword [rbp + 0x7f]
test rcx, rcx
je 0x1800c7a7c
movzx eax, byte [r10]
mov r14, r10
test al, al
je 0x1800c7937
nop
movsx edx, al
call sub.VCRUNTIME140.dll_strchr
test rax, rax
jne 0x1800c7933
movzx eax, byte [r14 + 1]
inc r14
test al, al
je 0x1800c7a7c
mov rcx, qword [rbp + 0x7f]
jmp 0x1800c7910
mov rcx, qword [rbp + 0x7f]
movzx eax, byte [r14]
test al, al
je 0x1800c7a7c
movsx edx, al
call sub.VCRUNTIME140.dll_strchr
test rax, rax
je 0x1800c7966
movzx eax, byte [r14 + 1]
inc r14
test al, al
je 0x1800c7a7c
mov rcx, qword [rbp + 0x7f]
jmp 0x1800c7943
cmp byte [r14], bl
je 0x1800c7a7c
mov r10, qword [rbp + 0x5f]
lea r8, [0x180000000]
mov edx, dword [rbp - 0x45]
jmp case.0x1800c77a3.10
lea rcx, str.__nach__0_erwartet
call qword [sym.imp.api_ms_win_crt_environment_l1_1_0.dll_getenv]
test rax, rax
je 0x1800c79c1
mov rax, qword [rbp + 0x5f]
lea rdx, [rbp - 0x39]
mov r9d, 0x117
xor r8d, r8d
xor ecx, ecx
mov rax, qword [rax]
mov qword [rbp - 0x39], rax
call fcn.18004f170
mov rax, qword [rbp + 0x5f]
mov rcx, qword [rax]
mov rax, qword [rcx + 0x10]
call qword [rax + 0x70]
mov rax, qword [rbp + 0x5f]
mov rcx, qword [rax]
mov rax, qword [rcx + 0x10]
call qword [rax + reloc.SHELL32.dll_ILFindLastID]
mov r10, qword [rbp + 0x5f]
mov rax, qword [r10]
cmp qword [rax + 0x48], rbx
lea rcx, [rax + 0x48]
je 0x1800c7a08
mov qword [rsp + 0x28], rbx
mov r9d, 0x10b
xor r8d, r8d
mov qword [rsp + 0x20], rbx
xor edx, edx
call fcn.180015c80
mov r10, qword [rbp + 0x5f]
mov rax, qword [r10]
mov qword [rax + 0x48], rbx
mov rax, qword [r10]
mov edx, dword [rbp - 0x45]
lea r8, [0x180000000]
mov dword [rax], ebx
jmp case.0x1800c77a3.10
mov rcx, qword [r10]
test rcx, rcx
je 0x1800c7a56
mov edx, dword [rcx]
lea eax, [rdx - 0x7f2bb708]
cmp eax, 2
jbe 0x1800c7a81
lea eax, [rdx - 0x7f2bb76d]
cmp eax, 2
ja 0x1800c7a56
mov edx, dword [rbp - 0x45]
jmp case.0x1800c77a3.10
xor r13b, r13b
mov ecx, dword [rbp - 0x49]
mov eax, dword [rbp + 0x77]
dec eax
dec ecx
mov dword [rbp + 0x77], eax
mov dword [rbp - 0x49], ecx
cmp eax, edx
ja 0x1800c7783
mov rax, qword [rbp - 0x41]
add rsp, 0xa8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
mov dword [rbp - 0x41], eax
jmp 0x1800c7a56
mov dword [rbp - 0x41], 0x7f2bb701
jmp 0x1800c7a56
mov rax, rbx
jmp 0x1800c7a5a
mov qword [rsp + 0x38], rbx
lea rax, [rbp - 0x39]
mov qword [rsp + 0x30], rbx
xor r9d, r9d
mov qword [rbp - 0x39], rcx
xor r8d, r8d
mov dword [rsp + 0x28], 0x31
xor edx, edx
xor ecx, ecx
mov qword [rsp + 0x20], rax
call fcn.1800965e0
jmp 0x1800c7a56
mov qword [rsp + 0x28], rbx
lea rcx, [rbp - 0x11]
mov r9d, 0x10b
mov qword [rsp + 0x20], rbx
xor r8d, r8d
xor edx, edx
call fcn.180015c80
mov dword [rbp - 0x41], edi
jmp 0x1800c7a56
mov rax, qword [r10]
mov r8d, ebx
mov r9d, ebx
cmp dword [rax + 0x314], ebx
jle 0x1800c7b5b
nop word [rax + rax]
mov eax, 0xef
cmp eax, 0xef
je 0x1800c7b2b
cmp eax, 0x1579
jne 0x1800c7b40
movzx ecx, r8b
movzx edx, r13b
and dl, sil
shr sil, 2
shr dl, cl
mov byte [r12], dl
mov rcx, qword [r10]
movsxd rdx, dword [rcx + 0x310]
add r12, rdx
add r8d, 0xfffffffe
jmp 0x1800c7b40
test sil, sil
jne 0x1800c7b40
movzx r13d, byte [r15]
mov sil, 0xc0
inc r15
mov r8d, 6
add eax, 0x148a
cmp eax, 0x2914
jbe 0x1800c7af5
mov rax, qword [r10]
inc r9d
cmp r9d, dword [rax + 0x314]
jl 0x1800c7af0
mov dword [rbp - 0x41], ebx
jmp 0x1800c7a56
mov rax, r14
jmp 0x1800c7a5a