Function at 0x4026b0
Capabilities:
Query environment variable

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff0
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
sub esp, 0x5c8
mov eax, dword [0x410654]
xor eax, ebp
mov dword [ebp - 4], eax
push esi
push edi
lea ecx, [ebp - 0x571]
call fcn.00401de0
mov esi, eax
cmp byte [esi + 0x19], 0
je 0x402706
push 0xdbaf4383
push 0xc59f19cf
push 0
push 0x19
push esi
call fcn.00401450
add esp, 0x14
mov byte [esi + 0x19], 0
push 0x104
lea eax, [ebp - 0x110]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_ExpandEnvironmentStringsA]
push 0x104
lea eax, [ebp - 0x528]
mov dword [ebp - 0x530], 0x3f005c
push eax
push 0
mov dword [ebp - 0x52c], 0x5c003f
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
lea ecx, [ebp - 0x571]
mov dword [ebp - 0x320], 0x3f005c
mov dword [ebp - 0x31c], 0x5c003f
call fcn.004017b0
mov esi, eax
cmp byte [esi + 0x19], 0
je 0x402783
push 0xabdfdba5
push 0x7799233f
push 0
push 0x19
push esi
call fcn.00401450
add esp, 0x14
mov byte [esi + 0x19], 0
lea ecx, [esi + 0x18]
xor eax, eax
lea edx, [ebp - 0x5c0]
cmp edx, ecx
ja 0x4027a0
lea ecx, [ebp - 0x590]
cmp ecx, esi
jae 0x4027d0
nop dword [eax]
movq xmm0, qword [eax + esi]
punpcklbw xmm0, xmm0
psraw xmm0, 8
movups xmmword [ebp + eax*2 - 0x5c0], xmm0
add eax, 8
cmp eax, 0x18
jb 0x4027a0
cmp eax, 0x19
jae 0x4027e3
nop dword [eax]
nop word [eax + eax]
movsx cx, byte [eax + esi]
mov word [ebp + eax*2 - 0x5c0], cx
inc eax
cmp eax, 0x19
jb 0x4027d0
movaps xmm0, xmmword [ebp - 0x5c0]
mov ax, word [ebp - 0x590]
mov word [ebp - 0x540], ax
lea eax, [ebp - 0x318]
movaps xmmword [ebp - 0x570], xmm0
movaps xmm0, xmmword [ebp - 0x5b0]
push 0x104
push eax
movaps xmmword [ebp - 0x560], xmm0
lea eax, [ebp - 0x570]
movaps xmm0, xmmword [ebp - 0x5a0]
push eax
movaps xmmword [ebp - 0x550], xmm0
call dword [sym.imp.KERNEL32.dll_ExpandEnvironmentStringsW]
lea eax, [ebp - 0x320]
push eax
lea eax, [ebp - 0x530]
push eax
call fcn.00405590
add esp, 8
test al, al
jne 0x402882
lea ecx, [ebp - 0x571]
call fcn.00401d10
mov esi, eax
cmp byte [esi + 0x25], 0
je 0x402975
push 0x7fad1dcd
push 0x7b5fc9bd
push 0
push 0x25
push esi
call fcn.00401450
mov byte [esi + 0x25], 0
jmp 0x402972
lea esi, [ebp - 0x110]
lea ecx, [esi + 1]
nop dword [eax + eax]
mov al, byte [esi]
inc esi
test al, al
jne 0x402890
sub esi, ecx
lea ecx, [ebp - 0x571]
call fcn.00401b90
mov edi, eax
mov dword [ebp - 0x578], edi
cmp byte [edi + 6], 0
je 0x4028cd
push 0x7dbd4949
push 0x9df19131
push 0
push 6
push edi
call fcn.00401450
add esp, 0x14
mov byte [edi + 6], 0
lea ecx, [ebp - 0x571]
call fcn.00401ea0
mov edi, eax
cmp byte [edi + 0x2e], 0
je 0x4028fb
push 0x779d037f
push 0xcf83bfcb
push 0
push 0x2e
push edi
call fcn.00401450
add esp, 0x14
mov byte [edi + 0x2e], 0
lea eax, [esi + 1]
push eax
lea eax, [ebp - 0x110]
push eax
push 1
push dword [ebp - 0x578]
push edi
push 0x80000001
call fcn.004063c0
add esp, 0x18
lea ecx, [ebp - 0x571]
test eax, eax
je 0x40294d
call fcn.00401c40
mov esi, eax
cmp byte [esi + 0x29], 0
je 0x402975
push 0xcb0b4fdb
push 0x6b4b3b87
push 0
push 0x29
push esi
call fcn.00401450
mov byte [esi + 0x29], 0
jmp 0x402972
call fcn.004014e0
mov esi, eax
cmp byte [esi + 0x10], 0
je 0x402975
push 0x29b373e5
push 0x8fe16903
push 0
push 0x10
push esi
call fcn.00401450
mov byte [esi + 0x10], 0
add esp, 0x14
push esi
call fcn.00404c00
mov ecx, dword [ebp - 4]
add esp, 4
xor ecx, ebp
pop edi
pop esi
call fcn.00408be8
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret