Function at 0x10008200
Capabilities:
Query environment variable

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x4c
mov esi, edx
mov eax, dword [0x10023040]
xor eax, esp
mov dword [esp + 0x48], eax
lea edi, [esp + 0x30]
mov dword [esp], edi
mov eax, dword [esp]
lea eax, [esp + 0x44]
mov dword [esp + 0xc], eax
mov eax, dword [esp]
xorps xmm0, xmm0
movups xmmword [eax], xmm0
mov dword [eax + 0x10], 0
mov eax, dword [esp + 0xc]
mov dword [eax], 0xf
cmp dword [edx + 0x10], 0
sete byte [esp + 7]
mov dword [esp + 0x28], ecx
mov eax, 0xb5e890b4
mov ebx, 0x17419499
jmp 0x10008270
mov eax, dword [esp + 0x20]
mov eax, 0x110042be
nop word cs:[eax + eax]
nop dword [eax]
cmp eax, 0x110042bd
jg 0x100082b0
cmp eax, 0xd8d6b61a
jg 0x100082e0
cmp eax, 0xaa9161c5
je 0x1000833d
cmp eax, 0xb5e890b4
jne 0x10008270
cmp byte [esp + 7], 0
mov eax, 0xaa9161c5
mov ecx, 0x110042be
cmovne eax, ecx
jmp 0x10008270
cmp eax, 0x18e42d3c
jle 0x10008319
cmp eax, 0x18e42d3d
je 0x10008259
cmp eax, 0x530c7aa1
jne 0x10008270
mov eax, dword [esp + 0xc]
cmp dword [eax], 0x10
mov eax, dword [esp + 0x1c]
jae 0x1000840b
mov eax, dword [esp]
jmp 0x1000840d
cmp eax, 0xd8d6b61b
je 0x100083ae
cmp eax, 0xef19f638
jne 0x10008270
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 8]
mov dword [eax], ecx
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x1c]
cmp ecx, 0x10
jae 0x10008429
mov ebp, dword [esp]
jmp 0x1000842b
cmp eax, 0x17419499
jne 0x10008453
mov edx, dword [esp + 0x18]
mov ecx, edi
push edx
call fcn.10008490
add esp, 4
mov eax, 0x18e42d3d
jmp 0x10008270
lea eax, [esp + 0x40]
mov dword [esp + 0x10], eax
mov ecx, edi
mov edx, 0x104
push 0x104
call fcn.10008490
add esp, 4
mov eax, dword [esp + 0x10]
mov eax, dword [eax]
mov ecx, dword [esp + 0xc]
cmp dword [ecx], 0x10
mov dword [esp + 0x1c], edi
mov ecx, dword [esp]
jb 0x10008373
mov ecx, dword [esp + 0x30]
cmp dword [esi + 0x14], 0x10
mov edx, esi
jb 0x1000837d
mov edx, dword [esi]
push eax
push ecx
push edx
call dword [sym.imp.KERNEL32.dll_GetEnvironmentVariableA]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x10]
mov eax, dword [eax]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 8]
cmp eax, dword [esp + 0x14]
mov eax, 0x530c7aa1
mov ecx, 0xd8d6b61b
cmova eax, ecx
jmp 0x10008270
mov ecx, dword [esp + 8]
mov eax, dword [esp + 0x14]
mov edx, ecx
or edx, eax
mov ebp, ecx
xor ebp, eax
add edx, ecx
add ebp, eax
not eax
or ecx, eax
add ecx, ebp
add eax, edx
sub eax, ecx
mov dword [esp + 0x18], eax
lea eax, [esp + 0x2c]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x20]
mov eax, dword [esp + 0xc]
mov eax, dword [eax]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x24]
mov edx, ecx
and edx, eax
sub edx, eax
sub edx, eax
or ecx, eax
add ecx, edx
cmp ecx, dword [esp + 0x18]
mov eax, 0xef19f638
cmovb eax, ebx
jmp 0x10008270
mov eax, dword [eax]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 8]
mov dword [ecx], edx
mov ecx, dword [esp + 8]
mov byte [eax + ecx], 0
mov eax, 0x110042be
jmp 0x10008270
mov ebp, dword [eax]
mov eax, dword [esp + 0x14]
add eax, ebp
push dword [esp + 0x18]
push 0
push eax
call fcn.100117f0
add esp, 0xc
mov eax, dword [esp + 8]
mov byte [ebp + eax], 0
mov eax, 0x18e42d3d
jmp 0x10008270
cmp eax, 0x110042be
jne 0x10008270
mov eax, dword [esp]
movsd xmm0, qword [eax + 0x10]
mov ecx, dword [esp + 0x28]
movsd qword [ecx + 0x10], xmm0
movups xmm0, xmmword [eax]
movups xmmword [ecx], xmm0
mov eax, dword [esp]
mov ecx, dword [esp + 0x48]
xor ecx, esp
call fcn.10010c8a
add esp, 0x4c
pop esi
pop edi
pop ebx
pop ebp
ret