Function at 0x10026179
Capabilities:
Create pipe
Delete file
Enumerate gui resources
Get geographical location

Disassembly:
mov eax, 0x1006978b
call fcn.10068858
sub esp, 0x14c
mov dword [ebp - 0xcc], 0xffffffff
push ebx
mov dword [ebp - 0xc8], 0xffffffff
xor ebx, ebx
mov dword [ebp - 0xc4], 0xffffffff
push esi
mov dword [ebp - 0xc0], 0xffffffff
push edi
mov dword [ebp - 0x24], 0x7e6aa165
mov dword [ebp - 0x10], esp
mov byte [ebp - 0x40], dl
mov dword [ebp - 0x38], ecx
cmp dword [ebp - 0xc0], ebx
je 0x10026520
mov dword [ebp - 0x20], 0xdb22124f
mov dword [ebp - 0x1c], 0xfffffff9
mov dword [ebp - 0x20], ebx
jmp 0x100264f9
mov dword [ebp - 0x34], 0xb35d5697
mov ecx, 0xfc88eb98
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp + eax*4 - 0xcc]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp + eax*4 - 0xcc]
sub ecx, eax
sub ecx, dword [ebp - 0x1c]
neg ecx
sbb ecx, ecx
xor edx, edx
inc ecx
mov dword [ebp - 0x24], ecx
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp + eax*4 - 0xcc]
cmp eax, 0x3b3f3656
mov eax, dword [ebp - 0x24]
setge dl
xor ecx, ecx
cmp edx, eax
setge cl
cmp ecx, 0xf1a9
je 0x10026259
mov dword [ebp - 0x34], 0xfffffffc
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x1c]
dec eax
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x34], eax
jmp 0x100264f6
mov dword [ebp - 0x24], 3
cmp dword [ebp - 0x24], ebx
jl 0x100264f6
mov byte [ebp - 0x11], bl
cmp byte [ebp - 0x11], 0
je 0x10026278
call dword [sym.imp.KERNEL32.dll_GetThreadLocale]
mov byte [ebp - 0x11], bl
mov dword [ebp - 0x34], 0x263b
cmp dword [ebp - 0x34], 0xa2b
jge 0x100264d1
lea eax, [ebp - 0x48]
push eax
push 0x10007fe4
call fcn.1005028b
pop ecx
pop ecx
push dword [ebp - 0x48]
lea ecx, [ebp - 0x58]
call fcn.10027932
mov dword [ebp - 4], ebx
mov edi, dword [ebp - 0x48]
mov dword [ebp - 0x18], ebx
test edi, edi
jle 0x100262d4
mov esi, dword [ebp - 0x58]
push esi
push 0x10007fe4
call fcn.1005028b
mov edi, dword [ebp - 0x48]
inc ebx
pop ecx
add esi, 4
pop ecx
cmp ebx, edi
jl 0x100262ba
xor ebx, ebx
lea eax, [ebp - 0xd4]
mov dword [ebp - 0xd4], ebx
push eax
lea eax, [edi + 0x1f]
mov dword [ebp - 0x68], ebx
shr eax, 5
lea ecx, [ebp - 0x68]
push eax
mov dword [ebp - 0x64], ebx
mov dword [ebp - 0x60], ebx
call fcn.10027f20
mov dword [ebp - 0x5c], ebx
push edi
lea ecx, [ebp - 0x68]
mov byte [ebp - 4], 1
call fcn.10027bd2
lea eax, [ebp - 0x4c]
mov byte [ebp - 4], 2
push eax
push 0x10007fe4
call fcn.1005028b
pop ecx
pop ecx
lea eax, [ebp - 0xd0]
mov dword [ebp - 0xd0], ebx
push eax
push 3
lea ecx, [ebp - 0x74]
mov dword [ebp - 0x74], ebx
mov dword [ebp - 0x70], ebx
mov dword [ebp - 0x6c], ebx
call fcn.10027b4e
mov byte [ebp - 4], 3
lea eax, [ebp - 0x74]
push eax
push dword [ebp - 0x4c]
lea ecx, [ebp - 0x94]
mov dword [ebp - 0x94], ebx
mov dword [ebp - 0x90], ebx
mov dword [ebp - 0x8c], ebx
call fcn.10027c57
cmp dword [ebp - 0x74], 0
je 0x1002637d
push dword [ebp - 0x74]
call fcn.10050627
pop ecx
mov dword [ebp - 0x74], ebx
mov dword [ebp - 0x70], ebx
mov dword [ebp - 0x6c], ebx
mov eax, dword [ebp - 0x4c]
mov dword [ebp - 0x34], ebx
test eax, eax
jle 0x100263c5
mov edi, dword [ebp - 0x94]
mov esi, ebx
mov ecx, dword [edi]
lea eax, [ecx + 4]
push eax
push ecx
push 0x10007974
call fcn.1005028b
mov eax, dword [edi]
add esp, 0xc
cmp dword [eax], 1
jne 0x100263ba
add eax, 8
push eax
push 0x10007fe4
call fcn.1005028b
pop ecx
pop ecx
mov eax, dword [ebp - 0x4c]
inc esi
add edi, 0xc
cmp esi, eax
jl 0x1002638f
dec eax
mov edi, ebx
mov dword [ebp - 0x34], eax
js 0x1002644c
mov ebx, dword [ebp - 0x68]
xor edx, edx
imul ecx, eax, 0xc
add ecx, dword [ebp - 0x94]
inc edx
mov dword [ebp - 0x18], ecx
mov esi, dword [ecx]
mov esi, dword [esi]
cmp esi, edx
mov dword [ebp - 0x2c], esi
mov esi, dword [ebp - 0x58]
jne 0x10026505
mov eax, dword [ecx]
mov ecx, dword [eax + 4]
mov eax, dword [eax + 8]
dec ecx
mov dword [ebp - 0x3c], eax
mov eax, ecx
shr eax, 5
mov dword [ebp - 0x30], eax
mov eax, edx
mov dword [ebp - 0x2c], ecx
and ecx, 0x1f
shl eax, cl
mov dword [ebp - 0x28], ecx
mov ecx, dword [ebp - 0x30]
test dword [ebx + ecx*4], eax
jne 0x10026436
mov ecx, dword [ebp - 0x28]
mov eax, edx
shl eax, cl
mov ecx, dword [ebp - 0x30]
or dword [ebx + ecx*4], eax
mov eax, edi
cmp dword [ebp - 0x3c], edi
mov ecx, dword [ebp - 0x2c]
cmovg eax, dword [ebp - 0x3c]
mov dword [esi + ecx*4], eax
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x34]
dec eax
sub ecx, 0xc
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x18], ecx
test eax, eax
jns 0x100263df
xor ebx, ebx
cmp dword [ebp - 0x48], 0
mov esi, ebx
jle 0x10026491
mov ebx, dword [ebp - 0x58]
xor eax, eax
mov ecx, esi
and ecx, 0x1f
inc eax
mov edx, esi
shl eax, cl
mov ecx, dword [ebp - 0x68]
shr edx, 5
test dword [ecx + edx*4], eax
jne 0x1002647a
cmp dword [ebx + esi*4], edi
mov eax, edi
cmovg eax, dword [ebx + esi*4]
mov dword [ebx + esi*4], eax
push dword [ebx + esi*4]
push 0x10007fe8
call fcn.100504bf
inc esi
pop ecx
pop ecx
cmp esi, dword [ebp - 0x48]
jl 0x10026457
xor ebx, ebx
lea ecx, [ebp - 0x94]
call fcn.10027cf9
mov eax, dword [ebp - 0x68]
mov dword [ebp - 0x5c], ebx
test eax, eax
je 0x100264b6
push eax
call fcn.10050627
pop ecx
mov dword [ebp - 0x68], ebx
mov dword [ebp - 0x64], ebx
mov dword [ebp - 0x60], ebx
or dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x58]
test eax, eax
je 0x100264d1
push eax
call fcn.10050627
pop ecx
mov dword [ebp - 0x58], ebx
mov dword [ebp - 0x54], ebx
mov dword [ebp - 0x50], ebx
cmp byte [ebp - 0x11], 0
je 0x100264ed
push 0x10c3
push 0x2050
push 0xb8a
push ebx
call dword [sym.imp.USER32.dll_GetMessageA]
dec dword [ebp - 0x24]
jns 0x10026269
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 3
jle 0x100261e8
jmp 0x10026532
cmp dword [ebp - 0x2c], 2
jne 0x1002643c
mov ebx, dword [ecx]
cmp edi, dword [ebx + 4]
cmovle edi, dword [ebx + 4]
mov ebx, dword [ebp - 0x68]
jmp 0x1002643c
mov byte [ebp - 0x11], bl
cmp byte [ebp - 0x11], bl
je 0x10026532
push ebx
push ebx
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_CreatePipe]
mov dword [ebp - 0x1c], 0xccba
xor eax, eax
push 0xfffffffffffffff6
pop esi
mov dword [ebp - 0x30], esi
inc eax
mov dword [ebp - 0x24], 0xe75d5f8d
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x28], 0x53526c71
mov dword [ebp - 0x34], 6
mov dword [ebp - 0x18], 0xfffffff8
cmp dword [ebp - 0x30], ebx
je 0x1002656c
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x30]
cmp eax, 1
setl cl
mov dword [ebp - 0x24], ecx
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x1c]
neg ecx
sbb ecx, ecx
neg ecx
mov dword [ebp - 0x28], ecx
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], ebx
je 0x10026611
mov dword [ebp - 0x1c], 0x951fe511
mov dword [ebp - 0x2c], 9
cmp dword [ebp - 0x34], ebx
je 0x100265c1
cmp dword [ebp - 0x1c], ebx
jne 0x100265d2
cmp dword [ebp - 0x18], ebx
jne 0x100265cf
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x28]
dec eax
neg eax
push 0x16
sbb eax, eax
neg eax
pop edi
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x28], edi
jmp 0x10026609
mov dword [ebp - 0x20], ebx
jmp 0x10026601
mov byte [ebp - 0x11], bl
cmp byte [ebp - 0x11], 0
je 0x100265fe
push ebx
push ebx
push ebx
call dword [sym.imp.ADVAPI32.dll_RegLoadKeyW]
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], edi
jl 0x100265ec
dec dword [ebp - 0x28]
cmp dword [ebp - 0x28], 5
jl 0x100265e7
jmp 0x10026666
mov dword [ebp - 0x1c], ebx
jmp 0x10026627
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x148], 0x37a
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 3
jl 0x10026616
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x148]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x140]
mov eax, dword [ebp - 0x18]
sub eax, 2
neg eax
push 0x16
sbb eax, eax
xor edx, edx
inc eax
imul ecx, eax, 0xfffff61a
mov eax, dword [ebp - 0x20]
pop edi
cmp ecx, eax
setl dl
mov dword [ebp - 0x28], edx
mov eax, dword [ebp - 0x30]
lea ecx, [ebp - 0xa0]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x28]
cmp dword [ebp - 0x34], 0xffff
push 1
sbb eax, eax
inc eax
mov dword [ebp - 0x28], eax
call fcn.1001f933
xor edx, edx
mov dword [ebp - 0x28], ebx
inc edx
jmp 0x100266ab
mov eax, dword [ebp - 0x28]
mov dword [ebp + eax*4 - 0x44], 0x4a6847df
inc dword [ebp - 0x28]
cmp dword [ebp - 0x28], edx
jl 0x1002669d
mov dword [ebp - 0x28], ebx
jmp 0x100266c8
mov ecx, dword [ebp - 0x28]
mov eax, dword [ebp - 0xa0]
mov dword [eax + ecx*4], 0xfffffffd
inc dword [ebp - 0x28]
cmp dword [ebp - 0x28], edx
jl 0x100266b5
mov byte [ebp - 0x11], bl
cmp byte [ebp - 0x11], 0
je 0x100266dc
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov eax, dword [ebp - 0xa0]
mov dword [eax], ebx
mov dword [ebp - 0x18], ebx
jmp 0x100266fa
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xbc], 3
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 3
jl 0x100266e9
mov dword [ebp - 0xb8], ebx
cmp dword [ebp - 0xb8], ebx
jl 0x10026777
mov dword [ebp - 0x1c], 0xedcad20
mov dword [ebp - 0x1c], ebx
cmp dword [ebp - 0x1c], ebx
jl 0x10026763
mov dword [ebp - 0x18], 0xfffffff9
mov dword [ebp - 0x18], ebx
jmp 0x10026746
mov eax, dword [ebp - 0xb8]
mov dword [ebp + eax*4 - 0x44], ecx
mov byte [ebp - 0x11], bl
cmp byte [ebp - 0x11], 0
je 0x10026743
push ebx
call dword [sym.imp.KERNEL32.dll_HeapDestroy]
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp + eax*4 - 0x44]
jle 0x10026729
mov eax, dword [ebp - 0xa0]
mov eax, dword [eax]
mov dword [ebp + eax*4 - 0x44], ecx
dec dword [ebp - 0x1c]
jns 0x1002671d
mov eax, dword [ebp - 0xa0]
mov eax, dword [eax]
mov eax, dword [ebp + eax*4 - 0x44]
dec dword [ebp - 0xb8]
jns 0x1002670e
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp - 0xa0]
inc dword [eax]
cmp dword [eax], 0
jle 0x100266e4
lea ecx, [ebp - 0xa0]
call fcn.1001f9b5
mov eax, dword [0x1006f60c]
lea ecx, [ebp - 0x104]
mov dword [ebp - 0x18], 0xffffffff
push 2
mov dword [ebp - 0x34], eax
call fcn.1001f933
mov dword [ebp - 0x18], ebx
jmp 0x100267ca
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x104]
mov dword [eax + ecx*4], 0x5a40f2fd
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 2
jl 0x100267b7
mov dword [ebp - 0x18], 0xffffffe2
jmp 0x10026858
mov dword [ebp - 0x24], 0xcb457102
mov byte [ebp - 0x11], bl
cmp byte [ebp - 0x11], 0
je 0x100267f7
push 0x1978
push ebx
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_GetLocaleInfoA]
mov dword [ebp - 0x24], ebx
jmp 0x1002684f
mov dword [ebp - 0x1c], 0xffffffff
cmp dword [ebp - 0x1c], ebx
jne 0x10026855
mov dword [ebp - 0x1c], 0xffffffed
jmp 0x10026846
mov dword [ebp - 0x2c], 0xffffffff
mov dword [ebp - 0x3c], 0xffffffff
cmp dword [ebp - 0x2c], esi
jbe 0x1002683d
mov eax, dword [ebp - 0x104]
mov dword [eax + 4], 0xfffffff7
imul eax, dword [ebp - 0x24], 0xfffffff7
test eax, eax
jne 0x1002683d
mov eax, ebx
jmp 0x10026840
xor eax, eax
inc eax
mov dword [ebp - 0x3c], eax
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 8
jg 0x10026811
dec dword [ebp - 0x24]
cmp dword [ebp - 0x24], 0xffffffef
jg 0x100267fc
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 0xe
jge 0x100267d9
lea ecx, [ebp - 0x104]
call fcn.1001f9b5
cmp byte [ebp - 0x40], 0
mov esi, dword [ebp + 8]
mov dword [esi], ebx
mov dword [esi + 4], ebx
mov dword [esi + 8], ebx
mov dword [esi + 0xc], ebx
je 0x1002698c
xor eax, eax
inc eax
cmp dword [ebp - 0x34], eax
jne 0x1002698c
mov dword [ebp - 0x20], 0xfffe
lea ecx, [ebp - 0xe0]
mov dword [ebp - 0x18], 0xfffffff7
push eax
call fcn.1001f933
xor edx, edx
mov dword [ebp - 0x2c], 0x2955f1bb
mov dword [ebp - 0x28], ebx
inc edx
jmp 0x100268c9
mov ecx, dword [ebp - 0x28]
mov eax, dword [ebp - 0xe0]
mov dword [eax + ecx*4], ebx
inc dword [ebp - 0x28]
cmp dword [ebp - 0x28], edx
jl 0x100268ba
mov dword [ebp - 0x28], ebx
jmp 0x100268e4
mov eax, dword [ebp - 0x28]
mov dword [ebp + eax*4 - 0x130], 0x4abf0a64
inc dword [ebp - 0x28]
cmp dword [ebp - 0x28], 2
jl 0x100268d3
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
add eax, dword [ebp - 0x20]
cmp eax, 9
mov eax, dword [ebp - 0x20]
sbb ecx, ecx
xor edx, edx
inc ecx
cmp ecx, eax
mov eax, dword [ebp - 0x20]
setne dl
xor ecx, ecx
cmp edx, eax
setle cl
xor edx, edx
mov dword [ebp - 0x18], ecx
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0xe0]
cmp ecx, dword [eax]
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x2c]
setne dl
add ecx, edx
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x20]
setge dl
xor ecx, ecx
cmp eax, edx
mov eax, dword [ebp - 0xe0]
setne cl
mov dword [eax], ecx
mov dword [ebp - 0x130], 1
mov byte [ebp - 0x11], bl
cmp byte [ebp - 0x11], 0
je 0x10026973
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_FormatMessageW]
lea ecx, [ebp - 0xe0]
call fcn.1001f9b5
mov dword [esi + 8], 4
mov dword [esi + 0xc], 0x1006f60c
mov dword [ebp - 0x1c], 0xffffffff
lea ecx, [ebp - 0xf8]
push 3
call fcn.1001f933
mov dword [ebp - 4], 4
mov dword [ebp - 0x18], 0xd6b9c2d6
mov dword [ebp - 0x2c], 0xfff8
mov dword [ebp - 0x18], ebx
jmp 0x100269ca
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0xf8]
or dword [eax + ecx*4], 0xffffffff
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 3
jl 0x100269ba
mov dword [ebp - 0x1c], edi
jmp 0x10026aaf
push dword [ebp + 8]
movdqa xmm0, xmmword [0x10008cd0]
lea eax, [ebp - 0x148]
push eax
lea eax, [ebp - 0x158]
mov dword [ebp - 0xb0], ebx
push eax
push ebx
lea ecx, [ebp - 0xb0]
mov dword [ebp - 0xac], ebx
movdqu xmmword [ebp - 0x158], xmm0
mov dword [ebp - 0xa8], ebx
call fcn.10024e74
mov esi, dword [ebp - 0xb0]
mov dword [ebp - 0x2c], ebx
mov dword [esi + 0xc], ebx
mov eax, dword [esi + 0xc]
mov edx, dword [ebp - 0xf8]
mov edx, dword [edx + eax*4]
test edx, edx
je 0x10026a3e
test eax, eax
je 0x10026a3e
xor ecx, ecx
inc ecx
mov edi, ecx
jmp 0x10026a43
xor ecx, ecx
mov edi, ebx
inc ecx
mov eax, dword [ebp - 0xf8]
mov eax, dword [eax]
imul eax, edi
test eax, eax
je 0x10026a68
xor eax, eax
cmp edx, 0xea0d
sete al
add eax, 0x3f0244c
cmp eax, edx
mov eax, ecx
jg 0x10026a6a
mov eax, ebx
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x2c], eax
mov byte [ebp - 0x11], bl
cmp byte [ebp - 0x11], 0
je 0x10026a92
push ecx
push 0x1b00
push 0x1803
push 0xeab
call dword [sym.imp.USER32.dll_SetScrollPos]
inc dword [esi + 0xc]
cmp dword [esi + 0xc], 2
jle 0x10026a23
mov eax, dword [ebp - 0x1c]
lea ecx, [ebp - 0xb0]
mov dword [ebp - 0x18], eax
call fcn.1001f9b5
dec dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 0xfffffffa
jne 0x100269d8
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xf8]
call fcn.1001f9b5
mov edi, dword [ebp - 0x38]
cmp edi, dword [ebp - 0x34]
jge 0x10026fca
xor ecx, ecx
mov dword [ebp - 0x24], 0x5a136951
mov esi, 0x1006f610
mov dword [ebp - 0x18], ebx
inc ecx
jmp 0x10026af9
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x88], 0x8ec0ae97
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ecx
jl 0x10026ae8
mov dword [ebp - 0x24], ebx
jmp 0x10026b1a
mov eax, dword [ebp - 0x24]
mov ecx, dword [ebp + eax*4 - 0x88]
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0x88], ecx
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], ebx
jle 0x10026b03
mov byte [ebp - 0x11], bl
cmp byte [ebp - 0x11], 0
je 0x10026b2f
push ebx
call dword [sym.imp.KERNEL32.dll_EncodePointer]
test edi, edi
jle 0x10026d17
mov dword [ebp - 0x30], 0xac204e2
mov dword [ebp - 0x30], ebx
jmp 0x10026b7c
mov dword [ebp - 0x1c], 0xa29
mov eax, dword [ebp - 0x30]
cmp dword [ebp - 0x30], ebx
jne 0x10026b82
cmp dword [ebp - 0x1c], ebx
jne 0x10026b82
mov dword [ebp - 0x1c], 0xc
jmp 0x10026b73
mov byte [ebp - 0x11], bl
cmp byte [ebp - 0x11], 0
je 0x10026b70
push ebx
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 0x25
jl 0x10026b60
dec dword [ebp - 0x30]
cmp dword [ebp - 0x30], 0xffffffed
jle 0x10026b43
mov byte [ebp - 0x11], bl
cmp byte [ebp - 0x11], 0
je 0x10026b91
call dword [sym.imp.KERNEL32.dll_GetUserDefaultLCID]
mov eax, dword [esi]
lea ecx, [ebp - 0x13c]
mov edi, dword [esi + 4]
mov dword [ebp - 0x2c], 0x4543
mov dword [ebp - 0x2c], 0xfffffffb
mov dword [ebp - 0x2c], 0x79cf1813
mov dword [ebp - 0x2c], 0xffffffff
mov dword [ebp - 0x2c], 0xffffffff
mov dword [ebp - 0x3c], 0x92c5eb20
mov dword [ebp - 0x3c], 1
mov dword [ebp - 0x3c], 0xfffffff8
mov dword [ebp - 0x3c], 0x4f1f13b0
mov dword [ebp - 0x3c], 0xffffffff
push 3
mov dword [ebp - 0x30], eax
call fcn.1001f933
mov dword [ebp - 0x3c], 5
mov dword [ebp - 0x3c], 1
mov dword [ebp - 0x18], 0x3d9c8c74
mov dword [ebp - 0x18], ebx
jmp 0x10026c19
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x13c]
mov dword [eax + ecx*4], 0xbfb3a4d
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 3
jl 0x10026c06
mov eax, dword [ebp - 0x2c]
lea ecx, [ebp - 0x13c]
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x2c], eax
call fcn.1001f9b5
mov dword [ebp - 0x18], 0xffffffff
add esi, 8
mov dword [ebp - 0x2c], 0x73eb
mov dword [ebp - 0x18], ebx
jmp 0x10026c63
cmp dword [ebp - 0x2c], ebx
jne 0x10026c69
mov byte [ebp - 0x11], bl
cmp byte [ebp - 0x11], 0
je 0x10026c60
push ebx
push ebx
push ebx
call dword [sym.imp.GDI32.dll_TranslateCharsetInfo]
dec dword [ebp - 0x18]
cmp dword [ebp - 0x18], 0xffffffe5
jne 0x10026c49
test edi, edi
jne 0x10026c70
add esi, 8
push 3
lea ecx, [ebp - 0x110]
call fcn.1001f933
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x18], ebx
jmp 0x10026c98
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x110]
mov dword [eax + ecx*4], 0xfffffffe
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 3
jl 0x10026c85
mov dword [ebp - 0x24], 2
cmp dword [ebp - 0x24], ebx
jl 0x10026cee
mov dword [ebp - 0x1c], 7
mov dword [ebp - 0x1c], 2
cmp dword [ebp - 0x1c], ebx
jl 0x10026ce9
mov dword [ebp - 0x18], 1
mov dword [ebp - 0x18], ebx
jmp 0x10026cdb
mov edx, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x110]
mov eax, dword [ecx + eax*4]
mov dword [ecx + edx*4], eax
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 2
mov eax, dword [ebp - 0x1c]
jle 0x10026cc9
dec dword [ebp - 0x1c]
jns 0x10026cbd
dec dword [ebp - 0x24]
jns 0x10026caa
mov byte [ebp - 0x11], bl
cmp byte [ebp - 0x11], 0
je 0x10026d00
push ebx
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_EnumResourceTypesW]
lea ecx, [ebp - 0x110]
call fcn.1001f9b5
add esi, dword [ebp - 0x30]
dec dword [ebp - 0x38]
jne 0x10026b37
mov edi, dword [esi]
add esi, 4
mov dword [ebp - 0x38], 0x7ad1
cmp dword [ebp - 0x38], 0x7ce8
mov dword [ebp - 0x24], edi
mov dword [ebp - 0x18], esi
jle 0x10026d76
mov esi, ebx
mov edi, ebx
mov dword [ebp - 0x2c], ebx
lea eax, [edi + esi]
mov ecx, 0x106107f8
or eax, ebx
cdq
push edx
push eax
call fcn.1001f6de
inc ebx
cmp ebx, 0x7805
jl 0x10026d39
inc edi
push 0
pop ebx
cmp edi, 0x2886
jl 0x10026d36
inc esi
cmp esi, 0x2eb7
jl 0x10026d34
push ebx
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov esi, dword [ebp - 0x18]
mov edi, dword [ebp - 0x24]
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 4], 5
cmp dword [ebp - 0x38], 0x79f0
jge 0x10026d98
mov edx, 0x10007ff0
mov ecx, 0x106107f8
call fcn.10023d4b
or dword [ebp - 4], 0xffffffff
push 3
lea ecx, [ebp - 0x11c]
call fcn.1001f933
mov dword [ebp - 4], 7
lea ecx, [ebp - 0xec]
mov dword [ebp - 0x38], 8
mov dword [ebp - 0x18], 0x3ccde6bc
push 2
call fcn.1001f933
xor edx, edx
inc edx
mov dword [ebp - 0x2c], edx
mov dword [ebp - 0x3c], 0xe9f21c9b
mov dword [ebp - 0x30], 0xaa2910a8
mov dword [ebp - 0x20], ebx
jmp 0x10026e1f
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x11c]
mov dword [eax + ecx*4], 0x678dc2a8
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 3
jl 0x10026e0c
mov dword [ebp - 0x20], ebx
jmp 0x10026e3d
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0xec]
mov dword [eax + ecx*4], 0xcf86
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 2
jl 0x10026e2a
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0xec]
mov eax, dword [eax]
inc eax
je 0x10026e5c
mov dword [ebp - 0x24], edx
cmp dword [ebp - 0x18], ebx
jne 0x10026e5f
mov dword [ebp - 0x24], ebx
inc dword [ebp - 0x38]
xor ecx, ecx
mov eax, dword [ebp - 0x18]
add eax, dword [ebp - 0x38]
cmp eax, dword [ebp - 0x24]
setge cl
cmp ecx, dword [ebp - 0x2c]
jne 0x10026e7a
cmp dword [ebp - 0x3c], ebx
jne 0x10026e7c
mov edx, ebx
mov eax, dword [ebp - 0x30]
add eax, edx
je 0x10026e86
mov eax, dword [ebp - 0x30]
dec dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0xec]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x11c]
mov dword [eax + 4], ecx
lea ecx, [ebp - 0xec]
call fcn.1001f9b5
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x11c]
call fcn.1001f9b5
mov edx, dword [esi]
xor ecx, ecx
mov dword [ebp - 0x1c], 0x29a3df60
inc ecx
mov dword [ebp - 0x18], ebx
jmp 0x10026ed9
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x84], 0xf1124f01
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ecx
jl 0x10026ec8
mov dword [ebp - 0x1c], ebx
cmp dword [ebp - 0x1c], ebx
jl 0x10026f02
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp + eax*4 - 0x84]
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x84], ecx
dec dword [ebp - 0x1c]
jns 0x10026ee6
xor ecx, ecx
inc ecx
test edx, edx
jne 0x10026fca
cmp byte [ebp - 0x40], dl
je 0x10026f1d
cmp dword [ebp - 0x34], ecx
jne 0x10026f1d
mov ecx, dword [ebp + 8]
lea eax, [edi + 0x10]
add dword [ecx + 8], eax
mov eax, dword [esi + 4]
mov dword [ebp - 0x38], eax
mov eax, dword [esi + 8]
push edi
mov dword [ebp - 0x2c], eax
call fcn.1004b7fd
pop ecx
mov dword [ebp - 0x18], eax
lea ecx, [ebp - 0x80]
lea eax, [ebp - 0xa4]
mov dword [ebp - 0xa4], ebx
push eax
push edi
mov dword [ebp - 0x80], ebx
mov dword [ebp - 0x7c], ebx
mov dword [ebp - 0x78], ebx
call fcn.10027d2d
mov ecx, dword [ebp - 0x80]
mov edx, ebx
mov dword [ebp - 0x34], edx
test edi, edi
jle 0x10026fa9
mov eax, edx
and eax, 0x80000001
jns 0x10026f6c
dec eax
or eax, 0xfffffffe
inc eax
neg eax
sbb eax, eax
and eax, dword [ebp - 0x38]
add eax, edx
add eax, dword [ebp - 0x38]
imul eax, dword [ebp - 0x2c]
jmp 0x10026f81
lea eax, [edx + 1]
cdq
idiv edi
cmp word [ecx + edx*2], bx
jne 0x10026f7e
xor eax, eax
inc eax
mov word [ecx + edx*2], ax
mov al, byte [edx + esi + 0xc]
mov edx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x18]
mov byte [edx + ecx], al
inc edx
mov ecx, dword [ebp - 0x80]
mov dword [ebp - 0x34], edx
cmp edx, edi
jl 0x10026f5e
mov esi, dword [ebp + 8]
mov eax, dword [ebp - 0x18]
mov dword [esi], edi
mov dword [esi + 4], eax
test ecx, ecx
je 0x10026fcd
push ecx
call fcn.10050627
pop ecx
mov dword [ebp - 0x80], ebx
mov dword [ebp - 0x7c], ebx
mov dword [ebp - 0x78], ebx
jmp 0x10026fcd
mov esi, dword [ebp + 8]
mov dword [ebp + 8], 0xa5d6c05b
lea ecx, [ebp - 0x128]
mov dword [ebp + 8], 0xffffffff
mov dword [ebp + 8], ebx
push 1
call fcn.1001f933
xor edx, edx
mov dword [ebp - 0x38], 0x5d72
mov dword [ebp + 8], ebx
inc edx
jmp 0x1002700d
mov ecx, dword [ebp + 8]
mov eax, dword [ebp - 0x128]
mov dword [eax + ecx*4], 0x3c891c55
inc dword [ebp + 8]
cmp dword [ebp + 8], edx
jl 0x10026ffa
mov byte [ebp + 0xb], bl
cmp byte [ebp + 0xb], 0
je 0x1002702b
push 0x1174
push 0x1968
call dword [sym.imp.GDI32.dll_SetROP2]
mov dword [ebp + 8], ebx
jmp 0x10027052
mov dword [ebp - 0x2c], 0xfffffff8
mov dword [ebp - 0x2c], 0x121f90ef
mov dword [ebp - 0x2c], 0xffffffff
mov dword [ebp - 0x2c], 0x4a75
inc dword [ebp - 0x38]
dec dword [ebp + 8]
cmp dword [ebp + 8], 0xfffffffd
jl 0x10027030
lea ecx, [ebp - 0x128]
call fcn.1001f9b5
mov ecx, dword [ebp - 0xc]
mov eax, esi
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret