Function at 0x6e1ab58c
Capabilities:
Query environment variable

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0x4c
mov eax, dword [ebp + 8]
mov dword [esp], eax
call fcn.6e16d01c
call sub.KERNEL32.dll_GetEnvironmentStringsW
mov dword [ebp - 0x34], eax
test eax, eax
je 0x6e1ab7c4
cmp word [eax], 0
je 0x6e1ab7b8
mov esi, eax
jmp 0x6e1ab5f3
mov eax, dword [ebp - 0x20]
lock dec dword [eax]
setne dl
test dl, dl
je 0x6e1ab7d4
mov eax, dword [ebp - 0x1c]
lock dec dword [eax]
setne dl
test dl, dl
je 0x6e1ab79c
mov eax, dword [ebp - 0x2c]
lea esi, [esi + eax*2 + 2]
cmp word [esi], 0
je 0x6e1ab7b8
mov dword [esp], esi
call sub.msvcrt.dll_wcslen
mov dword [ebp - 0x2c], eax
mov dword [esp + 4], 0x3d
mov dword [esp], esi
call sub.msvcrt.dll_wcschr
mov ebx, eax
test eax, eax
je 0x6e1ab5e2
mov edi, eax
sub edi, esi
sar edi, 1
mov dword [esp + 8], edi
mov dword [esp + 4], esi
lea edx, [ebp - 0x1c]
mov dword [esp], edx
call method.QString.fromWCharArray_wchar_t_const__int_
push eax
mov eax, dword [ebp - 0x2c]
dec eax
sub eax, edi
mov dword [esp + 8], eax
add ebx, 2
mov dword [esp + 4], ebx
lea eax, [ebp - 0x20]
mov dword [esp], eax
call method.QString.fromWCharArray_wchar_t_const__int_
push ebx
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x24], eax
lock inc dword [eax]
setne dl
mov edx, dword [ebp + 8]
mov ebx, dword [edx]
test ebx, ebx
je 0x6e1ab8a4
mov eax, dword [ebx]
dec eax
je 0x6e1ab6f6
mov dword [esp], 8
call fcn.6e25496c
mov edi, eax
mov edx, dword [ebp + 8]
mov eax, dword [edx]
mov ebx, edi
mov dword [edi], 0
mov eax, dword [eax + 4]
mov dword [edi + 4], eax
add eax, 8
lock inc dword [eax]
setne dl
mov eax, dword [edi + 4]
test byte [eax + 0x1c], 1
je 0x6e1ab854
lock inc dword [ebx]
setne al
mov edx, dword [ebp + 8]
mov eax, dword [edx]
test eax, eax
je 0x6e1ab6f1
lock dec dword [eax]
setne dl
test dl, dl
jne 0x6e1ab6f1
mov eax, dword [ebp + 8]
mov edi, dword [eax]
test edi, edi
je 0x6e1ab6f1
mov eax, dword [edi + 4]
add eax, 8
lock dec dword [eax]
setne dl
test dl, dl
jne 0x6e1ab6e9
mov dword [esp + 4], 0x6e23dc88
mov eax, dword [edi + 4]
mov dword [esp], eax
call method.QHashData.free_helper_void____QHashData::Node__
mov dword [esp], edi
call fcn.6e254744
mov edx, dword [ebp + 8]
mov dword [edx], ebx
mov eax, dword [ebx + 4]
mov edx, dword [eax + 8]
dec edx
je 0x6e1ab740
mov dword [esp + 0x10], 4
mov dword [esp + 0xc], 0x10
mov dword [esp + 8], 0x6e23dc88
mov dword [esp + 4], 0x6e23dd54
mov dword [esp], eax
call method.QHashData.detach_helper2_void____QHashData::Node__void___void____QHashData::Node___int__int_
mov edi, eax
mov eax, dword [ebx + 4]
add eax, 8
lock dec dword [eax]
setne dl
test dl, dl
je 0x6e1ab83c
mov dword [ebx + 4], edi
lea eax, [ebx + 4]
mov dword [ebp - 0x30], eax
lea edx, [ebp - 0x28]
mov dword [esp + 8], edx
lea eax, [ebp - 0x24]
mov dword [esp + 4], eax
mov edx, dword [ebp - 0x30]
mov dword [esp], edx
call fcn.6e25303c
mov edi, eax
mov eax, dword [eax]
cmp eax, dword [ebx + 4]
je 0x6e1ab7e4
lea edx, [ebp - 0x20]
mov dword [esp + 4], edx
add eax, 0xc
mov dword [esp], eax
call method.QString.operator_QString_const_
mov eax, dword [ebp - 0x24]
lock dec dword [eax]
setne dl
test dl, dl
jne 0x6e1ab5c0
mov eax, dword [ebp - 0x24]
mov dword [esp], eax
call method.QString.free_QString::Data_
jmp 0x6e1ab5c0
mov eax, dword [ebp - 0x1c]
mov dword [esp], eax
call method.QString.free_QString::Data_
mov eax, dword [ebp - 0x2c]
lea esi, [esi + eax*2 + 2]
cmp word [esi], 0
jne 0x6e1ab5f3
mov edx, dword [ebp - 0x34]
mov dword [esp], edx
call sub.KERNEL32.dll_FreeEnvironmentStringsW
push ecx
mov eax, dword [ebp + 8]
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
leave
ret 4
mov eax, dword [ebp - 0x20]
mov dword [esp], eax
call method.QString.free_QString::Data_
jmp 0x6e1ab5d1
mov edx, dword [eax + 0xc]
cmp edx, dword [eax + 0x18]
jge 0x6e1ab8d0
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x30], eax
mov dword [esp + 4], 4
mov eax, dword [ebx + 4]
mov dword [esp], eax
call method.QHashData.allocateNode_int_
test eax, eax
je 0x6e1ab825
mov edx, dword [ebp - 0x24]
mov dword [eax + 8], edx
lock inc dword [edx]
setne cl
mov edx, dword [ebp - 0x20]
mov dword [eax + 0xc], edx
lock inc dword [edx]
setne cl
mov edx, dword [ebp - 0x30]
mov dword [eax + 4], edx
mov edx, dword [edi]
mov dword [eax], edx
mov dword [edi], eax
mov eax, dword [ebx + 4]
inc dword [eax + 0xc]
jmp 0x6e1ab77a
mov dword [esp + 4], 0x6e23dc88
mov eax, dword [ebx + 4]
mov dword [esp], eax
call method.QHashData.free_helper_void____QHashData::Node__
jmp 0x6e1ab73d
mov edx, dword [eax + 8]
dec edx
je 0x6e1ab6a4
mov dword [esp + 0x10], 4
mov dword [esp + 0xc], 0x10
mov dword [esp + 8], 0x6e23dc88
mov dword [esp + 4], 0x6e23dd54
mov dword [esp], eax
call method.QHashData.detach_helper2_void____QHashData::Node__void___void____QHashData::Node___int__int_
mov dword [ebp - 0x30], eax
mov eax, dword [edi + 4]
add eax, 8
lock dec dword [eax]
setne dl
test dl, dl
je 0x6e1ab904
mov eax, dword [ebp - 0x30]
mov dword [edi + 4], eax
jmp 0x6e1ab6a4
mov dword [esp], 8
call fcn.6e25496c
mov ebx, eax
mov dword [eax], 0
mov dword [eax + 4], sym.QtCore4.dll_QHashData::shared_null
lock inc dword [0x6e271048]
setne al
jmp 0x6e1ab6a4
movsx edx, word [eax + 0x16]
inc edx
mov dword [esp + 4], edx
mov dword [esp], eax
call method.QHashData.rehash_int_
lea edx, [ebp - 0x28]
mov dword [esp + 8], edx
lea eax, [ebp - 0x24]
mov dword [esp + 4], eax
mov edx, dword [ebp - 0x30]
mov dword [esp], edx
call fcn.6e25303c
mov edi, eax
jmp 0x6e1ab7f0
mov dword [esp + 4], 0x6e23dc88
mov eax, dword [edi + 4]
mov dword [esp], eax
call method.QHashData.free_helper_void____QHashData::Node__
jmp 0x6e1ab899