Function at 0x1017edfd
Capabilities:
Query environment variable
Resolve function by parsing pe exports

Disassembly:
push 4
mov eax, 0x10272278
call fcn.102375fd
mov esi, ecx
mov dword [ebp - 0x10], esi
xor ebx, ebx
mov dword [esi + 0xc], ebx
mov dword [ebp - 4], ebx
mov dword [esi + 0x1c], ebx
mov byte [ebp - 4], 1
mov dword [esi + 0x34], ebx
mov byte [ebp - 4], 2
mov dword [esi + 0x78], ebx
mov dword [esi + 0x7c], ebx
mov byte [ebp - 4], 3
lea eax, [esi + 0x354]
mov dword [esi + 0x348], 0x10053af0
lea ecx, [esi + 0x360]
mov dword [esi + 0x34c], 0x10053ae0
mov dword [esi + 0x350], ebx
push 0x100000
push eax
mov dword [eax], 0x1004f9cc
mov dword [eax + 4], ebx
mov dword [eax + 8], ebx
call fcn.10171cae
mov byte [ebp - 4], 4
lea ecx, [esi + 0x3b8]
push 0x40000000
push 0x102a7604
call fcn.10171cae
mov byte [ebp - 4], 5
xor ecx, ecx
mov edi, dword [ebp + 8]
inc ecx
mov dword [esi], edi
call fcn.101e1746
mov ecx, dword [ebp + 0xc]
mov dword [esi + 0x3c], eax
mov dword [esi + 0x430], ebx
mov dword [esi + 0x434], ebx
mov dword [esi + 0x438], ebx
mov dword [esi + 0x43c], ebx
mov dword [esi + 0x440], ebx
mov dword [esi + 0x444], ebx
mov dword [esi + 0x448], ebx
mov dword [esi + 0x44c], ebx
mov dword [esi + 4], ebx
mov dword [esi + 8], ebx
mov dword [esi + 0x10], ebx
mov dword [esi + 0x14], ebx
mov dword [esi + 0x30], ebx
mov dword [esi + 0x38], ebx
mov eax, dword [ecx]
and dword [esi + 0x44], 0xfffffffc
mov dword [esi + 0x40], eax
mov edx, dword [ecx + 4]
shr edx, 4
xor edx, dword [esi + 0x44]
and edx, 4
xor edx, dword [esi + 0x44]
mov dword [esi + 0x44], edx
test byte [ecx + 4], 0x40
mov ecx, dword [0x1029b530]
jne 0x1017ef19
mov eax, dword [esi]
test eax, eax
je 0x1017ef10
cmp dword [eax + 8], 1
je 0x1017ef19
test cl, 0x20
jne 0x1017ef19
mov eax, ebx
jmp 0x1017ef1c
xor eax, eax
inc eax
and eax, 1
shr ecx, 1
shl eax, 3
and ecx, 0x10
and edx, 0xfffffc07
or eax, ecx
or eax, edx
mov edx, 0x400
mov dword [esi + 0x44], eax
test edi, edi
je 0x1017ef56
cmp dword [edi + 8], 1
jne 0x1017ef56
cmp dword [edi + 0xc], edx
jb 0x1017ef51
cmp dword [edi + 0xc], 0x405
jbe 0x1017ef56
xor ecx, ecx
inc ecx
jmp 0x1017ef58
mov ecx, ebx
shl ecx, 0xa
xor ecx, eax
and ecx, edx
mov edx, 0x10091cc4
xor ecx, eax
mov dword [esi + 0x44], ecx
mov ecx, dword [ebp + 0xc]
push 0x145
push 0xffffffffffffffff
mov eax, dword [ecx + 0x18]
mov dword [esi + 0x48], eax
mov eax, dword [ecx + 0x1c]
mov dword [esi + 0x4c], eax
mov eax, dword [ecx + 0x28]
mov dword [esi + 0x50], eax
mov eax, dword [ecx + 0x10]
mov dword [esi + 0x58], eax
mov eax, dword [ecx + 0x14]
mov dword [esi + 0x5c], eax
mov eax, dword [ecx + 4]
mov dword [esi + 0x60], eax
mov eax, dword [ecx + 8]
mov dword [esi + 0x64], eax
mov eax, dword [ecx + 0xc]
mov dword [esi + 0x68], eax
mov eax, dword [ecx + 0x20]
mov dword [esi + 0x70], eax
mov eax, dword [ecx + 0x24]
lea ecx, [esi + 0xac]
and dword [esi + 0x44], 0xffffefff
and dword [esi + 0x44], 0xfffff7ff
mov dword [esi + 0x74], eax
mov dword [esi + 0x80], ebx
mov dword [esi + 0x84], ebx
mov dword [esi + 0x88], ebx
mov dword [esi + 0x20], ebx
mov dword [esi + 0x24], ebx
mov dword [esi + 0x28], ebx
mov dword [esi + 0x2c], ebx
mov dword [esi + 0x8c], ebx
mov dword [esi + 0x90], ebx
mov dword [esi + 0x94], ebx
mov dword [esi + 0x98], 1
mov dword [esi + 0x9c], ebx
mov dword [esi + 0xa0], ebx
mov dword [esi + 0xa4], ebx
mov dword [esi + 0xa8], ebx
call fcn.102105bd
push 0x10091ce8
mov dword [esi + 0x338], ebx
mov dword [esi + 0x33c], ebx
mov dword [esi + 0x340], ebx
call dword [sym.imp.msvcrt.dll_getenv]
neg eax
mov dword [esi + 0x350], esi
mov dword [esi + 0x3ac], esi
sbb eax, eax
mov dword [esp], 0x10091cf8
neg eax
mov dword [esi + 0x344], eax
mov eax, dword [esi]
mov dword [esi + 0x3a8], eax
mov dword [esi + 0x358], eax
mov dword [esi + 0x35c], esi
mov dword [esi + 0x394], 0x80
mov dword [esi + 0x398], 3
call dword [sym.imp.msvcrt.dll_getenv]
pop ecx
test eax, eax
je 0x1017f097
push eax
call dword [sym.imp.msvcrt.dll_atol]
pop ecx
mov dword [esi + 0x390], eax
mov ecx, dword [esi]
mov dword [esi + 0x414], ebx
test ecx, ecx
je 0x1017f0c2
xor eax, eax
inc eax
cmp dword [ecx + 8], eax
jne 0x1017f0c2
test byte [ecx + 0x94e], 8
jne 0x1017f0c2
mov dword [esi + 0x410], eax
mov byte [esi + 0x418], al
jmp 0x1017f0ce
mov dword [esi + 0x410], ebx
mov byte [esi + 0x418], bl
lea edx, [ecx + 0x34]
mov eax, dword [edx]
test eax, eax
je 0x1017f0e8
mov edi, dword [esi + 0x3c]
cmp dword [eax + 0x3c], edi
ja 0x1017f0e8
lea edx, [eax + 4]
mov eax, dword [edx]
test eax, eax
jne 0x1017f0da
mov eax, dword [edx]
mov dword [esi + 4], eax
mov dword [edx], esi
inc dword [ecx + 0x30]
mov dword [esi], ecx
cmp dword [ecx + 0x38], ebx
jne 0x1017f0fc
mov dword [ecx + 0x38], esi
mov eax, dword [esi + 0x30]
add dword [ecx + 0x40], eax
mov eax, dword [esi + 0x30]
cmp eax, dword [ecx + 0x44]
jbe 0x1017f10d
mov dword [ecx + 0x44], eax
mov eax, dword [esi + 0x60]
or dword [ecx + 0x3c], eax
push ebx
push ebx
push dword [esi + 0x50]
call dword [sym.imp.dbghelp.dll_SymInitializeW]
push ebx
push ebx
push ebx
call dword [sym.imp.dbghelp.dll_SymAddrIncludeInlineTrace]
push ebx
push esi
push 0x101cbd30
push dword [esi + 0x50]
mov word [0x102d2cfc], ax
call dword [sym.imp.dbghelp.dll_SymRegisterCallbackW64]
mov eax, dword [esi]
test eax, eax
je 0x1017f18e
cmp dword [eax + 8], 2
je 0x1017f14f
cmp dword [eax + 8], 3
jne 0x1017f16b
cmp dword [eax + 0x504], 0x14c
je 0x1017f16b
push ebx
push esi
push 0x100ebad0
push dword [esi + 0x50]
call dword [sym.imp.dbghelp.dll_SymRegisterFunctionEntryCallback64]
mov eax, dword [esi]
test eax, eax
je 0x1017f18e
cmp dword [eax + 8], ebx
je 0x1017f18e
cmp dword [eax + 0xc], 0x400
jb 0x1017f18e
cmp dword [eax + 0xc], 0x405
ja 0x1017f18e
cmp dword [eax + 0x30], 1
jne 0x1017f191
xor ebx, ebx
inc ebx
mov edx, ebx
call fcn.101cc2fc
mov ecx, esi
call fcn.10180cc6
or dword [ebp - 4], 0xffffffff
mov eax, esi
call fcn.102375d0
ret 8