Function at 0x6556f0
Capabilities:
Query environment variable

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x62c
mov eax, dword [0x906648]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 0xc]
push ebx
push esi
mov esi, dword [ebp + 8]
xor ebx, ebx
push edi
push 0x208
mov dword [ebp - 0x624], eax
lea eax, [ebp - 0x20c]
push ebx
push eax
mov dword [ebp - 0x628], ebx
call sub.VCRUNTIME140.dll_memset
push 0x410
lea eax, [ebp - 0x61c]
push ebx
push eax
call sub.VCRUNTIME140.dll_memset
mov eax, dword [ebp - 0x624]
xor ecx, ecx
add esp, 0x18
mov dword [ebp - 0x620], ecx
xor edi, edi
mov dword [eax], ecx
test esi, esi
je 0x6558a7
nop dword [eax + eax]
movzx eax, word [esi]
test ax, ax
je 0x6558a7
cmp eax, 0x25
je 0x6557d4
push 0x25
push esi
call fcn.004f3990
mov ebx, eax
add esp, 8
test ebx, ebx
je 0x655787
xor eax, eax
mov word [ebx], ax
push 0x4f616d51
push esi
call fcn.004f3d00
add esp, 8
mov dword [ebp + edi*4 - 0x61c], eax
test eax, eax
je 0x6558ca
push eax
call fcn.004f36e0
mov ecx, dword [ebp - 0x620]
add esp, 4
add ecx, eax
inc edi
mov dword [ebp - 0x620], ecx
test ebx, ebx
je 0x6558a7
mov eax, 0x25
mov esi, ebx
mov word [ebx], ax
mov ebx, dword [ebp - 0x628]
add esi, 2
push 0x25
push esi
call fcn.004f3990
add esp, 8
mov dword [ebp - 0x62c], eax
test eax, eax
je 0x655913
xor ecx, ecx
mov word [eax], cx
lea eax, [ebp - 0x20c]
push 0x104
push eax
push esi
call dword [sym.imp.KERNEL32.dll_GetEnvironmentVariableW]
test eax, eax
jne 0x655857
test byte [0x9538a8], 4
je 0x65583b
push ebx
push esi
push str.GetEnvironmentVariable_failed_for__s.err__d._Now_impersonate_a_user_and_get_again
push 0x12b
push str.E:_workspace_AC_CC_Windows_TACC_MASTER_master_src_solidifier_mapl_mapl_policies.cpp
push str.mapl_get_localized_str_alloc
push dword [0x909fa4]
push 4
call fcn.004f21c0
add esp, 0x20
lea eax, [ebp - 0x20c]
push eax
push esi
call fcn.00655080
mov ebx, eax
add esp, 8
mov dword [ebp - 0x628], ebx
test ebx, ebx
jne 0x6558d4
lea eax, [ebp - 0x20c]
push 0x50616d51
push eax
call fcn.004f3d00
add esp, 8
mov dword [ebp + edi*4 - 0x61c], eax
test eax, eax
je 0x6558ca
push eax
call fcn.004f36e0
mov ecx, dword [ebp - 0x620]
add esp, 4
add ecx, eax
inc edi
mov eax, dword [ebp - 0x62c]
mov edx, 0x25
mov dword [ebp - 0x620], ecx
lea esi, [eax + 2]
mov word [eax], dx
test esi, esi
jne 0x655760
add ecx, 2
push 0x51616d51
push ecx
mov dword [ebp - 0x620], ecx
call fcn.004f3590
mov ecx, dword [ebp - 0x624]
add esp, 8
mov dword [ecx], eax
test eax, eax
jne 0x65591a
mov ebx, 0xc
jmp 0x655960
test byte [0x9538a8], 1
je 0x655903
push ebx
push esi
push str.getEnvVariableAsUser_failed_for__s.err__d.
push pe_nt_image_headers32
push str.E:_workspace_AC_CC_Windows_TACC_MASTER_master_src_solidifier_mapl_mapl_policies.cpp
push str.mapl_get_localized_str_alloc
push dword [0x909fa4]
push 1
call fcn.004f21c0
add esp, 0x20
mov eax, dword [ebp - 0x62c]
mov ecx, 0x25
mov word [eax], cx
jmp 0x655960
mov ebx, 0x16
jmp 0x655960
push dword [ebp - 0x620]
push eax
call fcn.004f3630
add esp, 8
xor esi, esi
test edi, edi
jle 0x65595e
nop
mov ebx, dword [ebp + esi*4 - 0x61c]
test ebx, ebx
je 0x655959
push ebx
call fcn.004f36b0
push eax
mov eax, dword [ebp - 0x624]
push ebx
push dword [ebp - 0x620]
push dword [eax]
call fcn.004f3920
add esp, 0x14
inc esi
cmp esi, edi
jl 0x655930
xor ebx, ebx
xor esi, esi
test edi, edi
jle 0x655989
nop word [eax + eax]
mov eax, dword [ebp + esi*4 - 0x61c]
test eax, eax
je 0x655984
push eax
call fcn.004f3570
add esp, 4
inc esi
cmp esi, edi
jl 0x655970
mov ecx, dword [ebp - 4]
mov eax, ebx
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.0063c972
mov esp, ebp
pop ebp
ret