Function at 0x10035c10
Capabilities:
Query environment variable

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x5c
mov eax, dword [0x1006d040]
xor eax, esp
mov dword [esp + 0x58], eax
lea esi, [esp + 0x40]
mov dword [esp + 4], esi
mov eax, dword [esp + 4]
lea eax, [esp + 0x54]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 4]
xorps xmm0, xmm0
movups xmmword [eax], xmm0
mov dword [eax + 0x10], 0
mov eax, dword [esp + 0x10]
mov dword [eax], 0xf
mov dword [esp + 0x20], edx
cmp dword [edx + 0x10], 0
sete byte [esp + 0xb]
mov dword [esp + 0x30], ecx
mov ecx, 0xc3c8d80e
mov eax, 0x93504319
jmp 0x10035c90
mov edx, dword [esp + 0x1c]
mov ecx, esi
push edx
call fcn.100363d0
add esp, 4
mov ecx, 0xa8cb72e0
mov eax, 0x4a46cdf2
nop word [eax + eax]
cmp ecx, 0x382a654
jle 0x10035cf0
cmp ecx, 0x4b93913b
jg 0x10035d50
cmp ecx, 0x175ec6f2
jle 0x10035dea
cmp ecx, 0x26cc2746
jg 0x10035ed5
cmp ecx, 0x175ec6f3
je 0x10035f51
cmp ecx, 0x22ab0014
jne 0x10035c90
mov ecx, dword [esp]
cmp ecx, 0x93504319
mov ecx, 0x8c8d58d4
mov edx, 0x4b93913c
cmove ecx, edx
jmp 0x10035c90
cmp ecx, 0xb99b27d2
jle 0x10035da0
cmp ecx, 0xf5a54bf2
jle 0x10035e29
cmp ecx, 0xf5f53e85
jg 0x10035f08
cmp ecx, 0xf5a54bf3
je 0x10035f6c
cmp ecx, 0xf5b8d3e6
jne 0x10035c90
mov ecx, dword [esp]
cmp ecx, 0xf8122142
mov ecx, 0x8c8d58d4
mov edx, 0x4d0d3a74
cmove ecx, edx
jmp 0x10035c90
cmp ecx, 0x62d8c12b
jg 0x10035e68
cmp ecx, 0x5120b870
jle 0x10035f29
cmp ecx, 0x5120b871
je 0x10035f87
cmp ecx, 0x5c4b3cf3
jne 0x10035c90
mov ecx, dword [esp]
cmp ecx, 0xe609e0f2
mov ecx, 0x8c8d58d4
mov edx, 0x8ce0a992
cmove ecx, edx
jmp 0x10035c90
cmp ecx, 0xa29cde54
jg 0x10035ea7
cmp ecx, 0x8676634f
je 0x10035fa2
cmp ecx, 0x8c8d58d4
je 0x10036203
cmp ecx, 0x8ce0a992
jne 0x10035c90
mov eax, dword [esp + 0x10]
cmp dword [eax], 0x10
mov eax, dword [esp + 0x24]
jae 0x10036345
mov eax, dword [esp + 4]
jmp 0x10036347
cmp ecx, 0x382a655
je 0x1003620d
cmp ecx, 0x52dca6f
je 0x10035c6e
cmp ecx, 0x15b0b435
jne 0x10035c90
mov ecx, dword [esp]
cmp ecx, 0xb155d8ab
mov ecx, 0x8c8d58d4
mov edx, 0x8676634f
cmove ecx, edx
jmp 0x10035c90
cmp ecx, 0xb99b27d3
je 0x1003628a
cmp ecx, 0xc3c8d80e
je 0x10036294
cmp ecx, 0xd9c381b8
jne 0x10035c90
mov ecx, dword [esp]
cmp ecx, 0x4a46cdf2
mov ecx, 0x26cc2747
mov edx, 0x3245602a
cmovl ecx, edx
jmp 0x10035c90
cmp ecx, 0x62d8c12c
je 0x100362a1
cmp ecx, 0x6735a522
je 0x100362bc
cmp ecx, 0x78b9ec00
jne 0x10035c90
mov ecx, dword [esp]
cmp ecx, 0x4a46cdf2
mov ecx, 0x8c8d58d4
mov edx, 0xfb5c8796
cmove ecx, edx
jmp 0x10035c90
cmp ecx, 0xa29cde55
je 0x100362d7
cmp ecx, 0xa5cb9cb0
je 0x100362f2
cmp ecx, 0xa8cb72e0
jne 0x10035c90
mov ecx, 0xc3c8d80e
jmp 0x10035c90
cmp ecx, 0x26cc2747
je 0x1003630f
cmp ecx, 0x3245602a
jne 0x10035c90
mov ecx, dword [esp]
cmp ecx, 0xf8122142
mov ecx, 0xf5b8d3e6
mov edx, 0x5c4b3cf3
cmovl ecx, edx
jmp 0x10035c90
cmp ecx, 0xf5f53e86
je 0x1003632a
cmp ecx, 0xfb5c8796
jne 0x10035c90
mov eax, dword [esp + 0x28]
jmp 0x10036359
cmp ecx, 0x4b93913c
jne 0x1003638c
cmp byte [esp + 0xb], 0
mov eax, 0x8aee4c4b
mov ecx, 0xf8122142
cmovne eax, ecx
mov ecx, 0xa8cb72e0
jmp 0x10035c90
mov ecx, dword [esp]
cmp ecx, 0xb155d8ab
mov ecx, 0x5120b871
mov edx, 0xf5a54bf3
cmovl ecx, edx
jmp 0x10035c90
mov ecx, dword [esp]
cmp ecx, 0x93504319
mov ecx, 0x22ab0014
mov edx, 0x6735a522
cmovl ecx, edx
jmp 0x10035c90
mov ecx, dword [esp]
cmp ecx, 0xc83a24cf
mov ecx, 0xa29cde55
mov edx, 0x15b0b435
cmovl ecx, edx
jmp 0x10035c90
mov eax, dword [esp + 0xc]
mov ecx, eax
not ecx
lea ecx, [eax + ecx*2]
mov eax, 0xfffffffe
sub eax, ecx
mov ecx, eax
and ecx, 0x2c92454c
add ecx, eax
mov edx, eax
xor edx, 0x2c92454c
or eax, 0x2c92454c
add eax, dword [esp + 0x18]
add edx, ecx
sub eax, edx
lea ecx, [eax + 0x301d86d4]
mov edx, ecx
and edx, 0x301d86d3
add eax, edx
add eax, 0x301d86d4
or ecx, 0xcfe2792c
sub ecx, eax
add ecx, 0x603b0da8
mov dword [esp + 0x1c], ecx
lea eax, [esp + 0x3c]
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x28]
mov eax, dword [esp + 0x10]
mov eax, dword [eax]
mov dword [esp + 0x2c], eax
mov ecx, dword [esp + 0x18]
mov eax, dword [esp + 0x2c]
lea edx, [eax + 0x729851f0]
mov dword [esp + 0x34], edx
mov ebx, edx
not ebx
xor edx, 0x729851f0
add edx, eax
and ebx, 0x8d67ae0f
add ebx, edx
mov ebp, eax
not ebp
mov esi, ebp
and esi, 0x804fff0d
mov edi, eax
mov dword [esp + 0x38], eax
xor edi, 0x7fb000f2
add edi, esi
mov edx, ebp
and edx, 0x7fb000f2
add eax, edi
add eax, 1
mov edi, edx
or edi, eax
mov esi, edx
xor esi, eax
not esi
lea edi, [esi + edi*2]
and edx, eax
sub edi, edx
add edi, 1
mov esi, edi
xor esi, 0x804fff0d
mov eax, esi
and eax, ecx
lea edx, [esi + esi]
sub edx, eax
mov eax, ecx
xor eax, esi
xor edi, 0x7fb000f2
and edi, eax
lea edi, [edx + edi*2]
mov eax, dword [esp + 0x34]
and eax, 0x729851f0
or esi, ecx
add esi, esi
sub edi, esi
lea esi, [ebx + eax]
add ebx, eax
add ebx, 0xe0b22849
mov eax, ebx
and eax, edi
add eax, eax
mov edx, ebx
sub edx, eax
add edx, edi
xor ebx, edi
add edx, ebx
not ebx
lea ebx, [edx + ebx*2]
add ebx, edi
add ebx, esi
sub ebx, ecx
lea eax, [ecx + ecx]
mov edx, ecx
sub edx, eax
neg eax
add eax, ecx
add eax, 0xffffffff
and eax, ebp
neg edx
mov esi, dword [esp + 0x38]
or edx, esi
lea eax, [eax + edx*2]
add eax, ebx
sub ebp, esi
sub ebp, esi
add ebp, esi
lea ecx, [esi + ebp]
add ecx, 1
add ecx, eax
lea eax, [ecx + ecx]
add eax, 0x8fa61ccc
mov edx, eax
or edx, 0x8fa61cc4
add ecx, edx
add ecx, 0xc7d30e66
mov edx, eax
xor edx, 0x7059e33a
add edx, ecx
or eax, 0x7059e33a
sub edx, eax
lea eax, [edx + 0x3a0922a8]
mov ecx, eax
and ecx, 0x11824dce
lea ecx, [edx + ecx*2]
add ecx, 0x3a0922a8
mov esi, 0xc5f6dd57
sub esi, edx
and esi, 0x91824dce
add esi, ecx
mov ecx, eax
or ecx, 0x91824dce
sub esi, ecx
xor eax, 0x91824dce
add eax, esi
imul eax, eax, 0xe3724553
lea ecx, [eax - 0x37e77f94]
mov edx, ecx
and edx, 0x53f25859
add edx, edx
sub ecx, edx
add eax, eax
add eax, 0x903100d8
or eax, 0x581b4f4c
add eax, ecx
imul esi, eax, 0xd54e46db
lea eax, [esi - 0x5a4d6d06]
and eax, 0xb26c5ef5
lea edx, [eax + esi]
add edx, 0xa5b292fa
mov ecx, eax
not ecx
add ecx, edx
add ecx, 0xb26c5ef6
mov edi, ecx
and edi, 0x1e19cf02
lea edi, [ecx + edi*2]
not ecx
and ecx, 0x1e19cf02
add ecx, edi
add esi, eax
add esi, 0x581ef1f0
add ecx, eax
sub eax, esi
lea esi, [esp + 0x40]
or eax, 0x1e19cf02
add eax, edx
add eax, 0xb26c5ef6
sub ecx, eax
mov eax, ecx
and eax, 0x4d93a10a
add eax, ecx
not ecx
or ecx, 0xb26c5ef5
add eax, ecx
add eax, 0x4d93a10c
cmp eax, dword [esp + 0x1c]
mov eax, 0x4d961c3a
mov ecx, 0xc83a24cf
cmovb eax, ecx
mov ecx, 0xa8cb72e0
jmp 0x10035c90
mov ecx, 0xb99b27d3
jmp 0x10035c90
lea eax, [esp + 0x50]
mov dword [esp + 0x14], eax
mov ecx, esi
mov edx, 0x104
push 0x104
call fcn.100363d0
add esp, 4
mov eax, dword [esp + 0x14]
mov eax, dword [eax]
mov ecx, dword [esp + 0x10]
cmp dword [ecx], 0x10
mov dword [esp + 0x24], esi
mov ecx, dword [esp + 4]
jb 0x10036244
mov ecx, dword [esp + 0x40]
mov edx, dword [esp + 0x20]
cmp dword [edx + 0x14], 0x10
jb 0x10036254
mov edx, dword [esp + 0x20]
mov edx, dword [edx]
push eax
push ecx
push edx
call dword [sym.imp.KERNEL32.dll_GetEnvironmentVariableA]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x14]
mov eax, dword [eax]
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0xc]
cmp eax, dword [esp + 0x18]
mov eax, 0xe609e0f2
mov ecx, 0xb155d8ab
cmova eax, ecx
mov ecx, 0xa8cb72e0
jmp 0x10035c90
mov ecx, 0xa8cb72e0
jmp 0x10035c90
mov dword [esp], eax
mov ecx, 0xf5f53e86
jmp 0x10035c90
mov ecx, dword [esp]
cmp ecx, 0x4d961c3a
mov ecx, 0x8c8d58d4
mov edx, 0xa5cb9cb0
cmove ecx, edx
jmp 0x10035c90
mov ecx, dword [esp]
cmp ecx, 0x8aee4c4b
mov ecx, 0x8c8d58d4
mov edx, 0x382a655
cmove ecx, edx
jmp 0x10035c90
mov ecx, dword [esp]
cmp ecx, 0xc83a24cf
mov ecx, 0x8c8d58d4
mov edx, 0x52dca6f
cmove ecx, edx
jmp 0x10035c90
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0xc]
mov dword [eax], ecx
mov ecx, dword [esp + 0x2c]
mov eax, dword [esp + 0x24]
cmp ecx, 0x10
jae 0x10036368
mov edi, dword [esp + 4]
jmp 0x1003636a
mov ecx, dword [esp]
cmp ecx, 0x4d961c3a
mov ecx, 0x62d8c12c
mov edx, 0x78b9ec00
cmovl ecx, edx
jmp 0x10035c90
mov ecx, dword [esp]
cmp ecx, 0xe609e0f2
mov ecx, 0xd9c381b8
mov edx, 0x175ec6f3
cmovl ecx, edx
jmp 0x10035c90
mov eax, dword [eax]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0xc]
mov dword [ecx], edx
mov ecx, dword [esp + 0xc]
mov byte [eax + ecx], 0
mov ecx, 0xa8cb72e0
mov eax, 0xf8122142
jmp 0x10035c90
mov edi, dword [eax]
mov eax, dword [esp + 0x18]
add eax, edi
push dword [esp + 0x1c]
push 0
push eax
call fcn.1005b380
add esp, 0xc
mov eax, dword [esp + 0xc]
mov byte [edi + eax], 0
jmp 0x10035c7d
cmp ecx, 0x4d0d3a74
jne 0x10035c90
mov eax, dword [esp + 4]
movsd xmm0, qword [eax + 0x10]
mov ecx, dword [esp + 0x30]
movsd qword [ecx + 0x10], xmm0
movups xmm0, xmmword [eax]
movups xmmword [ecx], xmm0
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x58]
xor ecx, esp
call fcn.1005a81a
add esp, 0x5c
pop esi
pop edi
pop ebx
pop ebp
ret