Function at 0x10017ed7
Capabilities:
Create pipe
Delete file
Get geographical location
Get thread local storage value

Disassembly:
mov eax, 0x1005f1a3
call fcn.1005e378
sub esp, 0x238
push ebx
xor ebx, ebx
mov dword [ebp - 0x38], 0xfe38
push esi
mov byte [ebp - 0x15], bl
push edi
mov dword [ebp - 0x10], esp
mov dword [ebp - 0xb0], edx
mov dword [ebp - 0x78], ecx
mov dword [ebp - 0x180], ebx
cmp byte [ebp - 0x15], bl
je 0x10017f2c
push ebx
push 0x1f37
push 0x270f
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_GetCharABCWidthsFloatA]
mov dword [ebp - 0x34], 0x6e44
cmp dword [ebp - 0x34], 0x6f2d
jle 0x10017f8b
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov esi, ebx
mov edi, ebx
mov ecx, edi
mov eax, esi
sar eax, cl
lea ecx, [ebp - 0x1f8]
cdq
push edx
push eax
call fcn.10001a9f
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x10017f64
mov eax, dword [eax]
push eax
call fcn.10046233
pop ecx
push ebx
push 1
lea ecx, [ebp - 0x1f8]
call fcn.1000ebf5
inc edi
cmp edi, 0x3b83
jl 0x10017f46
inc esi
cmp esi, 0x3a8
jl 0x10017f44
mov byte [ebp - 0x15], bl
cmp byte [ebp - 0x15], bl
je 0x10017f9a
push ebx
call dword [sym.imp.USER32.dll_RegisterClassA]
cmp dword [ebp - 0x34], 0x6b7d
jge 0x10017fae
push str.awqygg_dahmctjv_nqpzlmr_sclyhnx_nktttmkjj
call fcn.10046233
pop ecx
or dword [ebp - 4], 0xffffffff
mov dword [ebp - 0x1c], 0x6d444182
mov dword [ebp - 0x24], ebx
jmp 0x10017fcf
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0x1c8], 0xfd5464b5
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 2
jl 0x10017fbe
mov dword [ebp - 0x1c], 1
cmp dword [ebp - 0x1c], ebx
jl 0x10018005
mov byte [ebp - 0x15], bl
cmp byte [ebp - 0x15], bl
je 0x10018000
push 0xe07
push 0x165e
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_CheckDlgButton]
dec dword [ebp - 0x1c]
jns 0x10017fe1
mov dword [ebp - 0x64], 0x2800ce02
lea ecx, [ebp - 0x134]
mov dword [ebp - 0x60], 0x34011b06
mov dword [ebp - 0x5c], 0xe033001
mov dword [ebp - 0x58], 0xd050304
mov dword [ebp - 0x24], 0xe307
mov dword [ebp - 0x20], 0xd3aeb590
mov dword [ebp - 0x34], 0x6df7
push 1
call fcn.1000e43e
mov dword [ebp - 0x30], 0xe7587697
mov dword [ebp - 0x2c], 0x97d93cb
mov dword [ebp - 0x2c], 0xe86de1f1
mov dword [ebp - 0x1c], ebx
jmp 0x10018070
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x134]
mov dword [eax + ecx*4], 1
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 1
jl 0x1001805d
cmp dword [ebp - 0x24], ebx
je 0x1001808a
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
imul eax, dword [ebp - 0x34], 0x42c7
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x24], ebx
jmp 0x10018112
mov dword [ebp - 0x1c], 8
xor ecx, ecx
mov dword [ebp - 0x1c], 7
mov dword [ebp - 0x28], 7
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x1c], 0xfffffffa
imul eax, dword [ebp - 0x1c], 0xffff
cmp eax, 1
setl cl
xor edx, edx
mov dword [ebp - 0x1c], ecx
mov ecx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x1c]
cmp eax, ecx
setle dl
xor ecx, ecx
lea eax, [edx*4 + 1]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x28]
cmp eax, 0xe094bf7d
setne cl
mov dword [ebp - 0x2c], ecx
dec dword [ebp - 0x24]
cmp dword [ebp - 0x24], 0xffffffeb
jge 0x1001809f
lea ecx, [ebp - 0x134]
call fcn.1000e4c1
push 0x6f
pop eax
push 2
mov word [ebp - 0xc8], ax
mov edi, ebx
pop esi
mov dword [ebp - 0x34], esi
cmp esi, 0x10
jae 0x10018518
mov dword [ebp - 0x20], 0xf251d69f
xor edx, edx
mov dword [ebp - 0x2c], 0x35637001
inc edx
mov dword [ebp - 0x100], edx
mov dword [ebp - 0xfc], edx
mov dword [ebp - 0xf8], edx
mov dword [ebp - 0xf4], edx
mov dword [ebp - 0x30], 0xffffffff
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x1c], ebx
jmp 0x10018184
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x6c], 0x6a53d06c
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 2
jl 0x10018176
mov dword [ebp - 0x20], edx
cmp dword [ebp - 0x20], ebx
jl 0x10018261
mov dword [ebp - 0x24], 0x732aa61f
lea ecx, [ebp - 0x128]
mov dword [ebp - 0x38], edx
push 3
call fcn.1000e43e
mov dword [ebp - 0x38], 3
mov dword [ebp - 0x38], 0x248e6bae
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x1c], ebx
jmp 0x100181d6
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x128]
mov dword [eax + ecx*4], 1
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 3
jl 0x100181c3
mov eax, dword [ebp - 0x20]
cmp dword [ebp + eax*4 - 0x6c], ebx
jne 0x100181f5
mov eax, dword [ebp - 0x20]
cmp dword [ebp + eax*4 - 0x6c], ebx
jne 0x100181f5
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp + eax*4 - 0x6c]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp + eax*4 - 0x6c]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp + eax*4 - 0x6c]
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x24], 0x62b000cd
mov dword [ebp - 0x24], ebx
jmp 0x10018244
mov dword [ebp - 0x1c], ebx
jmp 0x10018228
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0xa0], 7
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 1
jl 0x10018217
mov byte [ebp - 0x15], bl
cmp byte [ebp - 0x15], 0
je 0x1001823e
push ebx
call dword [sym.imp.GDI32.dll_CreateBitmapIndirect]
inc dword [ebp - 0x28]
dec dword [ebp - 0x24]
cmp dword [ebp - 0x24], 0xffffffe7
jg 0x10018212
lea ecx, [ebp - 0x128]
call fcn.1000e4c1
dec dword [ebp - 0x20]
push 1
pop edx
jns 0x10018196
cmp dword [ebp - 0x68], ebx
jne 0x10018282
mov eax, dword [ebp - 0x2c]
sub eax, dword [ebp - 0x2c]
jne 0x10018282
mov eax, dword [ebp - 0x30]
mov ecx, 0x69a3
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x6c]
sub ecx, eax
jne 0x10018282
mov edx, ebx
mov ecx, dword [ebp - 0x68]
xor eax, eax
mov dword [ebp - 0x100], ecx
neg ecx
cmp ecx, edx
setne al
mov dword [ebp - 0x28], eax
movzx eax, byte [ebp - 0x64]
lea eax, [eax*2 + 2]
cmp esi, eax
jne 0x10018383
mov dword [ebp - 0x24], 0x5c68ec0a
mov dword [ebp - 0x2c], 0xcee61780
mov dword [ebp - 0x30], 0xd6273d59
mov dword [ebp - 0x34], 0x29c4ddb8
mov dword [ebp - 0x24], ebx
jmp 0x10018352
push dword [ebp - 0xa0]
movdqa xmm0, xmmword [0x1006e040]
lea eax, [ebp - 0x1b0]
push eax
lea eax, [ebp - 0x1c0]
mov dword [ebp - 0x84], ebx
push eax
push ebx
lea ecx, [ebp - 0x84]
mov dword [ebp - 0x80], ebx
movdqu xmmword [ebp - 0x1c0], xmm0
mov dword [ebp - 0x7c], ebx
call fcn.1001187e
mov ecx, dword [ebp - 0x84]
xor edx, edx
mov dword [ebp - 0x30], 1
cmp dword [ecx], 1
setge dl
xor eax, eax
cmp edx, dword [ecx + 0xc]
lea ecx, [ebp - 0x84]
setne al
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x84]
mov eax, dword [eax + 4]
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x34], ebx
jne 0x1001835e
call fcn.1000e4c1
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 0xf
jne 0x100182ce
jmp 0x10018363
call fcn.1000e4c1
mov byte [ebp - 0x15], bl
cmp byte [ebp - 0x15], 0
je 0x10018373
push ebx
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
movzx eax, byte [ebp + esi - 0x64]
dec esi
add esi, eax
lea edi, [eax + 1]
jmp 0x10018510
movzx edx, byte [ebp + esi - 0x63]
mov eax, esi
sub eax, edi
movzx eax, byte [ebp + eax - 0x66]
movzx eax, word [ebp + eax*2 - 0xcc]
mov ecx, eax
and eax, edx
or ecx, edx
sub ecx, eax
movzx eax, byte [ebp + esi - 0x64]
mov word [ebp + eax*2 - 0xcc], cx
mov dword [ebp - 0x20], 0xfffb
mov dword [ebp - 0x2c], 0x67684593
mov dword [ebp - 0x24], 7
mov dword [ebp - 0x1c], ebx
jmp 0x100183d9
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x9c], 4
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 3
jl 0x100183c8
cmp dword [ebp - 0x20], ebx
je 0x1001843b
jg 0x100183ec
jne 0x100183ec
mov eax, ebx
jmp 0x100183ef
xor eax, eax
inc eax
cmp eax, dword [ebp - 0x20]
jl 0x100183f9
xor ecx, ecx
inc ecx
jmp 0x100183fb
mov ecx, ebx
mov eax, dword [ebp - 0x20]
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x20]
setl dl
xor ecx, ecx
add edx, 0x3d19f83
cmp edx, eax
setl cl
mov dword [ebp - 0x9c], ecx
mov dword [ebp - 0x2c], ecx
mov eax, dword [ebp - 0x20]
sub eax, dword [ebp - 0x20]
add eax, dword [ebp - 0x2c]
cmp eax, dword [ebp - 0x20]
jle 0x10018432
mov eax, dword [ebp - 0x9c]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x9c]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x98]
mov eax, dword [ebp - 0x20]
imul ecx, eax
cmp ecx, dword [ebp - 0x24]
jne 0x10018505
mov dword [ebp - 0x28], 0x6eb81f94
mov dword [ebp - 0x2c], 0x6b37
cmp dword [ebp - 0x2c], 0x6e34
jle 0x10018499
mov esi, ebx
mov edi, ebx
mov ecx, edi
mov eax, esi
shl eax, cl
mov ecx, 0x1007acd8
cdq
push edx
push eax
call fcn.1000e15c
inc edi
cmp edi, 0x16fc
jl 0x10018471
inc esi
cmp esi, 0x4a8a
jl 0x1001846f
mov esi, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x28]
xor edx, edx
add ecx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x24]
cmp eax, ecx
mov eax, dword [ebp - 0x28]
setne dl
xor ecx, ecx
test eax, eax
setg cl
sub ecx, edx
imul eax, ecx, 5
mov dword [ebp - 0x28], eax
mov dword [ebp - 4], 2
cmp dword [ebp - 0x2c], 0x6ab6
jge 0x100184da
mov edx, str.yzfgwi_itllu_zaivajwh_pys_dokz_bgwsk_nnh_dlj_msx_vdsedsdo_jbjdoeb_qngezly
mov ecx, 0x1007acd8
call fcn.10010ea8
or dword [ebp - 4], 0xffffffff
jmp 0x1001850e
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x9c], eax
mov edi, ebx
add esi, 2
jmp 0x10018132
mov dword [ebp - 0x38], 0xfffffff8
mov byte [ebp - 0x15], bl
cmp byte [ebp - 0x15], 0
je 0x1001854b
push ebx
push 0x1713
push 0x8ce
push 0x123f
push 0x1b62
push 0x2627
push 0x29
push ebx
call dword [sym.imp.KERNEL32.dll_CreateNamedPipeA]
mov byte [ebp - 0x15], bl
cmp byte [ebp - 0x15], 0
je 0x10018565
push 0x15d8
push 0x28e
push ebx
call dword [sym.imp.GDI32.dll_PtInRegion]
xor eax, eax
lea ecx, [ebp - 0x11c]
push 1
mov word [ebp - 0xbe], ax
call fcn.1000e43e
push 4
pop eax
mov dword [ebp - 4], eax
lea ecx, [ebp - 0x17c]
mov dword [ebp - 0x38], 0xd9d75405
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x2c], 0xfffffffe
mov dword [ebp - 0x30], ebx
push eax
call fcn.1000e43e
push 3
lea ecx, [ebp - 0x158]
mov byte [ebp - 4], 5
call fcn.1000e43e
mov byte [ebp - 4], 6
mov dword [ebp - 0x24], 0xb6fb96f
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x44], 0x8600
mov dword [ebp - 0x38], 0xa10b
mov dword [ebp - 0x20], ebx
jmp 0x100185e1
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x74], 0xfffffff7
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 2
jl 0x100185d3
mov dword [ebp - 0x24], 0x85b
cmp dword [ebp - 0x24], 0xc09
jle 0x1001865b
mov dword [ebp - 0x1c], ebx
mov eax, ebx
mov dword [ebp - 0x28], 0xd7f
mov dword [ebp - 0x34], eax
mov esi, eax
mov dword [ebp - 0x2c], 0xddd
mov edi, ebx
mov eax, esi
mov ecx, 0x1007acd8
xor eax, edi
cdq
push edx
push eax
call fcn.1000e15c
inc edi
cmp edi, 0xd45
jl 0x10018611
dec esi
dec dword [ebp - 0x2c]
jne 0x1001860f
mov eax, dword [ebp - 0x34]
mov esi, dword [ebp - 0x1c]
add eax, esi
dec dword [ebp - 0x28]
mov dword [ebp - 0x34], eax
jne 0x10018606
inc esi
mov dword [ebp - 0x1c], esi
cmp esi, 0x1a67
jl 0x100185fa
push 0x2030
push ebx
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_GetLocaleInfoA]
xor edx, edx
mov dword [ebp - 0x20], ebx
inc edx
jmp 0x10018676
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x11c]
mov dword [eax + ecx*4], 0x3629aa8
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], edx
jl 0x10018663
mov byte [ebp - 4], 7
cmp dword [ebp - 0x24], 0x6a8
jge 0x100186b8
mov edx, str.nqal_dssbxlvr_hwyq_kmzvw_dbodf
mov ecx, 0x1007acd8
call fcn.10010ea8
jmp 0x100186b5
xor edx, edx
inc edx
mov dword [ebp - 4], 6
mov dword [ebp - 0x20], ebx
jmp 0x100186d7
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x17c]
mov dword [eax + ecx*4], 0x47e0fa1a
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 4
jl 0x100186c4
mov dword [ebp - 0x20], ebx
jmp 0x100186f1
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x158]
mov dword [eax + ecx*4], edx
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 3
jl 0x100186e2
mov eax, dword [ebp - 0x70]
dec eax
neg eax
sbb eax, eax
neg eax
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x24], edx
cmp dword [ebp - 0x24], ebx
jl 0x100188e8
mov dword [ebp - 0x1c], ebx
jmp 0x10018726
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x110], 0xffffffff
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 4
jl 0x10018715
mov eax, dword [ebp - 0x24]
mov ecx, dword [ebp + eax*4 - 0x74]
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0x74], ecx
test ecx, ecx
je 0x10018815
mov dword [ebp - 0x20], 0xc3e5f88
mov dword [ebp - 0x28], 0x1552d49a
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x20], 0xffff0002
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x2c], ebx
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x70]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp + eax*4 - 0x74]
cmp dword [ebp - 0x44], ebx
je 0x10018781
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp + eax*4 - 0x74]
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0x10c], edx
cmp dword [ebp - 0x104], ebx
je 0x100187cb
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x10c]
mov eax, dword [ebp - 0x10c]
imul eax, dword [ebp - 0x30], 0xffff7caf
test eax, eax
jne 0x100187ba
mov esi, ebx
cmp dword [ebp - 0x28], ebx
je 0x100187bc
mov esi, edx
mov eax, dword [ebp - 0x20]
xor ecx, ecx
cmp eax, esi
setl cl
cmp ecx, dword [ebp - 0x20]
je 0x100187cd
mov edx, ebx
mov eax, dword [ebp - 0x24]
mov ecx, dword [ebp + eax*4 - 0x74]
mov eax, dword [ebp - 0x20]
add ecx, edx
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x1c]
setl dl
xor ecx, ecx
cmp edx, eax
setg cl
xor edx, edx
mov dword [ebp - 0x2c], ecx
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
cmp ecx, eax
mov eax, dword [ebp - 0x2c]
setge dl
imul eax, edx
sub eax, 0x319f
jne 0x1001880a
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x20], eax
jmp 0x100188dd
mov dword [ebp - 0x2c], 0x7fbb
cmp dword [ebp - 0x2c], 0x8090
jle 0x10018884
mov edx, ebx
mov dword [ebp - 0x28], ebx
mov edi, ebx
mov esi, ebx
mov ecx, esi
mov eax, edi
shl eax, cl
lea ecx, [ebp - 0x228]
or eax, edx
cdq
push edx
push eax
call fcn.10001a9f
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x1001884e
mov eax, dword [eax]
push eax
call fcn.10046233
pop ecx
push ebx
push 1
lea ecx, [ebp - 0x228]
call fcn.1000ebf5
mov edx, dword [ebp - 0x28]
inc esi
cmp esi, 0x710b
jl 0x1001882e
inc edi
cmp edi, 0x17b4
jl 0x1001882c
inc edx
mov dword [ebp - 0x28], edx
cmp edx, 0x5ddf
jl 0x1001882a
mov byte [ebp - 0x15], bl
cmp dword [ebp - 0x2c], 0x7dee
jge 0x1001889b
push str.xsqzc_tvuea_smkj_onnigvbgf_qlafxv_zjxz_brpur_tpiurhjli_rai_pfqh_jwael_rosb_pefwp
call fcn.10046233
pop ecx
mov dword [ebp - 4], 6
cmp byte [ebp - 0x15], 0
mov esi, dword [sym.imp.USER32.dll_GetDesktopWindow]
je 0x100188bf
push ebx
call esi
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_GetClipBox]
mov byte [ebp - 0x15], bl
cmp byte [ebp - 0x15], 0
je 0x100188dd
push ebx
push ebx
push 0x1706
push 0x178b
call esi
push eax
call dword [sym.imp.USER32.dll_SendDlgItemMessageA]
dec dword [ebp - 0x24]
xor edx, edx
inc edx
jmp 0x10018707
lea ecx, [ebp - 0x158]
call fcn.1000e4c1
lea ecx, [ebp - 0x17c]
call fcn.1000e4c1
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x11c]
call fcn.1000e4c1
xor eax, eax
mov dword [ebp - 0x15c], 7
mov word [ebp - 0x170], ax
lea ecx, [ebp - 0x170]
lea eax, [ebp - 0xcc]
mov dword [ebp - 0x160], ebx
push eax
call fcn.1001703a
mov dword [ebp - 4], 0xb
lea edi, [ebp - 0xcc]
xor eax, eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
mov dword [ebp - 0x2c], 0x3d7e
cmp dword [ebp - 0x2c], 0x3db1
jle 0x100189e6
mov eax, ebx
mov dword [ebp - 0x34], ebx
mov esi, ebx
mov dword [ebp - 0x30], ebx
cdq
mov edi, ebx
idiv esi
mov esi, edx
mov ecx, edi
mov eax, esi
shl eax, cl
lea ecx, [ebp - 0x1e0]
cdq
push edx
push eax
call fcn.10001a9f
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x1001898e
mov eax, dword [eax]
push eax
call fcn.10046233
pop ecx
push ebx
push 1
lea ecx, [ebp - 0x1e0]
call fcn.1000ebf5
inc edi
cmp edi, 0x4533
jl 0x10018970
mov esi, dword [ebp - 0x30]
mov eax, dword [ebp - 0x34]
inc esi
mov dword [ebp - 0x30], esi
cmp esi, 0x5ca1
jl 0x10018969
inc eax
mov dword [ebp - 0x34], eax
cmp eax, 0x5400
jl 0x10018964
push ebx
push 0x1a04
push 0x1b40
push ebx
push 0x17c0
push 0x13f
push ebx
call dword [sym.imp.KERNEL32.dll_CreateFileA]
cmp dword [ebp - 0x2c], 0x3c00
jge 0x100189fa
push str.erjuxigpd_cvqzqwbmy_glygbckl
call fcn.10046233
pop ecx
mov dword [ebp - 4], 0xb
lea ecx, [ebp - 0x140]
mov dword [ebp - 0x24], 0xe307
mov dword [ebp - 0x20], 0xd3aeb590
mov dword [ebp - 0x30], 0x6df7
push 1
call fcn.1000e43e
mov dword [ebp - 0x38], 0xe7587697
mov dword [ebp - 0x44], 0x97d93cb
mov dword [ebp - 0x44], 0xe86de1f1
mov dword [ebp - 0x1c], ebx
jmp 0x10018a50
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x140]
mov dword [eax + ecx*4], 1
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 1
jl 0x10018a3d
cmp dword [ebp - 0x24], ebx
je 0x10018a6a
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
imul eax, dword [ebp - 0x30], 0x42c7
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x24], ebx
jmp 0x10018aed
mov dword [ebp - 0x2c], 8
xor ecx, ecx
push 7
pop eax
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0x2c], 0xfffffffa
imul eax, dword [ebp - 0x2c], 0xffff
cmp eax, 1
setl cl
xor edx, edx
mov dword [ebp - 0x28], ecx
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x28]
cmp eax, ecx
setle dl
xor ecx, ecx
lea eax, [edx*4 + 1]
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x1c]
cmp eax, 0xe094bf7d
setne cl
mov dword [ebp - 0x44], ecx
dec dword [ebp - 0x24]
cmp dword [ebp - 0x24], 0xffffffeb
jge 0x10018a7f
lea ecx, [ebp - 0x140]
call fcn.1000e4c1
mov dword [ebp - 0x30], 0x40f2
cmp dword [ebp - 0x30], 0x4186
jle 0x10018b60
push 0x1f4d
call dword [sym.imp.KERNEL32.dll_TlsGetValue]
mov esi, ebx
mov edi, ebx
mov eax, edi
lea ecx, [ebp - 0x210]
xor eax, esi
cdq
push edx
push eax
call fcn.10001a9f
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x10018b39
mov eax, dword [eax]
push eax
call fcn.10046233
pop ecx
push ebx
push 1
lea ecx, [ebp - 0x210]
call fcn.1000ebf5
inc edi
cmp edi, 0xf38
jl 0x10018b1d
inc esi
cmp esi, 0x4463
jl 0x10018b1b
push dword [ebp - 0xb0]
lea ecx, [ebp - 0x1b0]
call fcn.1000e271
cmp dword [ebp - 0x30], 0x3de1
jge 0x10018b85
push str.kvz_ver_mxtd_nwebqti_fuzmak_qbw_gqfedtepx_puycj_sqkrha_wvr_mxdenas
call fcn.10046233
pop ecx
push 2
lea ecx, [ebp - 0x14c]
mov dword [ebp - 4], 0xe
call fcn.1000e43e
mov dword [ebp - 0x1c], 0xdf1febae
mov dword [ebp - 0x1c], ebx
jmp 0x10018bb5
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x14c]
or dword [eax + ecx*4], 0xffffffff
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 2
jl 0x10018ba5
mov dword [ebp - 0x1c], ebx
jmp 0x10018be1
mov byte [ebp - 0x15], bl
cmp byte [ebp - 0x15], 0
je 0x10018bde
push ebx
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_SetTextColor]
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 1
jle 0x10018bc0
lea ecx, [ebp - 0x14c]
call fcn.1000e4c1
mov dword [ebp - 0x2c], 0x7209
cmp dword [ebp - 0x2c], 0x75a5
jle 0x10018c30
mov esi, ebx
mov dword [ebp - 0x30], ebx
mov edi, esi
mov esi, 0x25dd
mov eax, edi
mov ecx, 0x1007acd8
cdq
push edx
push eax
call fcn.1000e15c
dec edi
dec esi
jne 0x10018c0e
mov esi, dword [ebp - 0x30]
inc esi
mov dword [ebp - 0x30], esi
cmp esi, 0x30e7
jl 0x10018c07
mov byte [ebp - 4], 0x11
cmp dword [ebp - 0x2c], 0x715c
jge 0x10018c6a
mov edx, str.bnjapq_sjdvrbp_lohn_ojfqpf_luytcjv_xcxozldp_cahezqnp_xtqeupx_psokl_fhkfbpvwc_qhgbelyk_vzpszsx_qwu_vrqm
mov ecx, 0x1007acd8
call fcn.10010ea8
jmp 0x10018c6a
push 1
lea ecx, [ebp - 0x90]
mov dword [ebp - 4], 0xe
call fcn.1000e43e
mov dword [ebp - 0x20], ebx
mov dword [ebp - 0x38], 0xffffffff
mov dword [ebp - 0x1c], ebx
jmp 0x10018ca0
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x90]
mov dword [eax + ecx*4], 0xfff7
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 1
jl 0x10018c8d
mov byte [ebp - 0x15], bl
cmp byte [ebp - 0x15], 0
je 0x10018cc9
push 0xf7e
push ebx
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_Polyline]
mov dword [ebp - 0x20], ebx
jmp 0x10018d61
mov dword [ebp - 0x30], 0x8f6a1c3d
mov dword [ebp - 0x38], 0xe2efe8e6
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]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
mov edx, dword [ebp - 0x20]
mov esi, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x90]
mov eax, dword [ebp - 0x20]
push 0
cmp eax, dword [ecx + edx*4]
mov eax, dword [ebp - 0x90]
pop ecx
setl cl
xor edx, edx
neg ecx
cmp ecx, dword [eax + esi*4]
setl dl
xor ecx, ecx
cmp edx, dword [eax]
setl cl
cmp ecx, dword [ebp - 0x20]
jne 0x10018d49
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x90]
cmp dword [eax + ecx*4], ebx
je 0x10018d49
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x90]
cmp dword [eax + ecx*4], ebx
je 0x10018d49
xor eax, eax
inc eax
jmp 0x10018d4b
mov eax, ebx
mov dword [ebp - 0x30], eax
xor ecx, ecx
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x38]
test eax, eax
sets cl
mov dword [ebp - 0x38], ecx
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], ebx
jle 0x10018cd1
lea ecx, [ebp - 0x90]
call fcn.1000e4c1
push 2
lea ecx, [ebp - 0xf0]
call fcn.1000e43e
mov byte [ebp - 4], 0x13
mov dword [ebp - 0x28], 0xbdba76aa
mov dword [ebp - 0x30], 0x7e5d
cmp dword [ebp - 0x30], 0x803b
jle 0x10018dc6
mov esi, ebx
mov edi, ebx
mov ecx, edi
mov eax, esi
sar eax, cl
mov ecx, 0x1007acd8
cdq
push edx
push eax
call fcn.1000e15c
inc edi
cmp edi, 0x1538
jl 0x10018da1
inc esi
cmp esi, 0x39c9
jl 0x10018d9f
mov dword [ebp - 0x1c], ebx
jmp 0x10018dde
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0xf0]
mov dword [eax + ecx*4], 5
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 2
jl 0x10018dcb
mov byte [ebp - 4], 0x14
cmp dword [ebp - 0x30], 0x7b01
jge 0x10018e1e
mov edx, str.ttdawclu_zcu_uvg_rpnthbc_kcyg_qvzr_hawcdqj_bvwk_ohvbpglrg_lljmnl
mov ecx, 0x1007acd8
call fcn.10010ea8
jmp 0x10018e1e
mov dword [ebp - 4], 0x13
mov dword [ebp - 0x28], 1
cmp dword [ebp - 0x28], ebx
jl 0x10018e40
mov eax, dword [ebp - 0xf0]
cmp dword [eax], ebx
jne 0x10018e40
dec dword [ebp - 0x28]
jns 0x10018e31
lea ecx, [ebp - 0xf0]
mov byte [ebp - 4], 0xe
call fcn.1000e4c1
push 0x5c
pop eax
push 2
mov dword [ebp - 0x54], 0x6304fb00
mov ecx, ebx
mov word [ebp - 0x50], 0xb989
mov byte [ebp - 0x4e], 0xf7
mov word [ebp - 0x48], ax
pop esi
cmp esi, 2
jne 0x10018e78
push 5
pop ecx
push ecx
pop esi
jmp 0x10018ea1
movzx edx, byte [ebp + esi - 0x53]
mov eax, esi
sub eax, ecx
movzx eax, byte [ebp + eax - 0x56]
movzx ecx, word [ebp + eax*2 - 0x48]
mov eax, ecx
and eax, edx
add eax, eax
sub ecx, eax
movzx eax, byte [ebp + esi - 0x54]
add ecx, edx
mov word [ebp + eax*2 - 0x48], cx
mov ecx, ebx
add esi, 2
cmp esi, 7
jb 0x10018e6c
xor eax, eax
mov dword [ebp - 0xd0], 7
mov word [ebp - 0x46], ax
lea ecx, [ebp - 0xe4]
mov word [ebp - 0xe4], ax
lea eax, [ebp - 0x48]
push eax
mov dword [ebp - 0xd4], ebx
call fcn.1001703a
mov byte [ebp - 4], 0x16
lea ecx, [ebp - 0xbc]
push 1
mov dword [ebp - 0x48], ebx
call fcn.1000e43e
mov byte [ebp - 4], 0x17
xor edx, edx
mov dword [ebp - 0x24], 0xfffffff9
inc edx
mov dword [ebp - 0x38], 4
mov dword [ebp - 0x34], 0xfffffff7
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x1c], ebx
jmp 0x10018f1c
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0xbc]
mov dword [eax + ecx*4], edx
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], edx
jl 0x10018f0d
mov eax, dword [ebp - 0xbc]
xor edx, edx
mov eax, dword [eax]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0xbc]
mov dword [ebp - 0x24], 0xffffffff
mov ecx, dword [ebp - 0x38]
mov esi, dword [eax]
mov eax, dword [ebp - 0x24]
cmp eax, ecx
setge dl
xor eax, eax
cmp esi, edx
setl al
imul eax, esi
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], ebx
je 0x10018f72
mov dword [ebp - 0x30], 2
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x30], eax
jmp 0x10018f88
mov byte [ebp - 0x15], bl
cmp byte [ebp - 0x15], 0
je 0x10018f88
push ebx
push ebx
push 0xecb
call dword [sym.imp.ADVAPI32.dll_CopySid]
mov dword [ebp - 0x24], ebx
cmp dword [ebp - 0x24], 0xfffffffe
jl 0x1001909d
mov dword [ebp - 0x1c], 0xdfb
mov dword [ebp - 0x30], 0x6805
cmp dword [ebp - 0x30], 0x6ace
jle 0x10019004
mov edi, ebx
mov esi, ebx
mov dword [ebp - 0x38], ebx
mov ecx, ebx
lea eax, [esi + edi]
sar eax, cl
mov ecx, 0x1007acd8
cdq
push edx
push eax
call fcn.1000e15c
inc ebx
cmp ebx, 0x3bed
jl 0x10018fb3
inc esi
push 0
pop ebx
cmp esi, 0x4f39
jl 0x10018fb0
inc edi
cmp edi, 0x752
jl 0x10018fae
push ebx
push 0x1a55
push 0xf22
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_GetSystemPaletteEntries]
mov dword [ebp - 0x2c], 0xe469209a
mov byte [ebp - 4], 0x18
cmp dword [ebp - 0x30], 0x658a
jge 0x10019045
mov edx, str.fwwibml_fwajmot_widx_amfbvnjee_jtcdinu_iwa_icbpagg
mov ecx, 0x1007acd8
call fcn.10010ea8
jmp 0x10019045
mov dword [ebp - 4], 0x17
mov dword [ebp - 0x38], 1
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
push 6
pop ecx
add eax, dword [ebp - 0x1c]
je 0x1001906e
cmp dword [ebp - 0x1c], ebx
je 0x1001906e
xor eax, eax
inc eax
jmp 0x10019070
mov eax, ebx
cmp ecx, eax
sbb ecx, ecx
xor eax, eax
inc ecx
imul ecx, dword [ebp - 0x1c]
test ecx, ecx
setns al
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x24]
neg eax
sbb eax, eax
neg eax
mov dword [ebp - 0x28], eax
dec dword [ebp - 0x24]
jmp 0x10018f8b
lea ecx, [ebp - 0xbc]
mov byte [ebp - 4], 0x16
call fcn.1000e4c1
push 0x5f
pop eax
mov cl, bl
mov dword [ebp - 0x3f], 0xa7ab0332
push 2
mov byte [ebp - 0x40], cl
mov edi, ebx
mov byte [ebp - 0x3b], 3
mov word [ebp - 0x4c], ax
pop esi
mov dword [ebp - 0x1c], esi
cmp esi, 6
jae 0x100191b5
movzx eax, cl
lea eax, [eax*2 + 2]
cmp esi, eax
jne 0x100190f2
movzx eax, byte [ebp + esi - 0x40]
dec esi
add esi, eax
lea edi, [eax + 1]
jmp 0x100191ad
movzx edx, byte [ebp + esi - 0x3f]
mov eax, esi
sub eax, edi
movzx eax, byte [ebp + eax - 0x42]
movzx eax, word [ebp + eax*2 - 0x4c]
mov ecx, eax
and eax, edx
or ecx, edx
sub ecx, eax
movzx eax, byte [ebp + esi - 0x40]
mov word [ebp + eax*2 - 0x4c], cx
mov dword [ebp - 0x28], 0x829
cmp dword [ebp - 0x28], 0x8b3
jle 0x1001918d
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x30], 0x13ff
mov edi, dword [ebp - 0x34]
mov esi, ebx
mov eax, edi
lea ecx, [ebp - 0x240]
and eax, esi
cdq
push edx
push eax
call fcn.10001a9f
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x10019155
mov eax, dword [eax]
push eax
call fcn.10046233
pop ecx
push ebx
push 1
lea ecx, [ebp - 0x240]
call fcn.1000ebf5
inc esi
cmp esi, 0x436b
jl 0x10019139
mov edi, dword [ebp - 0x2c]
add dword [ebp - 0x34], edi
dec dword [ebp - 0x30]
jne 0x10019134
inc edi
mov dword [ebp - 0x2c], edi
cmp edi, 0x12a4
jl 0x1001912a
mov esi, dword [ebp - 0x1c]
cmp dword [ebp - 0x28], 0x51b
mov edi, ebx
jge 0x100191a3
push str.qibg_dmdeg_drlzcv_bblfsh_tssiorp
call fcn.10046233
pop ecx
mov dword [ebp - 4], 0x16
mov cl, byte [ebp - 0x40]
add esi, 2
jmp 0x100190c8
xor eax, eax
mov word [ebp - 0x4a], ax
mov dword [ebp - 0x1c], ebx
jmp 0x100191d1
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0xac], 0xad313dd3
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 3
jl 0x100191c0
mov dword [ebp - 0xa8], 0xffffffef
jmp 0x10019213
mov byte [ebp - 0x15], bl
cmp byte [ebp - 0x15], 0
je 0x1001920d
push 0x606
push ebx
push ebx
push 0x19f3
push ebx
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_CreateDIBitmap]
inc dword [ebp - 0xa8]
cmp dword [ebp - 0xa8], 0x1d
jg 0x100191e3
xor eax, eax
mov dword [ebp - 0x184], 7
mov word [ebp - 0x198], ax
lea ecx, [ebp - 0x198]
lea eax, [ebp - 0x4c]
mov dword [ebp - 0x188], ebx
push eax
call fcn.1001703a
mov byte [ebp - 4], 0x1c
xor eax, eax
mov dword [ebp - 0x4c], ebx
inc eax
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x34], 0xffffffff
mov dword [ebp - 0x30], 0xe520c3d8
mov dword [ebp - 0x38], 0x8093af8e
cmp dword [ebp - 0x24], eax
jne 0x10019272
cmp dword [ebp - 0x24], ebx
jne 0x10019272
mov eax, ebx
mov dword [ebp - 0x34], eax
xor edx, edx
mov ecx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x24]
cmp ecx, eax
setge dl
imul eax, edx, 0xffff
cmp eax, 0xffff
ja 0x10019299
cmp dword [ebp - 0x34], ebx
je 0x10019299
xor edx, edx
inc edx
jmp 0x1001929b
mov edx, ebx
mov eax, dword [ebp - 0x30]
sub edx, eax
mov eax, dword [ebp - 0x24]
sub edx, 0x6ad9
neg edx
sbb edx, edx
xor ecx, ecx
add edx, 2
cmp eax, edx
mov eax, dword [ebp - 0x24]
setne cl
xor edx, edx
cmp ecx, eax
mov ecx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x24]
setl dl
mov dword [ebp - 0x38], edx
xor edx, edx
cmp ecx, eax
setg dl
xor eax, eax
cmp edx, dword [ebp - 0x38]
setle al
sub eax, dword [ebp - 0x30]
mov dword [ebp - 0x38], eax
mov byte [ebp - 0x15], bl
cmp byte [ebp - 0x15], 0
je 0x100192ef
push ebx
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
push dword [ebp - 0xd4]
cmp dword [ebp - 0xd0], 8
lea eax, [ebp - 0xe4]
push ebx
cmovae eax, dword [ebp - 0xe4]
lea ecx, [ebp - 0x1b0]
push eax
call fcn.100170c2
cmp eax, 0xffffffff
je 0x10019335
push 0xffffffffffffffff
push ebx
lea ecx, [ebp - 0x198]
push ecx
push 1
push eax
lea ecx, [ebp - 0x1b0]
call fcn.100114b6
jmp 0x100192ef
mov ecx, dword [ebp - 0x78]
lea eax, [ebp - 0x1b0]
push eax
lea edx, [ebp - 0x170]
call fcn.10019609
pop ecx
push ebx
push 1
lea ecx, [ebp - 0x198]
call fcn.1000edc9
push ebx
push 1
lea ecx, [ebp - 0xe4]
call fcn.1000edc9
push ebx
push 1
lea ecx, [ebp - 0x1b0]
call fcn.1000edc9
push ebx
push 1
lea ecx, [ebp - 0x170]
call fcn.1000edc9
mov ecx, dword [ebp - 0xc]
mov eax, dword [ebp - 0x78]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret