Function at 0x1000efa0
Capabilities:
Check if file exists
Contain obfuscated stackstrings
Create directory
Get common file path
Get program files directory
Get startup folder

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100b61dc
mov eax, dword fs:[0]
push eax
mov eax, 0x1188
call fcn.1008c5a0
mov eax, dword [0x100dcdc0]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [ebp + 0xc]
xorps xmm0, xmm0
mov esi, dword [ebp + 0x1c]
mov dword [ebp - 0x1184], 0
mov dword [ebp - 0x117c], eax
mov eax, dword [ebp + 0x10]
mov dword [esi], 0x62251
mov dword [ebp - 0x116c], eax
mov dword [ebp - 0x1180], esi
cmp dword [eax + 0x14], 7
mov edi, dword [eax + 0x10]
movups xmmword [ebp - 0x1028], xmm0
mov dword [ebp - 0x1018], 0
mov dword [ebp - 0x1014], 0
jbe 0x1000f02b
mov eax, dword [eax]
mov dword [ebp - 0x116c], eax
cmp edi, 0x7ffffffe
ja 0x1001065a
cmp edi, 7
ja 0x1000f058
mov dword [ebp - 0x1018], edi
mov dword [ebp - 0x1014], 7
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x1028], xmm0
jmp 0x1000f0bd
mov eax, edi
or eax, 7
cmp eax, 0x7ffffffe
jbe 0x1000f06b
mov eax, accept
jmp 0x1000f075
mov ecx, 0xa
cmp eax, ecx
cmovb eax, ecx
mov dword [ebp - 0x1184], eax
lea eax, [ebp - 0x1184]
push eax
lea eax, [ebp - 0x1028]
push eax
call fcn.10007420
mov ecx, dword [ebp - 0x1184]
mov dword [ebp - 0x1014], ecx
lea ecx, [edi*2 + 2]
push ecx
push dword [ebp - 0x116c]
mov dword [ebp - 0x1028], eax
push eax
mov dword [ebp - 0x1018], edi
call fcn.1008ddb0
add esp, 0x14
xorps xmm0, xmm0
mov dword [ebp - 4], 0
movups xmmword [ebp - 0x1088], xmm0
mov dword [ebp - 0x116c], 0
movups xmmword [ebp - 0x1070], xmm0
mov word [ebp - 0x1168], 0
mov word [ebp - 0x108c], 0
mov byte [ebp - 0x108a], 0
mov dword [ebp - 0x1078], 0
mov dword [ebp - 0x1074], 0xf
mov byte [ebp - 0x1088], 0
mov dword [ebp - 0x1060], 0
mov dword [ebp - 0x105c], 0xf
mov byte [ebp - 0x1070], 0
lea eax, [ebp - 0x1194]
mov byte [ebp - 4], 1
push eax
lea eax, [ebp - 0x10d4]
mov dword [esi], 0x62252
push eax
call fcn.10008840
add esp, 8
push 0
lea eax, [ebp - 0x10d4]
mov byte [ebp - 4], 2
push eax
lea ecx, [ebp - 0x108c]
mov dword [esi], 0x62253
call fcn.10015340
lea eax, [ebp - 0x1188]
mov dword [esi], 0x62254
push eax
lea ecx, [ebp - 0x108c]
mov byte [ebp - 0x1188], 0
mov dword [ebp - 0x1184], 0
call fcn.10015d60
xor eax, eax
cmp byte [ebp - 0x1188], al
cmovne eax, dword [ebp - 0x1184]
cdq
mov dword [ebp - 0x1190], eax
or eax, edx
mov dword [ebp - 0x118c], edx
jne 0x1000f234
lea eax, [ebp - 0x1040]
push 0x157
push eax
call fcn.1002f220
add esp, 8
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push eax
lea ecx, [ebp - 0x108c]
mov byte [ebp - 4], 3
call fcn.10015360
mov ecx, dword [ebp - 0x102c]
mov byte [ebp - 4], 2
cmp ecx, 0xf
jbe 0x1000f225
mov edx, dword [ebp - 0x1040]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1000f21b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1001065f
push ecx
push edx
call fcn.1008c555
add esp, 8
lea eax, [ebp - 0x1190]
push eax
call fcn.10097044
add esp, 4
lea eax, [ebp - 0x1164]
push eax
call fcn.10011090
push dword [ebp - 0x1190]
lea eax, [ebp - 0x1164]
mov byte [ebp - 4], 4
push eax
lea eax, [ebp - 0x108c]
mov dword [esi], 0x62255
push eax
lea eax, [ebp - 0x114c]
push eax
call fcn.10010920
lea eax, [ebp - 0x114c]
mov byte [ebp - 4], 5
push eax
lea eax, [ebp - 0x1164]
mov dword [esi], 0x62256
push eax
lea eax, [ebp - 0x1058]
push eax
call fcn.10010c10
lea eax, [ebp - 0x1040]
mov byte [ebp - 4], 6
push 0x15b
push eax
mov dword [esi], 0x62257
call fcn.1002f220
add esp, 0x28
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push eax
lea ecx, [ebp - 0x108c]
mov byte [ebp - 4], 7
call fcn.10015360
mov ecx, dword [ebp - 0x102c]
mov byte [ebp - 4], 6
cmp ecx, 0xf
jbe 0x1000f308
mov edx, dword [ebp - 0x1040]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1000f2fe
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10010664
push ecx
push edx
call fcn.1008c555
add esp, 8
mov edi, dword [ebp - 0x117c]
lea eax, [ebp - 0x10bc]
push edi
push eax
mov dword [esi], 0x62258
call fcn.1000ed20
push 1
lea ecx, [ebp - 0x1058]
mov byte [ebp - 4], 8
push ecx
push eax
lea eax, [ebp - 0x1178]
push eax
call fcn.10012770
add esp, 0x18
mov ecx, dword [ebp - 0x10a8]
mov byte [ebp - 4], 0xa
cmp ecx, 0xf
jbe 0x1000f37c
mov edx, dword [ebp - 0x10bc]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1000f372
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10010669
push ecx
push edx
call fcn.1008c555
add esp, 8
mov eax, dword [ebp - 0x1178]
mov dword [ebp - 0x10ac], 0
mov dword [ebp - 0x10a8], 0xf
mov byte [ebp - 0x10bc], 0
mov dword [esi], 0x62259
cmp eax, dword [ebp - 0x1174]
jne 0x1000fb1c
cmp byte [ebp + 0x18], 0
je 0x1000f448
push 0x1000
lea eax, [ebp - 0x1010]
push 0
push eax
call fcn.1008e330
add esp, 0xc
lea eax, [ebp - 0x1010]
push 0
push 0x2a
push eax
push 0
call dword [sym.imp.SHELL32.dll_SHGetSpecialFolderPathW]
lea eax, [ebp - 0x1040]
push 0x17
push eax
call fcn.1002f510
add esp, 8
cmp dword [eax + 0x14], 7
jbe 0x1000f3fb
mov eax, dword [eax]
push eax
lea eax, [ebp - 0x1010]
push eax
call dword [sym.imp.SHLWAPI.dll_PathAppendW]
lea ecx, [ebp - 0x1040]
call fcn.100076d0
lea ecx, [ebp - 0x1010]
lea edx, [ecx + 2]
nop dword [eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x1000f420
sub ecx, edx
lea eax, [ebp - 0x1010]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0x1028]
call fcn.10011b60
mov dword [esi], 0x6225a
cmp dword [ebp - 0x1014], 7
lea eax, [ebp - 0x1028]
cmova eax, dword [ebp - 0x1028]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x1000f699
cmp dword [ebp - 0x1014], 7
lea eax, [ebp - 0x1028]
push 0
cmova eax, dword [ebp - 0x1028]
push eax
mov dword [esi], 0x6225b
call dword [sym.imp.KERNEL32.dll_CreateDirectoryW]
test eax, eax
jne 0x1000f699
lea eax, [ebp - 0x1040]
mov dword [esi], 0x6225c
push 0x155
push eax
call fcn.1002f220
add esp, 8
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push eax
lea ecx, [ebp - 0x108c]
mov byte [ebp - 4], 0xb
call fcn.10015360
lea ecx, [ebp - 0x1040]
call fcn.100013f0
mov esi, dword [ebp + 8]
mov eax, dword [ebp - 0x116c]
mov edx, dword [ebp - 0x1178]
mov dword [esi], eax
mov ax, word [ebp - 0x1168]
mov word [esi + 4], ax
test edx, edx
je 0x1000f547
mov ecx, dword [ebp - 0x1170]
mov eax, edx
sub ecx, edx
cmp ecx, 0x1000
jb 0x1000f51f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10010673
push ecx
push edx
call fcn.1008c555
add esp, 8
mov dword [ebp - 0x1178], 0
mov dword [ebp - 0x1174], 0
mov dword [ebp - 0x1170], 0
mov ecx, dword [ebp - 0x1044]
cmp ecx, 0xf
jbe 0x1000f581
mov edx, dword [ebp - 0x1058]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1000f577
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10010673
push ecx
push edx
call fcn.1008c555
add esp, 8
mov eax, dword [ebp - 0x1138]
mov dword [ebp - 0x1048], 0
mov dword [ebp - 0x1044], 0xf
mov byte [ebp - 0x1058], 0
cmp eax, 0xf
jbe 0x1000f5bd
push eax
push dword [ebp - 0x114c]
lea eax, [ebp - 0x114c]
push eax
call fcn.10011960
add esp, 0xc
mov eax, dword [ebp - 0x1150]
cmp eax, 0xf
jbe 0x1000f5de
push eax
push dword [ebp - 0x1164]
lea eax, [ebp - 0x1164]
push eax
call fcn.10011960
add esp, 0xc
mov eax, dword [ebp - 0x10c0]
cmp eax, 0xf
jbe 0x1000f5ff
push eax
push dword [ebp - 0x10d4]
lea eax, [ebp - 0x10d4]
push eax
call fcn.10011960
add esp, 0xc
mov ecx, dword [ebp - 0x105c]
mov dword [ebp - 0x10c4], 0
mov dword [ebp - 0x10c0], 0xf
mov byte [ebp - 0x10d4], 0
cmp ecx, 0xf
jbe 0x1000f654
mov edx, dword [ebp - 0x1070]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1000f64a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10010673
push ecx
push edx
call fcn.1008c555
add esp, 8
mov eax, dword [ebp - 0x1074]
mov dword [ebp - 0x1060], 0
mov dword [ebp - 0x105c], 0xf
mov byte [ebp - 0x1070], 0
cmp eax, 0xf
jbe 0x1000fe4b
push eax
push dword [ebp - 0x1088]
lea eax, [ebp - 0x1088]
push eax
call fcn.10011960
add esp, 0xc
jmp 0x1000fe4b
push 0
push 5
lea eax, [ebp - 0x1058]
mov dword [esi], 0x6225d
push eax
lea eax, [ebp - 0x1028]
mov byte [ebp - 0x1167], 1
push eax
push edi
call fcn.1000ed90
mov edi, dword [sym.imp.KERNEL32.dll_Sleep]
add esp, 0x14
mov byte [ebp - 0x116c], al
mov dword [esi], 0x6225e
push 0x3e8
call edi
lea eax, [ebp - 0x10ec]
push 5
push eax
call fcn.10010690
push 0x100ba764
lea eax, [ebp - 0x1028]
mov byte [ebp - 4], 0xc
push eax
lea eax, [ebp - 0x1040]
mov dword [esi], 0x6225f
push eax
call fcn.1000c0d0
add esp, 0x14
cmp dword [ebp - 0x10d8], 7
lea ecx, [ebp - 0x10ec]
push dword [ebp - 0x10dc]
cmova ecx, dword [ebp - 0x10ec]
push ecx
mov ecx, eax
mov byte [ebp - 4], 0xd
call fcn.1000e4a0
mov dword [ebp - 0x1094], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x10a4], xmm0
mov dword [ebp - 0x1090], 0
xor ecx, ecx
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x10a4], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x1094], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 7
mov word [eax], cx
lea ecx, [ebp - 0x1040]
mov byte [ebp - 4], 0xf
call fcn.100076d0
cmp dword [ebp - 0x1090], 7
lea eax, [ebp - 0x10a4]
cmova eax, dword [ebp - 0x10a4]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
neg eax
push 0x15c
sbb esi, esi
lea eax, [ebp - 0x1104]
push eax
neg esi
call fcn.1002f220
add esp, 8
movzx ecx, byte [ebp - 0x116c]
push 0
push 0
push 0
push 0
push 0
push esi
push ecx
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x108c]
push eax
call fcn.10015360
lea ecx, [ebp - 0x1104]
mov byte [ebp - 4], 0xf
call fcn.100013f0
mov esi, dword [ebp - 0x1180]
lea eax, [ebp - 0x1058]
push 0
push 6
push eax
lea eax, [ebp - 0x1028]
mov dword [esi], 0x62260
push eax
push dword [ebp - 0x117c]
call fcn.1000ed90
add esp, 0x14
mov byte [ebp - 0x116b], al
mov dword [esi], 0x62261
push 0x3e8
call edi
xorps xmm0, xmm0
mov byte [ebp - 4], 0x11
xor eax, eax
mov dword [ebp - 0x1124], 0
movups xmmword [ebp - 0x1134], xmm0
mov word [ebp - 0x1134], ax
lea eax, [ebp - 0x10bc]
push 0x1b
push eax
mov dword [ebp - 0x1120], 7
mov dword [ebp - 0x1184], 0x30
call fcn.1002f510
add esp, 8
mov edi, eax
cmp dword [edi + 0x14], 7
mov byte [ebp - 4], 0x1a
jbe 0x1000f884
mov edi, dword [edi]
lea eax, [ebp - 0x111c]
push 0x8d
push eax
call fcn.1002f510
add esp, 8
cmp dword [eax + 0x14], 7
mov byte [ebp - 4], 0x1b
jbe 0x1000f8a4
mov eax, dword [eax]
push edi
push eax
lea eax, [ebp - 0x1104]
push eax
call fcn.1000e620
add esp, 0xc
lea ecx, [ebp - 0x1134]
push eax
call fcn.1000ece0
lea ecx, [ebp - 0x1104]
call fcn.100076d0
lea ecx, [ebp - 0x111c]
call fcn.100076d0
lea ecx, [ebp - 0x10bc]
mov byte [ebp - 4], 0x11
call fcn.100076d0
mov ecx, dword [ebp - 0x10d8]
cmp ecx, 7
jbe 0x1000f926
mov edx, dword [ebp - 0x10ec]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x1000f91c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10010673
push ecx
push edx
call fcn.1008c555
add esp, 8
movups xmm0, xmmword [ebp - 0x1134]
push 0x100ba764
lea eax, [ebp - 0x1028]
mov byte [ebp - 4], 0xf
push eax
movups xmmword [ebp - 0x10ec], xmm0
lea eax, [ebp - 0x1104]
mov dword [esi], 0x62262
movq xmm0, qword [ebp - 0x1124]
push eax
movq qword [ebp - 0x10dc], xmm0
call fcn.1000c0d0
add esp, 0xc
cmp dword [ebp - 0x10d8], 7
lea ecx, [ebp - 0x10ec]
push dword [ebp - 0x10dc]
cmova ecx, dword [ebp - 0x10ec]
push ecx
mov ecx, eax
mov byte [ebp - 4], 0x1e
call fcn.1000e4a0
xor ecx, ecx
movups xmm0, xmmword [eax]
movq xmm1, qword [eax + 0x10]
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 7
mov word [eax], cx
mov ecx, dword [ebp - 0x1090]
movq qword [ebp - 0x1188], xmm1
movups xmmword [ebp - 0x10b4], xmm0
cmp ecx, 7
jbe 0x1000fa08
mov edx, dword [ebp - 0x10a4]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x1000f9ef
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1001066e
push ecx
push edx
call fcn.1008c555
movups xmm0, xmmword [ebp - 0x10b4]
add esp, 8
movq xmm1, qword [ebp - 0x1188]
lea ecx, [ebp - 0x1104]
movq qword [ebp - 0x1094], xmm1
movups xmmword [ebp - 0x10a4], xmm0
mov byte [ebp - 4], 0xf
call fcn.100076d0
cmp dword [ebp - 0x1090], 7
lea eax, [ebp - 0x10a4]
cmova eax, dword [ebp - 0x10a4]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
neg eax
push 0x15d
sbb esi, esi
lea eax, [ebp - 0x1104]
push eax
neg esi
call fcn.1002f220
add esp, 8
movzx ecx, byte [ebp - 0x116b]
push 0
push 0
push 0
push 0
push 0
push esi
push ecx
push eax
lea ecx, [ebp - 0x108c]
mov byte [ebp - 4], 0x1f
call fcn.10015360
lea ecx, [ebp - 0x1104]
call fcn.100013f0
mov eax, dword [ebp - 0x1180]
mov ecx, dword [ebp - 0x1090]
mov dword [eax], 0x62263
cmp ecx, 7
jbe 0x1000fad5
mov edx, dword [ebp - 0x10a4]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x1000facb
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10010673
push ecx
push edx
call fcn.1008c555
add esp, 8
xor eax, eax
mov dword [ebp - 0x1094], 0
mov word [ebp - 0x10a4], ax
mov eax, dword [ebp - 0x10d8]
mov dword [ebp - 0x1090], 7
cmp eax, 7
jbe 0x10010378
push eax
push dword [ebp - 0x10ec]
lea eax, [ebp - 0x10ec]
push eax
call fcn.100119a0
add esp, 0xc
jmp 0x10010378
cmp byte [ebp + 0x18], 0
je 0x1000fbb8
push 0x1000
lea eax, [ebp - 0x1010]
mov dword [esi], 0x62264
push 0
push eax
call fcn.1008e330
add esp, 0xc
lea eax, [ebp - 0x1010]
push 0
push 0x2a
push eax
push 0
call dword [sym.imp.SHELL32.dll_SHGetSpecialFolderPathW]
lea eax, [ebp - 0x1040]
push 3
push eax
call fcn.1002f510
add esp, 8
cmp dword [eax + 0x14], 7
jbe 0x1000fb6e
mov eax, dword [eax]
push eax
lea eax, [ebp - 0x1010]
push eax
call dword [sym.imp.SHLWAPI.dll_PathAppendW]
lea ecx, [ebp - 0x1040]
call fcn.100076d0
lea ecx, [ebp - 0x1010]
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x1000fb90
sub ecx, edx
lea eax, [ebp - 0x1010]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0x1028]
call fcn.10011b60
mov dword [esi], 0x62265
cmp dword [ebp - 0x1014], 7
lea eax, [ebp - 0x1028]
cmova eax, dword [ebp - 0x1028]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x1000fe90
cmp dword [ebp - 0x1014], 7
lea eax, [ebp - 0x1028]
push 0
cmova eax, dword [ebp - 0x1028]
push eax
mov dword [esi], 0x62266
call dword [sym.imp.KERNEL32.dll_CreateDirectoryW]
test eax, eax
jne 0x1000fe90
lea eax, [ebp - 0x1040]
mov dword [esi], 0x62267
push 0x155
push eax
call fcn.1002f220
add esp, 8
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push eax
lea ecx, [ebp - 0x108c]
mov byte [ebp - 4], 0x20
call fcn.10015360
lea ecx, [ebp - 0x1040]
call fcn.100013f0
mov esi, dword [ebp + 8]
mov eax, dword [ebp - 0x116c]
mov edx, dword [ebp - 0x1178]
mov dword [esi], eax
mov ax, word [ebp - 0x1168]
mov word [esi + 4], ax
test edx, edx
je 0x1000fcb7
mov ecx, dword [ebp - 0x1170]
mov eax, edx
sub ecx, edx
cmp ecx, 0x1000
jb 0x1000fc8f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10010678
push ecx
push edx
call fcn.1008c555
add esp, 8
mov dword [ebp - 0x1178], 0
mov dword [ebp - 0x1174], 0
mov dword [ebp - 0x1170], 0
mov ecx, dword [ebp - 0x1044]
cmp ecx, 0xf
jbe 0x1000fcf1
mov edx, dword [ebp - 0x1058]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1000fce7
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10010678
push ecx
push edx
call fcn.1008c555
add esp, 8
mov eax, dword [ebp - 0x1138]
mov dword [ebp - 0x1048], 0
mov dword [ebp - 0x1044], 0xf
mov byte [ebp - 0x1058], 0
cmp eax, 0xf
jbe 0x1000fd2d
push eax
push dword [ebp - 0x114c]
lea eax, [ebp - 0x114c]
push eax
call fcn.10011960
add esp, 0xc
mov ecx, dword [ebp - 0x1150]
cmp ecx, 0xf
jbe 0x1000fd67
mov edx, dword [ebp - 0x1164]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1000fd5d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10010678
push ecx
push edx
call fcn.1008c555
add esp, 8
mov ecx, dword [ebp - 0x10c0]
cmp ecx, 0xf
jbe 0x1000fda1
mov edx, dword [ebp - 0x10d4]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1000fd97
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10010678
push ecx
push edx
call fcn.1008c555
add esp, 8
mov ecx, dword [ebp - 0x105c]
mov dword [ebp - 0x10c4], 0
mov dword [ebp - 0x10c0], 0xf
mov byte [ebp - 0x10d4], 0
cmp ecx, 0xf
jbe 0x1000fdf6
mov edx, dword [ebp - 0x1070]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1000fdec
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10010678
push ecx
push edx
call fcn.1008c555
add esp, 8
mov ecx, dword [ebp - 0x1074]
mov dword [ebp - 0x1060], 0
mov dword [ebp - 0x105c], 0xf
mov byte [ebp - 0x1070], 0
cmp ecx, 0xf
jbe 0x1000fe4b
mov edx, dword [ebp - 0x1088]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1000fe41
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10010678
push ecx
push edx
call fcn.1008c555
add esp, 8
mov eax, dword [ebp - 0x1014]
mov dword [ebp - 0x1078], 0
mov dword [ebp - 0x1074], 0xf
mov byte [ebp - 0x1088], 0
cmp eax, 7
jbe 0x1001063d
push eax
push dword [ebp - 0x1028]
lea eax, [ebp - 0x1028]
push eax
call fcn.100119a0
add esp, 0xc
jmp 0x1001063d
lea eax, [ebp - 0x1134]
mov dword [esi], 0x62268
push 1
push eax
call fcn.10010690
push 0x41
push 0x3e
mov byte [ebp - 4], 0x21
call fcn.10011020
mov edi, eax
add esp, 0x10
shl edi, 0x14
cmp byte [ebp + 0x20], 0
je 0x1000fece
lea eax, [ebp - 0x1178]
push eax
call fcn.100115e0
add esp, 4
push edi
lea eax, [ebp - 0x1178]
push eax
lea eax, [ebp - 0x1134]
push eax
lea eax, [ebp - 0x1028]
push eax
call fcn.10011750
mov edi, dword [sym.imp.KERNEL32.dll_Sleep]
add esp, 0x10
mov byte [ebp - 0x116c], al
mov dword [esi], 0x62269
push 0x3e8
call edi
push 0x100ba764
lea eax, [ebp - 0x1028]
push eax
lea eax, [ebp - 0x1104]
push eax
call fcn.1000c0d0
lea ecx, [ebp - 0x1134]
mov byte [ebp - 4], 0x22
push ecx
push eax
lea eax, [ebp - 0x111c]
push eax
call fcn.1000e810
add esp, 0x18
lea ecx, [ebp - 0x1104]
mov byte [ebp - 4], 0x24
call fcn.100076d0
cmp dword [ebp - 0x1108], 7
lea eax, [ebp - 0x111c]
cmova eax, dword [ebp - 0x111c]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
neg eax
push 0x15e
sbb esi, esi
lea eax, [ebp - 0x1040]
push eax
neg esi
call fcn.1002f220
add esp, 8
movzx ecx, byte [ebp - 0x116c]
push 0
push 0
push 0
push 0
push 0
push esi
push ecx
push eax
lea ecx, [ebp - 0x108c]
mov byte [ebp - 4], 0x25
call fcn.10015360
lea ecx, [ebp - 0x1040]
mov byte [ebp - 4], 0x24
call fcn.100013f0
push dword [ebp + 0x20]
lea eax, [ebp - 0x1058]
push 0
push eax
lea eax, [ebp - 0x1028]
push eax
push dword [ebp - 0x117c]
call fcn.1000ed90
add esp, 0x14
mov byte [ebp - 0x1169], al
push 0x3e8
call edi
lea eax, [ebp - 0x1040]
push 0
push eax
call fcn.10010690
add esp, 8
push eax
lea ecx, [ebp - 0x1134]
call fcn.1000ece0
lea ecx, [ebp - 0x1040]
call fcn.100076d0
push 0x100ba764
lea eax, [ebp - 0x1028]
push eax
lea eax, [ebp - 0x10bc]
push eax
call fcn.1000c0d0
lea ecx, [ebp - 0x1134]
mov byte [ebp - 4], 0x26
push ecx
push eax
lea eax, [ebp - 0x1040]
push eax
call fcn.1000e810
add esp, 0x18
lea ecx, [ebp - 0x111c]
push eax
call fcn.1000ece0
lea ecx, [ebp - 0x1040]
call fcn.100076d0
lea ecx, [ebp - 0x10bc]
mov byte [ebp - 4], 0x24
call fcn.100076d0
cmp dword [ebp - 0x1108], 7
lea eax, [ebp - 0x111c]
cmova eax, dword [ebp - 0x111c]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
neg eax
push 0x15f
sbb esi, esi
lea eax, [ebp - 0x1040]
push eax
neg esi
call fcn.1002f220
add esp, 8
movzx ecx, byte [ebp - 0x1169]
push 0
push 0
push 0
push 0
push 0
push esi
push ecx
push eax
lea ecx, [ebp - 0x108c]
mov byte [ebp - 4], 0x27
call fcn.10015360
lea ecx, [ebp - 0x1040]
mov byte [ebp - 4], 0x24
call fcn.100013f0
push dword [ebp + 0x20]
lea eax, [ebp - 0x1058]
push 2
push eax
lea eax, [ebp - 0x1028]
push eax
push dword [ebp - 0x117c]
call fcn.1000ed90
add esp, 0x14
mov byte [ebp - 0x116a], al
mov eax, dword [ebp - 0x1180]
push 0x3e8
mov dword [eax], 0x6226a
call edi
lea eax, [ebp - 0x1040]
push 2
push eax
call fcn.10010690
add esp, 8
lea ecx, [ebp - 0x1134]
push eax
call fcn.1000ece0
lea ecx, [ebp - 0x1040]
call fcn.100076d0
push 0x100ba764
lea eax, [ebp - 0x1028]
push eax
lea eax, [ebp - 0x10bc]
push eax
call fcn.1000c0d0
lea ecx, [ebp - 0x1134]
mov byte [ebp - 4], 0x28
push ecx
push eax
lea eax, [ebp - 0x1040]
push eax
call fcn.1000e810
add esp, 0x18
lea ecx, [ebp - 0x111c]
push eax
call fcn.1000ece0
lea ecx, [ebp - 0x1040]
call fcn.100076d0
lea ecx, [ebp - 0x10bc]
mov byte [ebp - 4], 0x24
call fcn.100076d0
cmp dword [ebp - 0x1108], 7
lea eax, [ebp - 0x111c]
cmova eax, dword [ebp - 0x111c]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
neg eax
push 0x160
sbb esi, esi
lea eax, [ebp - 0x1040]
push eax
neg esi
call fcn.1002f220
add esp, 8
movzx ecx, byte [ebp - 0x116a]
push 0
push 0
push 0
push 0
push 0
push esi
push ecx
push eax
lea ecx, [ebp - 0x108c]
mov byte [ebp - 4], 0x29
call fcn.10015360
lea ecx, [ebp - 0x1040]
mov byte [ebp - 4], 0x24
call fcn.100013f0
push dword [ebp + 0x20]
mov esi, dword [ebp - 0x117c]
lea eax, [ebp - 0x1058]
push 3
push eax
lea eax, [ebp - 0x1028]
push eax
push esi
call fcn.1000ed90
mov byte [ebp - 0x116b], al
lea eax, [ebp - 0x1040]
push 4
push eax
call fcn.10010690
lea eax, [ebp - 0x1104]
mov byte [ebp - 4], 0x2a
push esi
push eax
call fcn.1000ed20
push 4
push eax
lea eax, [ebp - 0x10b0]
mov byte [ebp - 4], 0x2b
push eax
call fcn.100122d0
add esp, 0x30
mov ecx, dword [ebp - 0x10f0]
mov byte [ebp - 4], 0x2d
cmp ecx, 0xf
jbe 0x1001027e
mov edx, dword [ebp - 0x1104]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10010274
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1001067d
push ecx
push edx
call fcn.1008c555
add esp, 8
lea eax, [ebp - 0x10b0]
mov dword [ebp - 0x10f4], 0
push eax
lea eax, [ebp - 0x1040]
mov dword [ebp - 0x10f0], 0xf
push eax
lea eax, [ebp - 0x1028]
mov byte [ebp - 0x1104], 0
push eax
call fcn.10011650
add esp, 0xc
lea ecx, [ebp - 0x10b0]
test al, al
jne 0x10010309
call fcn.100024b0
mov ecx, dword [ebp - 0x102c]
cmp ecx, 7
jbe 0x10010305
mov edx, dword [ebp - 0x1040]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x100102fb
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1001067d
push ecx
push edx
call fcn.1008c555
add esp, 8
xor al, al
jmp 0x10010350
call fcn.100024b0
mov ecx, dword [ebp - 0x102c]
cmp ecx, 7
jbe 0x1001034e
mov edx, dword [ebp - 0x1040]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x10010344
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1001067d
push ecx
push edx
call fcn.1008c555
add esp, 8
mov al, 1
mov byte [ebp - 0x1168], al
lea ecx, [ebp - 0x111c]
mov eax, dword [ebp - 0x1180]
mov dword [eax], 0x6226b
call fcn.100076d0
lea ecx, [ebp - 0x1134]
call fcn.100076d0
push dword [ebp - 0x1048]
cmp dword [ebp - 0x1044], 0xf
lea eax, [ebp - 0x1058]
push 0
cmova eax, dword [ebp - 0x1058]
push eax
call fcn.1008e330
push dword [ebp - 0x113c]
cmp dword [ebp - 0x1138], 0xf
lea eax, [ebp - 0x114c]
push 0
cmova eax, dword [ebp - 0x114c]
push eax
call fcn.1008e330
mov eax, dword [ebp - 0x1180]
add esp, 0x18
mov esi, dword [ebp + 8]
mov edx, dword [ebp - 0x1178]
mov dword [eax], 0x6226c
mov eax, dword [ebp - 0x116c]
mov dword [esi], eax
mov ax, word [ebp - 0x1168]
mov word [esi + 4], ax
test edx, edx
je 0x10010439
mov ecx, dword [ebp - 0x1170]
mov eax, edx
sub ecx, edx
cmp ecx, 0x1000
jb 0x10010411
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10010682
push ecx
push edx
call fcn.1008c555
add esp, 8
mov dword [ebp - 0x1178], 0
mov dword [ebp - 0x1174], 0
mov dword [ebp - 0x1170], 0
mov ecx, dword [ebp - 0x1044]
cmp ecx, 0xf
jbe 0x10010473
mov edx, dword [ebp - 0x1058]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10010469
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10010682
push ecx
push edx
call fcn.1008c555
add esp, 8
mov ecx, dword [ebp - 0x1138]
mov dword [ebp - 0x1048], 0
mov dword [ebp - 0x1044], 0xf
mov byte [ebp - 0x1058], 0
cmp ecx, 0xf
jbe 0x100104c8
mov edx, dword [ebp - 0x114c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100104be
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10010682
push ecx
push edx
call fcn.1008c555
add esp, 8
mov ecx, dword [ebp - 0x1150]
cmp ecx, 0xf
jbe 0x10010502
mov edx, dword [ebp - 0x1164]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100104f8
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10010682
push ecx
push edx
call fcn.1008c555
add esp, 8
mov ecx, dword [ebp - 0x10c0]
cmp ecx, 0xf
jbe 0x1001053c
mov edx, dword [ebp - 0x10d4]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10010532
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10010682
push ecx
push edx
call fcn.1008c555
add esp, 8
mov ecx, dword [ebp - 0x105c]
mov dword [ebp - 0x10c4], 0
mov dword [ebp - 0x10c0], 0xf
mov byte [ebp - 0x10d4], 0
cmp ecx, 0xf
jbe 0x10010591
mov edx, dword [ebp - 0x1070]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10010587
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10010682
push ecx
push edx
call fcn.1008c555
add esp, 8
mov ecx, dword [ebp - 0x1074]
mov dword [ebp - 0x1060], 0
mov dword [ebp - 0x105c], 0xf
mov byte [ebp - 0x1070], 0
cmp ecx, 0xf
jbe 0x100105e6
mov edx, dword [ebp - 0x1088]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100105dc
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10010682
push ecx
push edx
call fcn.1008c555
add esp, 8
mov ecx, dword [ebp - 0x1014]
mov dword [ebp - 0x1078], 0
mov dword [ebp - 0x1074], 0xf
mov byte [ebp - 0x1088], 0
cmp ecx, 7
jbe 0x1001063d
mov edx, dword [ebp - 0x1028]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x10010633
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10010682
push ecx
push edx
call fcn.1008c555
add esp, 8
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.1008c563
mov esp, ebp
pop ebp
ret
call fcn.10002500
call fcn.10091a2f
call fcn.10091a2f
call fcn.10091a2f
call fcn.10091a2f
call fcn.10091a2f
call fcn.10091a2f
call fcn.10091a2f
call fcn.10091a2f
int3