Function at 0x10067b3
Capabilities:
Check os version

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
push 0xfffffffffffffffe
push 0x10085c0
push 0x1007fde
mov eax, dword fs:[0]
push eax
push ecx
push ecx
mov eax, 0x1568
call fcn.01008050
mov eax, dword [0x100a3a8]
xor dword [ebp - 8], eax
xor eax, ebp
mov dword [ebp - 0x1c], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0x10]
mov dword fs:[0], eax
mov dword [ebp - 0x18], esp
mov esi, dword [ebp + 0xc]
xor ebx, ebx
mov dword [ebp - 0x1550], ebx
mov dword [ebp - 0x154c], ebx
xor edi, edi
inc edi
mov dword [ebp - 0x155c], edi
push ebx
push ebx
push edi
push ebx
call dword [sym.imp.KERNEL32.dll_HeapSetInformation]
push ebx
push ebx
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_CreateEventW]
mov dword [0x100a3f0], eax
push edi
push 0x10023e3
call dword [sym.imp.KERNEL32.dll_SetConsoleCtrlHandler]
push esi
push dword [ebp + 8]
call fcn.010061c8
cmp dword [0x100a3f4], ebx
jne 0x1007040
cmp dword [0x100a218], ebx
jne 0x1006ff6
cmp dword [0x100a258], ebx
jne 0x1006ff6
mov esi, 0x114
mov dword [ebp - 0x1548], esi
lea eax, [ebp - 0x1548]
push eax
call dword [sym.imp.KERNEL32.dll_GetVersionExW]
cmp eax, ebx
jne 0x100688d
push esi
push ebx
lea eax, [ebp - 0x1548]
push eax
call sub.msvcrt.dll_memset
add esp, 0xc
cmp dword [0x100a198], ebx
je 0x10068ba
movzx eax, word [0x100a190]
imul eax, eax, 0x3c
movzx ecx, word [0x100a192]
add eax, ecx
imul eax, eax, 0x3c
movzx ecx, word [0x100a194]
add eax, ecx
mov dword [ebp - 0x155c], eax
wait
mov dword [ebp - 4], ebx
cmp dword [0x100a3f4], ebx
je 0x10068d3
wait
mov dword [ebp - 4], 0xfffffffe
jmp 0x1007040
push 0x8a8
call sub.msvcrt.dll_void____cdecl_operator_new_unsigned_int_
pop ecx
cmp eax, ebx
je 0x10068eb
mov ecx, eax
call fcn.01007187
jmp 0x10068ed
xor eax, eax
mov ecx, eax
mov dword [0x100a3ec], ecx
cmp ecx, ebx
jne 0x1006905
mov dword [ebp - 0x1550], 0xe
jmp 0x10068c6
push 0x100a3f4
call fcn.01007680
cmp dword [0x100a3f4], ebx
jne 0x10068c6
cmp dword [0x100a1d8], ebx
je 0x100692f
cmp dword [0x100a118], ebx
jne 0x100692f
mov dword [ebp - 0x1554], edi
jmp 0x1006968
lea eax, [ebp - 0x1554]
push eax
push dword [0x100a108]
call fcn.0100252a
mov dword [ebp - 0x1550], eax
cmp eax, ebx
jne 0x10068c6
mov eax, dword [ebp - 0x1554]
cmp eax, ebx
jbe 0x1006975
cmp eax, 2
jbe 0x1006968
cmp eax, 7
je 0x1006968
cmp eax, 0xffffffff
jne 0x1006975
mov eax, dword [0x100a3ec]
mov dword [eax + 0x8a4], edi
jmp 0x1006980
mov eax, dword [0x100a3ec]
mov dword [eax + 0x8a4], ebx
cmp dword [0x100a0d8], ebx
je 0x10069fa
mov esi, dword [0x100a0c8]
cmp esi, ebx
je 0x10069fa
cmp word [esi], bx
je 0x10069fa
cmp dword [0x100a3f4], ebx
jne 0x10068c6
push 0x1004ac4
push dword [0x100a308]
push esi
mov ecx, dword [0x100a3ec]
call fcn.01007847
mov dword [ebp - 0x154c], eax
cmp eax, ebx
je 0x10069e1
push eax
push esi
push 0x2c1
movzx eax, word [0x100a3d4]
push eax
call fcn.01003234
add esp, 0x10
mov dword [ebp - 0x154c], ebx
mov eax, esi
lea edx, [eax + 2]
mov cx, word [eax]
inc eax
inc eax
cmp cx, bx
jne 0x10069e6
sub eax, edx
sar eax, 1
lea esi, [esi + eax*2 + 2]
jmp 0x1006992
cmp dword [0x100a158], ebx
je 0x1006a3c
cmp dword [0x100a3f4], ebx
jne 0x10068c6
push 0x1004ac4
push dword [0x100a308]
push dword [0x100a148]
mov ecx, dword [0x100a3ec]
call fcn.01007bc4
mov dword [ebp - 0x1550], eax
cmp dword [0x100a3f4], ebx
jne 0x10068c6
push 0x1001354
movzx eax, word [0x100a3e0]
push eax
call fcn.01002954
pop ecx
pop ecx
cmp dword [0x100a058], ebx
je 0x1006bb3
mov ecx, dword [0x100a3ec]
call fcn.0100743c
xor esi, esi
mov edi, 0xfffffff
mov dword [ebp - 0x157c], esi
mov ecx, dword [0x100a3ec]
cmp esi, dword [ecx + 0x50]
jae 0x1006b9f
cmp dword [0x100a3f4], ebx
jne 0x10068c6
push esi
call fcn.01007481
mov dword [ebp - 0x1574], ebx
mov dword [ebp - 0x154c], eax
cmp dword [ebp - 0x1574], 0xa
jge 0x1006aca
cmp eax, ebx
je 0x1006b1e
push 0xa
call dword [sym.imp.KERNEL32.dll_Sleep]
push esi
mov ecx, dword [0x100a3ec]
call fcn.01007481
inc dword [ebp - 0x1574]
jmp 0x1006a9b
cmp dword [ebp - 0x154c], ebx
je 0x1006b1e
push edi
mov ecx, dword [0x100a3ec]
call fcn.010075f1
push eax
lea eax, [esi + 1]
push eax
push 0x1001984
movzx eax, word [0x100a3d4]
push eax
call fcn.01002954
add esp, 0x10
cmp dword [0x100a048], ebx
jbe 0x1006b12
push 0x1001974
push dword [ebp - 0x154c]
call fcn.01004844
pop ecx
pop ecx
mov dword [ebp - 0x154c], ebx
inc esi
jmp 0x1006a6e
push edi
mov ecx, dword [0x100a3ec]
call fcn.010075f1
push eax
lea eax, [esi + 1]
push eax
push 0x1001954
movzx eax, word [0x100a3d4]
push eax
call fcn.01002954
add esp, 0x10
cmp dword [0x100a048], 1
jbe 0x1006b18
mov eax, dword [0x100a3ec]
cmp dword [eax + 0x3c], 1
jbe 0x1006b18
mov dword [ebp - 0x1568], ebx
mov eax, dword [ebp - 0x1568]
mov ecx, dword [0x100a3ec]
cmp eax, dword [ecx + 0x3c]
jae 0x1006b18
cmp dword [0x100a3f4], ebx
jne 0x10068c6
push eax
call fcn.010075f1
push eax
push 0x1001938
movzx eax, word [0x100a3d4]
push eax
call fcn.01002954
add esp, 0xc
inc dword [ebp - 0x1568]
jmp 0x1006b5e
push 0x1001354
movzx eax, word [0x100a3e0]
push eax
call fcn.01002954
pop ecx
pop ecx
mov eax, dword [0x100a3ec]
cmp dword [eax + 0x50], ebx
jne 0x1006bcc
mov dword [ebp - 0x1550], 0xf0000002
jmp 0x10068c6
cmp dword [ebp - 0x1554], 0xffffffff
jne 0x1006ddb
push 0x1001918
push 0x100147c
movzx eax, word [0x100a3e0]
push eax
call fcn.01002954
add esp, 0xc
mov ecx, dword [0x100a3ec]
call fcn.0100743c
mov dword [ebp - 0x156c], ebx
mov edi, 0x1001904
mov ecx, dword [0x100a3ec]
mov eax, dword [ebp - 0x156c]
cmp eax, dword [ecx + 0x50]
jae 0x1006c6f
push eax
call fcn.01007481
mov dword [ebp - 0x154c], eax
cmp eax, ebx
jne 0x1006c61
mov dword [ebp - 0x1564], ebx
mov ecx, dword [0x100a3ec]
mov eax, dword [ebp - 0x1564]
cmp eax, dword [ecx + 0x3c]
jae 0x1006c67
push eax
call fcn.010075f1
push eax
push edi
movzx eax, word [0x100a3e0]
push eax
call fcn.01002954
add esp, 0xc
inc dword [ebp - 0x1564]
jmp 0x1006c30
mov ecx, dword [0x100a3ec]
inc dword [ebp - 0x156c]
jmp 0x1006c0f
mov dword [ebp - 0x1570], ebx
mov esi, 0x100
cmp dword [0x100a3f4], ebx
jne 0x1006dc2
inc dword [ebp - 0x1570]
mov eax, dword [ebp - 0x155c]
imul eax, eax, 0x3e8
push eax
push dword [0x100a3f0]
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
cmp eax, 0x102
jne 0x1006dc2
lea eax, [ebp - 0x2c]
push eax
call dword [sym.imp.KERNEL32.dll_GetLocalTime]
movzx eax, word [ebp - 0x1e]
push eax
movzx eax, word [ebp - 0x20]
push eax
movzx eax, word [ebp - 0x22]
push eax
movzx eax, word [ebp - 0x24]
push eax
movzx eax, word [ebp - 0x2c]
push eax
movzx eax, word [ebp - 0x26]
push eax
movzx eax, word [ebp - 0x2a]
push eax
push 0x1001880
movzx eax, word [0x100a3e0]
push eax
call fcn.01002954
add esp, 0x24
mov ecx, dword [0x100a3ec]
call fcn.0100743c
mov dword [ebp - 0x1558], ebx
mov ecx, dword [0x100a3ec]
mov eax, dword [ebp - 0x1558]
cmp eax, dword [ecx + 0x50]
jae 0x1006da4
push eax
call fcn.01007481
mov dword [ebp - 0x154c], eax
cmp eax, ebx
jne 0x1006d7c
mov dword [ebp - 0x1560], ebx
mov ecx, dword [0x100a3ec]
mov eax, dword [ebp - 0x1560]
cmp eax, dword [ecx + 0x3c]
jae 0x1006d99
push eax
call fcn.01007561
push ecx
push ecx
fstp qword [esp]
push 0x1001878
push esi
lea eax, [ebp - 0x234]
push eax
call fcn.010026fa
lea eax, [ebp - 0x234]
push eax
push edi
movzx eax, word [0x100a3e0]
push eax
call fcn.01002954
add esp, 0x20
inc dword [ebp - 0x1560]
jmp 0x1006d2e
push 0xffffffffffffffff
push 0x1001864
movzx eax, word [0x100a3e0]
push eax
call fcn.01002954
add esp, 0xc
mov ecx, dword [0x100a3ec]
inc dword [ebp - 0x1558]
jmp 0x1006d09
cmp dword [0x100a298], ebx
je 0x1006c7a
mov eax, dword [ebp - 0x1570]
cmp eax, dword [0x100a288]
jb 0x1006c7a
push 0x1001354
movzx eax, word [0x100a3e0]
push eax
call fcn.01002954
pop ecx
pop ecx
jmp 0x10068c6
mov esi, 0x100
push esi
lea eax, [ebp - 0x234]
push eax
push esi
lea eax, [ebp - 0x434]
push eax
mov edi, 0x400
push edi
lea eax, [ebp - 0x1434]
push eax
push 3
lea eax, [ebp - 0x34]
push eax
push dword [0x100a1c8]
call sub.msvcrt.dll__wsplitpath_s
add esp, 0x24
lea eax, [ebp - 0x234]
lea edx, [eax + 2]
mov cx, word [eax]
inc eax
inc eax
cmp cx, bx
jne 0x1006e1a
sub eax, edx
sar eax, 1
jne 0x1006e5b
mov eax, dword [ebp - 0x1554]
dec eax
je 0x1006e49
dec eax
je 0x1006e42
sub eax, 6
jne 0x1006e5b
push 0x100185c
jmp 0x1006e4e
push 0x1001854
jmp 0x1006e4e
push 0x100184c
push esi
lea eax, [ebp - 0x234]
push eax
call fcn.010025dc
lea eax, [ebp - 0x234]
push eax
lea eax, [ebp - 0x434]
push eax
lea eax, [ebp - 0x1434]
push eax
lea eax, [ebp - 0x34]
push eax
push edi
lea eax, [ebp - 0xc34]
push eax
call sub.msvcrt.dll__wmakepath_s
add esp, 0x18
cmp dword [ebp - 0x153c], 0x893
ja 0x1006ea3
cmp dword [ebp - 0x1554], 8
jne 0x1006ea3
mov dword [ebp - 0x1554], 3
cmp dword [0x100a1d8], ebx
je 0x1006ed8
cmp dword [0x100a348], ebx
jne 0x1006ed8
cmp dword [ebp - 0x1554], 7
je 0x1006ed8
push 5
lea eax, [ebp - 0xc34]
push eax
call fcn.010060ae
mov dword [ebp - 0x1550], eax
cmp eax, ebx
jne 0x10068c6
push dword [ebp - 0x1554]
lea eax, [ebp - 0xc34]
push eax
mov ecx, dword [0x100a3ec]
call fcn.01007272
mov dword [ebp - 0x154c], eax
cmp eax, ebx
jne 0x10068c6
mov esi, 0x1001840
lea edi, [ebp - 0x2c]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
xor eax, eax
lea edi, [ebp - 0x22]
stosd dword es:[edi], eax
stosw word es:[edi], ax
push 8
lea eax, [ebp - 0xc34]
push eax
push 0x2c2
push ebx
call dword [sym.imp.USER32.dll_LoadStringW]
mov esi, eax
lea eax, [esi - 1]
cmp eax, 6
ja 0x1006f46
push esi
lea eax, [ebp - 0xc34]
push eax
push 8
lea eax, [ebp - 0x2c]
push eax
call fcn.01002651
jmp 0x1006f49
push 4
pop esi
mov eax, dword [ebp - 0x155c]
mov ecx, dword [0x100a3ec]
imul eax, eax, 0x3e8
cmp dword [0x100a298], ebx
je 0x1006f6b
push dword [0x100a288]
jmp 0x1006f6d
push 0xffffffffffffffff
push eax
call fcn.01007326
mov dword [ebp - 0x1578], ebx
cmp dword [0x100a3f4], ebx
jne 0x10068c6
mov eax, dword [ebp - 0x1578]
cdq
idiv esi
movzx eax, word [ebp + edx*2 - 0x2c]
inc dword [ebp - 0x1578]
push eax
push 0x1001834
call dword [sym.imp.msvcrt.dll_wprintf]
pop ecx
pop ecx
push 0x1f4
push dword [0x100a3f0]
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
cmp eax, 0x102
jne 0x10068c6
mov ecx, dword [0x100a3ec]
call fcn.0100731d
cmp eax, 1
je 0x1006f79
jmp 0x10068c6
cmp dword [0x100a1d8], ebx
je 0x100701d
cmp dword [0x100a348], ebx
jne 0x100701d
push 5
push dword [0x100a1c8]
call fcn.010060ae
mov dword [ebp - 0x1550], eax
cmp eax, ebx
jne 0x1007040
cmp dword [0x100a218], ebx
je 0x100702e
push ebx
push dword [0x100a208]
jmp 0x1007035
push edi
push dword [0x100a248]
call fcn.01004aed
mov dword [ebp - 0x154c], eax
mov esi, 0x1001830
push esi
mov edi, dword [sym.imp.msvcrt.dll_wprintf]
call edi
mov dword [esp], 0x2bd
movzx eax, word [0x100a3e0]
push eax
call fcn.01003234
push esi
call edi
add esp, 0xc
mov ecx, dword [0x100a3ec]
cmp ecx, ebx
je 0x1007079
push 1
call fcn.0100240b
push 0x2be
movzx eax, word [0x100a3e0]
push eax
call fcn.01003234
pop ecx
pop ecx
mov esi, dword [ebp - 0x1550]
cmp esi, ebx
je 0x10070e0
cmp esi, 0xf0000001
je 0x10070c3
cmp esi, 0xf0000002
je 0x10070af
push esi
call fcn.010061ae
jmp 0x100710e
push 0x2bc
movzx eax, word [0x100a3d4]
push eax
call fcn.01003234
jmp 0x100710c
push dword [0x100a108]
push 0x2c0
movzx eax, word [0x100a3d4]
push eax
call fcn.01003234
add esp, 0xc
jmp 0x100710e
cmp dword [ebp - 0x154c], ebx
jne 0x10070f6
push 0x23b
movzx eax, word [0x100a3e0]
jmp 0x10070bb
push 0x1001974
push dword [ebp - 0x154c]
call fcn.01004844
mov esi, dword [ebp - 0x154c]
pop ecx
pop ecx
cmp esi, ebx
je 0x100712f
call fcn.010024f5
test eax, eax
jne 0x100712f
push 0x2c3
movzx eax, word [0x100a3d4]
push eax
call fcn.01003234
pop ecx
pop ecx
call fcn.0100201c
mov eax, esi
mov ecx, dword [ebp - 0x10]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x1c]
xor ecx, ebp
call fcn.01008013
leave
ret