Function at 0x180040360
Capabilities:
Query environment variable

Disassembly:
mov dword [rsp + 0x20], r9d
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
mov eax, 0x1e58
call fcn.180012ac0
sub rsp, rax
mov rax, qword [0x180135070]
xor rax, rsp
mov qword [rsp + 0x1e40], rax
lea rax, [rsp + 0x50]
mov qword [rsp + 0xf80], rax
mov qword [rsp + 0xf28], 0
mov qword [rsp + 0xf78], 0
mov dword [rsp + 0xf70], 0
mov dword [rsp + 0xf20], 0
mov rax, qword [rsp + 0x1e60]
cmp dword [rax + 0xae0], 0
je 0x1800403f5
mov rax, qword [rsp + 0x1e60]
add rax, 0xb08
mov rcx, rax
call fcn.1800305e0
cmp dword [rsp + 0x1e78], 0
je 0x18004042f
lea rcx, str.RLM_ROAM
call fcn.180010c90
mov qword [rsp + 0x38], rax
cmp qword [rsp + 0x38], 0
je 0x18004042f
mov rax, qword [rsp + 0x38]
movsx eax, byte [rax]
test eax, eax
je 0x18004042f
mov dword [rsp + 0xf70], 1
mov rax, qword [rsp + 0x1e60]
cmp dword [rax + 0x1a4], 0
jne 0x18004044d
mov rcx, qword [rsp + 0x1e60]
call fcn.18003d6a0
cmp qword [rsp + 0x1e70], 0
je 0x180040467
mov rax, qword [rsp + 0x1e70]
movsx eax, byte [rax]
test eax, eax
jne 0x18004047d
lea rdx, [0x18013ce14]
lea rcx, [rsp + 0xf00]
call fcn.1800f9f10
jmp 0x180040498
mov r8d, 0xa
mov rdx, qword [rsp + 0x1e70]
lea rcx, [rsp + 0xf00]
call fcn.180023830
lea rcx, [rsp + 0xf00]
call fcn.1800236d0
cmp qword [rsp + 0x1e68], 0
jne 0x1800404c6
lea rdx, [0x18015976c]
lea rcx, [rsp + 0xf38]
call fcn.1800f9f10
jmp 0x1800404e1
mov r8d, 0x28
mov rdx, qword [rsp + 0x1e68]
lea rcx, [rsp + 0xf38]
call fcn.180023830
lea rcx, [rsp + 0xf38]
call fcn.1800236d0
mov r8d, 0xe88
xor edx, edx
mov rcx, qword [rsp + 0xf80]
call fcn.18000abd0
mov rax, qword [rsp + 0xf80]
mov rcx, qword [rsp + 0x1e60]
mov qword [rax + 0x10], rcx
mov edx, select
mov rcx, qword [rsp + 0x1e60]
call fcn.180024600
mov qword [rsp + 0xee0], rax
cmp qword [rsp + 0xee0], 0
je 0x180040dc9
mov rax, qword [rsp + 0x1e60]
cmp qword [rax + 0x38], 0
jne 0x18004055c
mov rcx, qword [rsp + 0x1e60]
call fcn.18003cdc0
cmp dword [rsp + 0x1e78], 0
je 0x1800405aa
cmp dword [rsp + 0xf70], 0
je 0x1800405aa
mov rax, qword [rsp + 0xf78]
mov qword [rsp + 0x20], rax
mov r9, qword [rsp + 0xee0]
lea r8, [rsp + 0xf00]
lea rdx, [rsp + 0xf38]
mov rcx, qword [rsp + 0x1e60]
call fcn.180027310
mov qword [rsp + 0xf78], rax
mov rax, qword [rsp + 0x1e60]
mov rax, qword [rax + 0xb10]
mov qword [rsp + 0xf30], rax
jmp 0x1800405d7
mov rax, qword [rsp + 0xf30]
mov rax, qword [rax + 8]
mov qword [rsp + 0xf30], rax
cmp qword [rsp + 0xf30], 0
je 0x180040733
mov rax, qword [rsp + 0xf30]
cmp dword [rax + 0x10], 1
jne 0x18004072e
mov rax, qword [rsp + 0xf30]
mov rax, qword [rax + 0x70]
mov qword [rsp + 0x1e20], rax
jmp 0x180040622
mov rax, qword [rsp + 0x1e20]
mov rax, qword [rax + 8]
mov qword [rsp + 0x1e20], rax
cmp qword [rsp + 0x1e20], 0
je 0x18004072e
mov rax, qword [rsp + 0x1e20]
cmp dword [rax + 0x6c], 2
je 0x18004064f
mov rax, qword [rsp + 0x1e20]
cmp dword [rax + 0x6c], 3
je 0x18004064f
jmp 0x18004060e
movsx eax, byte [rsp + 0xf38]
test eax, eax
je 0x18004067d
mov rax, qword [rsp + 0x1e20]
add rax, 0x1b
mov rdx, rax
lea rcx, [rsp + 0xf38]
call fcn.180005964
test eax, eax
je 0x18004067d
jmp 0x18004060e
movsx eax, byte [rsp + 0xf00]
test eax, eax
je 0x1800406ae
mov rax, qword [rsp + 0x1e20]
add rax, 0x44
mov rdx, rax
lea rcx, [rsp + 0xf00]
call fcn.18003c7f0
test eax, eax
jne 0x1800406ae
jmp 0x18004060e
lea rax, [rsp + 0xf90]
mov qword [rsp + 0x20], rax
mov r9d, 1
lea r8, [rsp + 0xf00]
mov rdx, qword [rsp + 0x1e20]
mov rcx, qword [rsp + 0x1e60]
call fcn.18001eb20
test eax, eax
jne 0x1800406e7
jmp 0x18004060e
mov dword [rsp + 0x28], 0
mov rax, qword [rsp + 0xf30]
mov qword [rsp + 0x20], rax
mov r9, qword [rsp + 0xf78]
mov r8, qword [rsp + 0xee0]
mov rdx, qword [rsp + 0x1e20]
mov rcx, qword [rsp + 0x1e60]
call fcn.18003ffd0
mov qword [rsp + 0xf78], rax
jmp 0x18004060e
jmp 0x1800405c3
cmp dword [rsp + 0x1e78], 0
je 0x180040d54
mov rax, qword [rsp + 0x1e60]
mov rax, qword [rax + 0xb10]
mov qword [rsp + 0xf30], rax
jmp 0x18004076e
mov rax, qword [rsp + 0xf30]
mov rax, qword [rax + 8]
mov qword [rsp + 0xf30], rax
cmp qword [rsp + 0xf30], 0
je 0x180040d54
cmp dword [rsp + 0xf20], 0
je 0x180040797
mov rax, qword [rsp + 0xf30]
cmp dword [rax + 0x10], 5
jne 0x180040797
jmp 0x18004075a
mov rax, qword [rsp + 0xf30]
cmp dword [rax + 0x78], 6
jne 0x1800407a7
jmp 0x18004075a
mov rax, qword [rsp + 0xf30]
cmp dword [rax + 0x18], 0
je 0x180040d4f
mov dword [rsp + 0x1e30], 0
mov rax, qword [rsp + 0x1e60]
mov rax, qword [rax + 0xb10]
mov qword [rsp + 0x1e28], rax
jmp 0x1800407f1
mov rax, qword [rsp + 0x1e28]
mov rax, qword [rax + 8]
mov qword [rsp + 0x1e28], rax
cmp qword [rsp + 0x1e28], 0
je 0x180040899
mov rax, qword [rsp + 0xf30]
cmp qword [rsp + 0x1e28], rax
je 0x180040899
mov rax, qword [rsp + 0x1e28]
cmp qword [rax + 0x30], 0
je 0x180040888
mov rax, qword [rsp + 0xf30]
cmp qword [rax + 0x30], 0
je 0x180040888
mov rax, qword [rsp + 0xf30]
mov rdx, qword [rax + 0x30]
mov rax, qword [rsp + 0x1e28]
mov rcx, qword [rax + 0x30]
call fcn.18000e810
test eax, eax
jne 0x180040888
mov rax, qword [rsp + 0x1e28]
mov rcx, qword [rsp + 0xf30]
mov ecx, dword [rcx + 0x18]
cmp dword [rax + 0x18], ecx
jne 0x180040888
mov rax, qword [rsp + 0x1e28]
cmp dword [rax + 0x7c], 0
je 0x180040888
mov dword [rsp + 0x1e30], 1
jmp 0x180040899
cmp dword [rsp + 0x1e30], 0
je 0x180040894
jmp 0x180040899
jmp 0x1800407dd
cmp dword [rsp + 0x1e30], 0
je 0x1800408a8
jmp 0x18004075a
mov rax, qword [rsp + 0xf30]
mov dword [rax + 0x7c], 0
mov rax, qword [rsp + 0xf80]
mov qword [rsp + 0xf10], rax
mov rax, qword [rsp + 0xf30]
cmp dword [rax + 0x78], 1
jne 0x180040947
mov dword [rsp + 0x1e34], 1
mov rax, qword [rsp + 0x1e60]
mov rax, qword [rax + 0x1358]
mov qword [rsp + 0x1e38], rax
jmp 0x18004090d
mov rax, qword [rsp + 0x1e38]
mov rax, qword [rax + 8]
mov qword [rsp + 0x1e38], rax
cmp qword [rsp + 0x1e38], 0
je 0x180040942
mov rax, qword [rsp + 0x1e38]
mov rax, qword [rax + 0x18]
cmp qword [rsp + 0xf30], rax
jne 0x180040940
mov rax, qword [rsp + 0x1e38]
mov qword [rsp + 0xf10], rax
jmp 0x180040942
jmp 0x1800408f9
jmp 0x180040a02
mov dword [rsp + 0x1e34], 0
mov rax, qword [rsp + 0x1e60]
cmp dword [rax + 0xaf4], 0
je 0x180040971
mov rax, qword [rsp + 0xf30]
cmp dword [rax + 0x14], 0
jne 0x1800409ee
mov rax, qword [rsp + 0x1e60]
movsx eax, byte [rax + 0x13c4]
test eax, eax
je 0x1800409b0
mov rax, qword [rsp + 0xf30]
cmp dword [rax + 0x78], 4
jne 0x1800409b0
mov rdx, qword [rsp + 0xf30]
mov rcx, qword [rsp + 0x1e60]
call fcn.18002ae80
mov dword [rsp + 0xef0], eax
jmp 0x1800409ec
mov rax, qword [rsp + 0x1e60]
add rax, 0x1f0
mov rcx, qword [rsp + 0x1e60]
mov r9d, dword [rcx + 0x1354]
mov r8, rax
mov rdx, qword [rsp + 0xf30]
mov rcx, qword [rsp + 0x1e60]
call fcn.180029bc0
mov dword [rsp + 0xef0], eax
jmp 0x1800409f3
jmp 0x18004075a
cmp dword [rsp + 0xef0], 0
je 0x180040a02
jmp 0x18004075a
mov dword [rsp + 0xf20], 1
mov rax, qword [rsp + 0xf30]
mov dword [rax + 0x7c], 1
mov rax, qword [rsp + 0xf30]
mov rax, qword [rax + 0xa8]
mov qword [rsp + 0xef8], rax
mov rdx, qword [rsp + 0xf30]
mov rcx, qword [rsp + 0x1e60]
call fcn.18001d8e0
mov qword [rsp + 0x20], rax
mov r9d, 1
lea r8, [rsp + 0xf00]
lea rdx, [rsp + 0xf38]
mov rcx, qword [rsp + 0xef8]
call fcn.18002e710
test eax, eax
je 0x180040aa1
mov rax, qword [rsp + 0x1e60]
movsx eax, byte [rax + 0x13c4]
test eax, eax
je 0x180040a9c
mov rdx, qword [rsp + 0xf30]
mov rcx, qword [rsp + 0x1e60]
call fcn.18002b160
jmp 0x18004075a
mov rax, qword [rsp + 0xef8]
mov rcx, qword [rsp + 0x1e60]
mov ecx, dword [rcx + 0x1d8]
mov dword [rax + 0xc], ecx
mov rdx, qword [rsp + 0xf10]
mov rcx, qword [rsp + 0xef8]
call fcn.18002b660
mov rax, qword [rsp + 0xef8]
mov rax, qword [rax + 0x18]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0xef8]
cmp dword [rax], 0
jne 0x180040cf5
mov rax, qword [rsp + 0x30]
movzx eax, byte [rax]
cmp eax, 0x70
jne 0x180040cf5
lea r8, [rsp + 0xf28]
mov rdx, qword [rsp + 0x30]
mov rcx, qword [rsp + 0xef8]
call fcn.18002e870
cmp qword [rsp + 0xf28], 0
jne 0x180040b54
mov rax, qword [rsp + 0x1e60]
movsx eax, byte [rax + 0x13c4]
test eax, eax
je 0x180040b4f
mov rdx, qword [rsp + 0xf30]
mov rcx, qword [rsp + 0x1e60]
call fcn.18002b160
jmp 0x18004075a
mov rax, qword [rsp + 0xf28]
mov qword [rsp + 0xf68], rax
mov rax, qword [rsp + 0xf68]
mov qword [rsp + 0xee8], rax
jmp 0x180040b96
mov rax, qword [rsp + 0xf68]
mov qword [rsp + 0xee8], rax
mov rax, qword [rsp + 0xf18]
mov qword [rsp + 0xf68], rax
cmp qword [rsp + 0xf68], 0
je 0x180040c5a
mov rax, qword [rsp + 0xf68]
mov rax, qword [rax + 8]
mov qword [rsp + 0xf18], rax
mov rax, qword [rsp + 0xf68]
cmp dword [rax + 0x2f4], 0
je 0x180040c41
mov rcx, qword [rsp + 0xf68]
call fcn.180024680
mov rax, qword [rsp + 0xf28]
cmp qword [rsp + 0xf68], rax
jne 0x180040c1b
mov rax, qword [rsp + 0xf18]
mov qword [rsp + 0xf28], rax
mov rax, qword [rsp + 0xf28]
mov qword [rsp + 0xee8], rax
mov rax, qword [rsp + 0xee8]
mov qword [rsp + 0xf68], rax
jmp 0x180040c3f
mov rax, qword [rsp + 0xee8]
mov qword [rsp + 0xf68], rax
mov rax, qword [rsp + 0xee8]
mov rcx, qword [rsp + 0xf18]
mov qword [rax + 8], rcx
jmp 0x180040c55
mov rax, qword [rsp + 0xf68]
mov rcx, qword [rsp + 0xf30]
mov qword [rax + 0x10], rcx
jmp 0x180040b76
mov rax, qword [rsp + 0xee0]
cmp qword [rax], 0
jne 0x180040ca1
mov rax, qword [rsp + 0xee0]
mov rcx, qword [rsp + 0xf28]
mov qword [rax + 8], rcx
mov rax, qword [rsp + 0xee0]
mov rcx, qword [rsp + 0xf28]
mov qword [rax], rcx
mov rax, qword [rsp + 0xf28]
mov qword [rsp + 0xf78], rax
jmp 0x180040cd0
mov rax, qword [rsp + 0xf78]
mov rcx, qword [rsp + 0xf28]
mov qword [rax + 8], rcx
cmp qword [rsp + 0xf28], 0
je 0x180040cd0
mov rax, qword [rsp + 0xf28]
mov qword [rsp + 0xf78], rax
mov rax, qword [rsp + 0xf78]
cmp qword [rax + 8], 0
je 0x180040cf5
mov rax, qword [rsp + 0xf78]
mov rax, qword [rax + 8]
mov qword [rsp + 0xf78], rax
jmp 0x180040cd0
mov rax, qword [rsp + 0x1e60]
movsx eax, byte [rax + 0x13c4]
test eax, eax
je 0x180040d1f
mov rdx, qword [rsp + 0xf30]
mov rcx, qword [rsp + 0x1e60]
call fcn.18002b160
jmp 0x180040d4f
cmp dword [rsp + 0x1e34], 0
jne 0x180040d4f
mov rax, qword [rsp + 0x1e60]
cmp dword [rax + 0x1d4], 0
jne 0x180040d4f
mov rdx, qword [rsp + 0xf30]
mov rcx, qword [rsp + 0x1e60]
call fcn.18002b1d0
jmp 0x18004075a
cmp dword [rsp + 0x1e78], 0
je 0x180040da2
cmp dword [rsp + 0xf70], 0
jne 0x180040da2
mov rax, qword [rsp + 0xf78]
mov qword [rsp + 0x20], rax
mov r9, qword [rsp + 0xee0]
lea r8, [rsp + 0xf00]
lea rdx, [rsp + 0xf38]
mov rcx, qword [rsp + 0x1e60]
call fcn.180027310
mov qword [rsp + 0xf78], rax
mov rax, qword [rsp + 0xee0]
cmp qword [rax], 0
jne 0x180040dc9
mov rcx, qword [rsp + 0xee0]
call fcn.180024680
mov qword [rsp + 0xee0], 0
mov rax, qword [rsp + 0x1e60]
cmp dword [rax + 0xae0], 0
je 0x180040df0
mov rax, qword [rsp + 0x1e60]
add rax, 0xb08
mov rcx, rax
call fcn.180030600
mov rax, qword [rsp + 0xee0]
mov rcx, qword [rsp + 0x1e40]
xor rcx, rsp
call fcn.180005860
add rsp, 0x1e58
ret