Function at 0x1017d48
Capabilities:
Query environment variable

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x43c
mov eax, dword [0x102e77c]
push ebx
mov dword [ebp - 4], eax
push edi
lea eax, [ebp - 0x438]
push eax
lea eax, [ebp - 0x428]
xor ebx, ebx
push eax
push dword [ebp + 8]
mov dword [ebp - 0x428], ebx
mov dword [ebp - 0x424], ebx
mov dword [ebp - 0x420], ebx
mov dword [ebp - 0x41c], ebx
mov dword [ebp - 0x438], ebx
call fcn.01017504
test eax, eax
mov edi, 0x1004f98
je 0x1017dab
mov dword [ebp - 0x418], 0x3a9b
jmp 0x101800a
push esi
lea eax, [ebp - 0x424]
push eax
push 7
push 0x1005264
push 0x10051f8
push reloc.WS2_32.dll_bind
call fcn.010176cd
cmp eax, ebx
mov dword [ebp - 0x418], eax
jne 0x101812e
mov esi, dword [ebp - 0x424]
cmp word [esi], bx
mov dword [ebp - 0x434], esi
je 0x1017fe1
push 0x12d
push edi
call fcn.0100c9d4
push esi
push 0x10051cc
call fcn.0100cb2d
push esi
push 0x1005188
push 0x1005150
lea eax, [ebp - 0x414]
push 0x104
push eax
call fcn.01017d1a
mov ebx, eax
add esp, 0x1c
test ebx, ebx
jl 0x101804f
lea eax, [ebp - 0x420]
push eax
push 2
push 0x1005134
lea eax, [ebp - 0x414]
push eax
push reloc.WS2_32.dll_bind
call fcn.010176cd
test eax, eax
mov dword [ebp - 0x418], eax
jne 0x1018078
mov ebx, 0x104
push ebx
lea eax, [ebp - 0x20c]
push eax
push dword [ebp - 0x420]
call dword [sym.imp.KERNEL32.dll_ExpandEnvironmentStringsW]
cmp eax, ebx
ja 0x1018091
test eax, eax
je 0x10180c0
lea eax, [ebp - 0x20c]
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
test eax, eax
mov dword [ebp - 0x41c], eax
je 0x10180a2
push 0x1005120
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
test eax, eax
je 0x10180ce
push esi
lea ecx, [ebp - 0x430]
push ecx
lea ecx, [ebp - 0x43c]
push ecx
push eax
call fcn.0101758d
test eax, eax
mov dword [ebp - 0x418], eax
jne 0x10180fb
push 0x164
push edi
call fcn.0100c9d4
push esi
push dword [ebp - 0x430]
push 0x10050fc
call fcn.0100cb2d
and dword [ebp - 0x42c], 0
add esp, 0xc
cmp dword [ebp - 0x430], 0
jbe 0x1017fb2
mov esi, dword [ebp - 0x43c]
add esi, 0xc
push 0x168
push edi
call fcn.0100c9d4
push dword [esi + 0xc]
lea ebx, [esi - 0xc]
push dword [esi]
push dword [esi - 4]
push dword [esi + 8]
push dword [esi + 4]
push dword [esi - 8]
push dword [ebx]
push 0x10050c8
call fcn.0100cb2d
add esp, 0x20
push ebx
push dword [ebp - 0x438]
push dword [ebp - 0x428]
push dword [ebp + 8]
call fcn.01017642
test eax, eax
je 0x1017f91
push dword [esi + 0x10]
xor ebx, ebx
push 0x4fed
push ebx
call fcn.0100dcc2
push eax
call fcn.0100d552
add esp, 0x10
push dword [ebx + 0x102e400]
push dword [ebp - 0x434]
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
je 0x101811a
add ebx, 4
cmp ebx, 8
jb 0x1017f6f
inc dword [ebp - 0x42c]
mov eax, dword [ebp - 0x42c]
add esi, 0x20
cmp eax, dword [ebp - 0x430]
jb 0x1017f0f
mov esi, dword [ebp - 0x434]
mov ax, word [esi]
inc esi
inc esi
test ax, ax
jne 0x1017fb2
push dword [ebp - 0x41c]
mov dword [ebp - 0x434], esi
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
and dword [ebp - 0x41c], 0
cmp word [esi], 0
jne 0x1017dec
xor ebx, ebx
cmp dword [ebp - 0x424], ebx
pop esi
je 0x1017ff6
push dword [ebp - 0x424]
call sub.MFC42u.DLL_operatordelete
pop ecx
cmp dword [ebp - 0x420], ebx
je 0x101800a
push dword [ebp - 0x420]
call sub.MFC42u.DLL_operatordelete
pop ecx
cmp dword [ebp - 0x428], ebx
je 0x101801e
push dword [ebp - 0x428]
call sub.MFC42u.DLL_operatordelete
pop ecx
push 0x1a8
push edi
call fcn.0100c9d4
push dword [ebp - 0x418]
push 0x10050a8
call fcn.0100cb2d
mov eax, dword [ebp - 0x418]
pop ecx
pop ecx
mov ecx, dword [ebp - 4]
pop edi
pop ebx
call fcn.0102222e
leave
ret 4
push 0x135
push edi
call fcn.0100c9d4
push esi
push 0x1005078
call fcn.0100cb2d
pop ecx
and ebx, 0xffff
pop ecx
mov dword [ebp - 0x418], ebx
jmp 0x1018124
push 0x13e
push edi
call fcn.0100c9d4
push esi
push dword [ebp - 0x418]
push 0x100503c
jmp 0x10180f1
mov dword [ebp - 0x418], 0x2747
xor ebx, ebx
jmp 0x101813a
push 0x150
push edi
call fcn.0100c9d4
lea eax, [ebp - 0x20c]
push eax
push 0x1005020
call fcn.0100cb4a
pop ecx
pop ecx
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x418], eax
jmp 0x1018124
call dword [sym.imp.KERNEL32.dll_GetLastError]
push 0x159
push edi
mov dword [ebp - 0x418], eax
call fcn.0100c9d4
push esi
push dword [ebp - 0x418]
push 0x1004fec
call fcn.0100cb4a
add esp, 0xc
jmp 0x1018124
push 0x160
push edi
call fcn.0100c9d4
push dword [ebp - 0x418]
push 0x1004fd0
call fcn.0100cb2d
pop ecx
pop ecx
jmp 0x1018124
mov dword [ebp - 0x418], 0x3a9b
xor ebx, ebx
cmp dword [ebp - 0x418], ebx
je 0x1018154
cmp dword [ebp - 0x418], 0x3a9b
je 0x1018154
push dword [ebp - 0x418]
push 0x4fee
push ebx
call fcn.0100dcc2
push eax
call fcn.0100d552
add esp, 0x10
cmp dword [ebp - 0x41c], ebx
je 0x1017fe1
push dword [ebp - 0x41c]
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
jmp 0x1017fe1