Function at 0x10030f73
Capabilities:
Query environment variable

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x1d0
movzx eax, byte [ebp + 8]
test eax, eax
je 0x10031b13
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x124], eax
lea eax, [ebp + 0x14]
mov dword [ebp - 0x150], eax
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x34], 0xcbcef054
mov dword [ebp - 0x30], 0xfffffffd
mov dword [ebp - 4], 0
jmp 0x10030fbe
mov eax, dword [ebp - 4]
inc eax
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 1
jge 0x10030fd1
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x18], 0x1ab4456e
jmp 0x10030fb7
mov dword [ebp - 4], 0
jmp 0x10030fe1
mov eax, dword [ebp - 4]
inc eax
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 2
jge 0x10030ff4
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x64], 0x45b0e82c
jmp 0x10030fda
mov dword [ebp - 4], 0
jmp 0x10031004
mov eax, dword [ebp - 4]
inc eax
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 3
jge 0x1003101a
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x118], 0x8a92
jmp 0x10030ffd
mov dword [ebp - 4], 0
jmp 0x1003102a
mov eax, dword [ebp - 4]
inc eax
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 1
jge 0x10031040
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0xf0], 1
jmp 0x10031023
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x188], eax
push 4
pop eax
shl eax, 0
cmp dword [ebp + eax - 0x64], 0xffffffff
jge 0x10031062
mov dword [ebp - 0x94], 1
jmp 0x10031069
and dword [ebp - 0x94], 0
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x64]
push 4
pop ecx
shl ecx, 0
mov ecx, dword [ebp + ecx - 0x64]
lea eax, [eax + ecx + 6]
test eax, eax
jne 0x10031091
mov dword [ebp - 0x11c], 1
jmp 0x10031098
and dword [ebp - 0x11c], 0
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x94]
mov dword [ebp + eax - 0x18], ecx
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x118]
inc eax
mov dword [ebp - 0x10c], eax
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x10c]
mov dword [ebp + eax - 0x118], ecx
imul eax, dword [ebp - 0x10c], 0x85b3
push 4
pop ecx
shl ecx, 0
cmp eax, dword [ebp + ecx - 0x64]
jl 0x100310ee
mov dword [ebp - 0x80], 1
jmp 0x100310f2
and dword [ebp - 0x80], 0
mov eax, dword [ebp - 0x80]
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x30]
push 4
pop ecx
imul ecx, ecx, 0
imul eax, dword [ebp + ecx - 0x64]
mov eax, dword [ebp - 0x34]
cmp dword [ebp - 0x34], eax
jl 0x1003111a
mov dword [ebp - 0x104], 1
jmp 0x10031121
and dword [ebp - 0x104], 0
cmp dword [ebp - 0x104], 0
ja 0x10031136
mov dword [ebp - 0x160], 1
jmp 0x1003113d
and dword [ebp - 0x160], 0
push 4
pop eax
shl eax, 0
mov ecx, dword [ebp - 0x34]
cmp dword [ebp + eax - 0x64], ecx
jl 0x10031165
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x118], 0
je 0x10031165
mov dword [ebp - 0x7c], 1
jmp 0x10031169
and dword [ebp - 0x7c], 0
cmp dword [ebp - 0x7c], 0xffffffff
jne 0x1003117b
mov dword [ebp - 0xc8], 1
jmp 0x10031182
and dword [ebp - 0xc8], 0
cmp dword [ebp - 0xc8], 0xe629bad2
jbe 0x100311a1
push 4
pop eax
shl eax, 1
cmp dword [ebp + eax - 0x118], 0
je 0x10031324
push 4
pop eax
shl eax, 1
cmp dword [ebp + eax - 0x118], 0
je 0x10031324
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x18], 0
je 0x10031324
mov dword [ebp - 0x44], 0
mov dword [ebp - 0x4c], 2
mov dword [ebp - 0x50], 0
jmp 0x100311e3
mov eax, dword [ebp - 0x50]
inc eax
mov dword [ebp - 0x50], eax
cmp dword [ebp - 0x50], 3
jge 0x100311f9
mov eax, dword [ebp - 0x50]
mov dword [ebp + eax*4 - 0x1b0], 0xfffffffe
jmp 0x100311dc
xor eax, eax
inc eax
je 0x100312b6
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x118]
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x44]
imul eax, dword [ebp - 0x4c]
test eax, eax
jne 0x100312b6
push 4
pop eax
imul eax, eax, 0
imul eax, dword [ebp + eax - 0x18], 0x9320
mov dword [ebp - 0x4c], eax
mov eax, dword [ebp - 0x4c]
cmp dword [ebp - 0x30], eax
je 0x10031246
mov dword [ebp - 0x88], 1
jmp 0x1003124d
and dword [ebp - 0x88], 0
cmp dword [ebp - 0x88], 0xd3ea
jne 0x10031265
mov dword [ebp - 0x108], 1
jmp 0x1003126c
and dword [ebp - 0x108], 0
cmp dword [ebp - 0x108], 0x4bb8686b
jg 0x10031284
mov dword [ebp - 0x90], 1
jmp 0x1003128b
and dword [ebp - 0x90], 0
cmp dword [ebp - 0x90], 0xffff
jne 0x100312a3
mov dword [ebp - 0xd0], 1
jmp 0x100312aa
and dword [ebp - 0xd0], 0
mov eax, dword [ebp - 0x44]
add eax, dword [ebp - 0xd0]
cmp eax, dword [ebp - 0x44]
cmp dword [ebp - 0x4c], 0
jne 0x100312c8
mov dword [ebp - 0x168], 1
jmp 0x100312cf
and dword [ebp - 0x168], 0
push 4
pop eax
shl eax, 1
mov eax, dword [ebp + eax - 0x1b0]
mov dword [ebp - 0x19c], eax
push 4
pop eax
shl eax, 0
imul eax, dword [ebp + eax - 0x64], 0xffffffff
neg eax
push 4
pop ecx
shl ecx, 1
cmp eax, dword [ebp + ecx - 0x1b0]
je 0x10031308
mov dword [ebp - 0x98], 1
jmp 0x1003130f
and dword [ebp - 0x98], 0
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x98]
mov dword [ebp + eax - 0x18], ecx
jmp 0x100314b5
mov dword [ebp - 0x100], 0x55a6
mov dword [ebp - 0x12c], 0xa4a7b592
mov dword [ebp - 0xa8], 0
mov dword [ebp - 0x10], 0
jmp 0x10031352
mov eax, dword [ebp - 0x10]
inc eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 2
jge 0x10031368
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x1c8], 0
jmp 0x1003134b
mov dword [ebp - 0x10], 0
jmp 0x10031378
mov eax, dword [ebp - 0x10]
inc eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 3
jge 0x1003138e
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x1c0], 6
jmp 0x10031371
cmp dword [ebp - 0x34], 0
jne 0x1003144d
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0xf0]
dec eax
push 4
pop ecx
imul ecx, ecx, 0
mov dword [ebp + ecx - 0xf0], eax
mov eax, dword [ebp - 0x100]
push 4
pop ecx
imul ecx, ecx, 0
sub eax, dword [ebp + ecx - 0x18]
imul eax, eax, 5
cmp eax, 0x794679f
je 0x100313d9
mov dword [ebp - 0xa0], 1
jmp 0x100313e0
and dword [ebp - 0xa0], 0
cmp dword [ebp - 0xa0], 0x40e302f9
je 0x100313fe
cmp dword [ebp - 0x12c], 0
jne 0x100313fe
and dword [ebp - 0xd8], 0
jmp 0x10031408
mov dword [ebp - 0xd8], 1
mov eax, dword [ebp - 0xd8]
mov dword [ebp - 0xa8], eax
mov eax, dword [ebp - 0xa8]
mov dword [ebp - 0x18c], eax
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x18]
mov dword [ebp - 0x198], eax
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x64]
mov dword [ebp - 0x30], eax
push 0xfffffffffffffffd
pop eax
test eax, eax
jne 0x1003144d
and dword [ebp - 0x158], 0
jmp 0x10031457
mov dword [ebp - 0x158], 1
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x1c0]
cmp dword [ebp - 0x100], eax
jle 0x10031478
mov dword [ebp - 0xb0], 1
jmp 0x1003147f
and dword [ebp - 0xb0], 0
cmp dword [ebp - 0xb0], 0x1d3
jge 0x10031497
mov dword [ebp - 0xe0], 1
jmp 0x1003149e
and dword [ebp - 0xe0], 0
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0xe0]
mov dword [ebp + eax - 0x18], ecx
mov dword [ebp - 0x30], 1
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x124]
add ecx, dword [eax]
mov dword [ebp - 0x140], ecx
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax]
add eax, 8
mov dword [ebp - 0x48], eax
and dword [ebp - 0x68], 0
jmp 0x100314e8
mov eax, dword [ebp - 0x68]
inc eax
mov dword [ebp - 0x68], eax
mov eax, dword [ebp - 0x48]
inc eax
inc eax
mov dword [ebp - 0x48], eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax]
mov eax, dword [eax + 4]
sub eax, 8
shr eax, 1
cmp dword [ebp - 0x68], eax
jae 0x10031aff
mov dword [ebp - 8], 0
jmp 0x1003150e
mov eax, dword [ebp - 8]
inc eax
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 1
jge 0x10031524
mov eax, dword [ebp - 8]
mov dword [ebp + eax*4 - 0x1a0], 5
jmp 0x10031507
mov dword [ebp - 8], 0
jmp 0x10031534
mov eax, dword [ebp - 8]
inc eax
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 4
jge 0x1003154a
mov eax, dword [ebp - 8]
mov dword [ebp + eax*4 - 0x184], 1
jmp 0x1003152d
push 4
pop eax
shl eax, 1
mov dword [ebp + eax - 0x184], 0
jmp 0x10031575
push 4
pop eax
shl eax, 1
mov eax, dword [ebp + eax - 0x184]
inc eax
push 4
pop ecx
shl ecx, 1
mov dword [ebp + ecx - 0x184], eax
push 4
pop eax
shl eax, 1
cmp dword [ebp + eax - 0x184], 0
jg 0x100315b4
mov byte [ebp - 0x19], 0
movzx eax, byte [ebp - 0x19]
test eax, eax
je 0x10031598
push 1
call fcn.10030e75
pop ecx
mov byte [ebp - 0x21], 0
movzx eax, byte [ebp - 0x21]
test eax, eax
je 0x100315b2
push 0x40a1
push 1
call fcn.10030eb0
pop ecx
pop ecx
jmp 0x1003155c
mov dword [ebp - 0x14], 0xffffffff
mov dword [ebp - 0x54], 0
jmp 0x100315cb
mov eax, dword [ebp - 0x54]
inc eax
mov dword [ebp - 0x54], eax
cmp dword [ebp - 0x54], 3
jge 0x100315e1
mov eax, dword [ebp - 0x54]
mov dword [ebp + eax*4 - 0x174], 0x7117
jmp 0x100315c4
mov dword [ebp - 0x14], 2
jmp 0x100315f1
mov eax, dword [ebp - 0x14]
dec eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0
jl 0x100316dc
mov dword [ebp - 0x128], 0x6ee4e912
mov eax, dword [ebp - 0x14]
cmp dword [ebp + eax*4 - 0x174], 0
je 0x10031627
mov eax, 0xfffc
test eax, eax
je 0x10031627
mov dword [ebp - 0xb8], 1
jmp 0x1003162e
and dword [ebp - 0xb8], 0
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0xb8]
sub ecx, dword [ebp + eax*4 - 0x174]
cmp ecx, 0xa4d63a88
jne 0x10031652
mov dword [ebp - 0xf8], 1
jmp 0x10031659
and dword [ebp - 0xf8], 0
cmp dword [ebp - 0x14], 0
jl 0x1003166b
mov dword [ebp - 0xc0], 1
jmp 0x10031672
and dword [ebp - 0xc0], 0
mov eax, dword [ebp - 0xf8]
cmp eax, dword [ebp - 0xc0]
jle 0x1003168c
mov dword [ebp - 0xe8], 1
jmp 0x10031693
and dword [ebp - 0xe8], 0
cmp dword [ebp - 0xe8], 2
je 0x100316a5
mov dword [ebp - 0x78], 1
jmp 0x100316a9
and dword [ebp - 0x78], 0
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp + eax*4 - 0x174]
cmp dword [ebp - 0x78], eax
je 0x100316c4
mov dword [ebp - 0x84], 1
jmp 0x100316cb
and dword [ebp - 0x84], 0
mov eax, dword [ebp - 0x84]
mov dword [ebp - 0x128], eax
jmp 0x100315ea
mov dword [ebp - 0x28], 0xfffffff9
mov dword [ebp - 0x20], 0xfffffffa
mov dword [ebp - 0x6c], 0
mov dword [ebp - 0x70], 1
mov dword [ebp - 0x154], 0
mov dword [ebp - 0xc], 0
jmp 0x10031712
mov eax, dword [ebp - 0xc]
inc eax
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 2
jge 0x10031725
mov eax, dword [ebp - 0xc]
mov dword [ebp + eax*4 - 0x5c], 0xce55459e
jmp 0x1003170b
mov dword [ebp - 0xc], 0
jmp 0x10031735
mov eax, dword [ebp - 0xc]
inc eax
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 1
jge 0x10031748
mov eax, dword [ebp - 0xc]
mov dword [ebp + eax*4 - 0x3c], 4
jmp 0x1003172e
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x8c], eax
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x8c]
mov dword [ebp + eax - 0x5c], ecx
cmp dword [ebp - 0x8c], 0
je 0x100318ff
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x1b4], eax
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x5c]
push 4
pop ecx
imul ecx, ecx, 0
add eax, dword [ebp + ecx - 0x5c]
cmp eax, dword [ebp - 0x20]
jge 0x1003179c
mov dword [ebp - 0x14c], 1
jmp 0x100317a3
and dword [ebp - 0x14c], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x5c]
mov dword [ebp - 0x190], eax
mov eax, dword [ebp - 0x28]
cmp dword [ebp - 0x28], eax
jge 0x100317c4
mov dword [ebp - 0x74], 1
jmp 0x100317c8
and dword [ebp - 0x74], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x5c]
add eax, dword [ebp - 0x74]
cmp eax, dword [ebp - 0x20]
jl 0x100317f3
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x5c], 0
je 0x100317f3
mov dword [ebp - 0x9c], 1
jmp 0x100317fa
and dword [ebp - 0x9c], 0
mov eax, dword [ebp - 0x6c]
mov dword [ebp - 0x134], eax
mov eax, dword [ebp - 0x9c]
mov dword [ebp - 0x15c], eax
mov eax, dword [ebp - 0x6c]
dec eax
mov dword [ebp - 0x6c], eax
mov eax, dword [ebp - 0x134]
cmp eax, dword [ebp - 0x15c]
jle 0x10031830
mov dword [ebp - 0xa4], 1
jmp 0x10031837
and dword [ebp - 0xa4], 0
mov eax, dword [ebp - 0x20]
imul eax, dword [ebp - 0xa4]
test eax, eax
je 0x1003185e
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x5c], 0
je 0x1003185e
mov dword [ebp - 0xac], 1
jmp 0x10031865
and dword [ebp - 0xac], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x5c]
cmp dword [ebp - 0xac], eax
jl 0x10031883
mov dword [ebp - 0xb4], 1
jmp 0x1003188a
and dword [ebp - 0xb4], 0
cmp dword [ebp - 0xb4], 0
jb 0x1003189f
mov dword [ebp - 0xbc], 1
jmp 0x100318a6
and dword [ebp - 0xbc], 0
cmp dword [ebp - 0xbc], 0x28d92279
jle 0x100318be
mov dword [ebp - 0xcc], 1
jmp 0x100318c5
and dword [ebp - 0xcc], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x3c]
dec eax
mov dword [ebp - 0xc4], eax
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0xc4]
mov dword [ebp + eax - 0x3c], ecx
mov eax, dword [ebp - 0xc4]
cmp eax, dword [ebp - 0xcc]
jle 0x100318ff
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x3c], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x3c]
mov dword [ebp - 0x70], eax
mov eax, dword [ebp - 0x20]
cmp dword [ebp - 0x70], eax
jne 0x10031920
mov dword [ebp - 0xd4], 1
jmp 0x10031927
and dword [ebp - 0xd4], 0
cmp dword [ebp - 0xd4], 0xfffa
je 0x1003193f
mov dword [ebp - 0x13c], 1
jmp 0x10031946
and dword [ebp - 0x13c], 0
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x194], eax
cmp dword [ebp - 0x70], 0
jne 0x10031959
cmp dword [ebp - 0x20], 0
cmp dword [ebp - 0x28], 0xec6f
jne 0x1003196e
mov dword [ebp - 0xdc], 1
jmp 0x10031975
and dword [ebp - 0xdc], 0
mov eax, dword [ebp - 0x28]
cmp dword [ebp - 0xdc], eax
jg 0x1003198c
mov dword [ebp - 0xe4], 1
jmp 0x10031993
and dword [ebp - 0xe4], 0
mov eax, dword [ebp - 0x20]
cmp dword [ebp - 0xe4], eax
je 0x100319aa
mov dword [ebp - 0xec], 1
jmp 0x100319b1
and dword [ebp - 0xec], 0
mov eax, 0xa4a9
sub eax, dword [ebp - 0xec]
mov dword [ebp - 0x154], eax
mov eax, dword [ebp - 0x48]
movzx eax, word [eax]
sar eax, 0xc
mov dword [ebp - 0x130], eax
mov dword [ebp - 0x38], 8
mov dword [ebp - 0x38], 0xfffffffb
jmp 0x100319e8
mov eax, dword [ebp - 0x38]
dec eax
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 0xffffffe3
jne 0x100319f8
cmp dword [ebp - 0x38], 0
je 0x100319f6
jmp 0x100319f8
jmp 0x100319e1
mov byte [ebp - 0x22], 0
movzx eax, byte [ebp - 0x22]
test eax, eax
je 0x10031a18
push 1
push 0x43d6
push 0x3e2
call fcn.10030f0f
add esp, 0xc
mov eax, dword [ebp - 0x48]
movzx eax, word [eax]
and eax, 0xfff
mov dword [ebp - 0x148], eax
mov dword [ebp - 0x120], 0
mov dword [ebp - 0x144], 0x14c90d29
mov dword [ebp - 0x164], 0x5e790e86
mov dword [ebp - 0x1a4], 0x8e85a7b0
mov dword [ebp - 0xf4], 0xfffffff6
mov dword [ebp - 0x40], 0
jmp 0x10031a6b
mov eax, dword [ebp - 0x40]
inc eax
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 2
jge 0x10031a81
mov eax, dword [ebp - 0x40]
mov dword [ebp + eax*4 - 0x1d0], 0
jmp 0x10031a64
lea eax, [ebp - 0x144]
push eax
lea eax, [ebp - 0x164]
push eax
lea eax, [ebp - 0x120]
push eax
push 0
push 0x2761
push 0x22a
call fcn.10032967
add esp, 0x18
mov eax, dword [ebp - 0xf4]
inc eax
mov dword [ebp - 0xf4], eax
mov eax, dword [ebp - 0x130]
mov dword [ebp - 0x138], eax
cmp dword [ebp - 0x138], 3
je 0x10031ad0
jmp 0x10031afa
mov eax, dword [ebp - 0x140]
add eax, dword [ebp - 0x148]
mov dword [ebp - 0xfc], eax
mov eax, dword [ebp - 0xfc]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x150]
add eax, dword [ecx]
mov ecx, dword [ebp - 0xfc]
mov dword [ecx], eax
jmp 0x100314d9
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x2c]
mov ecx, dword [ecx]
add ecx, dword [eax + 4]
mov eax, dword [ebp - 0x2c]
mov dword [eax], ecx
jmp 0x10031b22
push 0x391
push 0
push 0
call dword [sym.imp.KERNEL32.dll_GetEnvironmentVariableW]
mov esp, ebp
pop ebp
ret