Function at 0x42d177
Capabilities:
Query environment variable

Disassembly:
push 0x48
mov eax, 0x44d823
call fcn.0043056f
mov edi, dword [ebp + 8]
xor ecx, ecx
mov ebx, dword [ebp + 0xc]
xor eax, eax
push 7
pop esi
mov dword [ebp - 0x14], esi
mov dword [ebp - 0x18], ecx
mov word [ebp - 0x28], ax
mov dword [ebp - 4], ecx
mov dword [ebp - 0x2c], esi
mov dword [ebp - 0x30], ecx
mov word [ebp - 0x40], ax
push 0x405f7c
push edi
mov byte [ebp - 4], 1
mov byte [ebp - 0x41], cl
call fcn.0043032a
pop ecx
pop ecx
test eax, eax
jne 0x42d1d8
push 0x1a
pop esi
push 0x405f98
call fcn.0040f51e
pop ecx
push eax
push 0x405f98
jmp 0x42d2a2
push 0x405fa8
push edi
call fcn.0043032a
pop ecx
pop ecx
test eax, eax
jne 0x42d1f0
push 0x23
jmp 0x42d27a
push 0x40121c
push edi
call fcn.0043032a
pop ecx
pop ecx
test eax, eax
jne 0x42d21a
push 0x2b
pop esi
push 0x405fd0
call fcn.0040f51e
pop ecx
push eax
push 0x405fd0
jmp 0x42d2a2
push 0x406004
push edi
call fcn.0043032a
pop ecx
pop ecx
test eax, eax
jne 0x42d22f
push 0x1c
jmp 0x42d27a
push 0x40602c
push edi
call fcn.0043032a
pop ecx
pop ecx
test eax, eax
jne 0x42d256
push 0x26
pop esi
push 0x406054
call fcn.0040f51e
pop ecx
push eax
push 0x406054
jmp 0x42d2a2
push 0x406070
push edi
call fcn.0043032a
pop ecx
pop ecx
test eax, eax
je 0x42d2e1
push 0x40608c
push edi
call fcn.0043032a
pop ecx
pop ecx
test eax, eax
jne 0x42d27d
push 0x25
pop esi
jmp 0x42d2e1
push 0x4060a8
push edi
call fcn.0043032a
pop ecx
pop ecx
test eax, eax
jne 0x42d2ac
push 0x24
pop esi
push 0x4060c4
call fcn.0040f51e
pop ecx
push eax
push 0x4060c4
lea ecx, [ebp - 0x28]
call fcn.0040f3cc
jmp 0x42d2e1
push 0x404ce8
push edi
call fcn.0043032a
pop ecx
pop ecx
test eax, eax
jne 0x42d3f2
push 0x24
pop esi
push 0x4060c4
call fcn.0040f51e
pop ecx
push eax
push 0x4060c4
lea ecx, [ebp - 0x28]
call fcn.0040f3cc
mov byte [ebp - 0x41], 1
lea eax, [ebp - 0x40]
push eax
push esi
call fcn.0042f26e
pop ecx
pop ecx
test al, al
je 0x42d317
cmp byte [ebp - 0x41], 0
jne 0x42d3bc
lea eax, [ebp - 0x40]
cmp ebx, eax
je 0x42d3ee
push 0xffffffffffffffff
push 0
push eax
mov ecx, ebx
call fcn.0040f338
jmp 0x42d3ee
cmp dword [ebp - 0x18], 0
jbe 0x42d3f2
cmp dword [ebp - 0x14], 8
mov eax, dword [ebp - 0x28]
jae 0x42d32d
lea eax, [ebp - 0x28]
push 0
push 0
push eax
call dword [sym.imp.KERNEL32.dll_GetEnvironmentVariableW]
mov esi, eax
test esi, esi
je 0x42d3f2
xor eax, eax
lea ecx, [ebp - 0x50]
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x48], eax
lea eax, [ebp - 0x54]
push eax
push esi
call fcn.00411e16
cmp dword [ebp - 0x14], 8
mov eax, dword [ebp - 0x28]
mov byte [ebp - 4], 2
jae 0x42d36d
lea eax, [ebp - 0x28]
push esi
push dword [ebp - 0x50]
push eax
call dword [sym.imp.KERNEL32.dll_GetEnvironmentVariableW]
push dword [ebp - 0x50]
call fcn.0040f51e
pop ecx
push eax
push dword [ebp - 0x50]
lea ecx, [ebp - 0x40]
call fcn.0040f3cc
cmp byte [ebp - 0x41], 0
jne 0x42d3b0
lea eax, [ebp - 0x40]
cmp ebx, eax
je 0x42d3a6
push 0xffffffffffffffff
push 0
push eax
mov ecx, ebx
call fcn.0040f338
lea ecx, [ebp - 0x50]
call fcn.00411f1c
jmp 0x42d3ee
lea ecx, [ebp - 0x50]
mov byte [ebp - 4], 1
call fcn.00411f1c
push 0x404ce8
push edi
call fcn.0043032a
pop ecx
pop ecx
test eax, eax
jne 0x42d3f2
cmp dword [ebp - 0x2c], 8
mov eax, dword [ebp - 0x40]
jae 0x42d3d9
lea eax, [ebp - 0x40]
xor ecx, ecx
push ecx
push ecx
push ecx
push ebx
push eax
call fcn.0042e4bf
push ebx
call fcn.0042bfc7
add esp, 0x18
mov bl, 1
jmp 0x42d3f4
xor bl, bl
push 0
push 1
lea ecx, [ebp - 0x40]
call fcn.0040f2f2
push 0
push 1
lea ecx, [ebp - 0x28]
call fcn.0040f2f2
mov al, bl
call fcn.0043051e
ret