Function at 0x8c68d7
Capabilities:
Persist via run registry key

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
mov eax, 0x1474
call fcn.008ce4c0
mov eax, dword [0x8d40d8]
xor eax, ebp
mov dword [ebp - 4], eax
mov ecx, dword [ebp + 0x10]
mov eax, dword [ebp + 8]
push ebx
mov dword [ebp - 0x1460], ecx
xor ecx, ecx
mov ebx, 0x104
mov dword [ebp - 0x1468], eax
mov word [eax], cx
cmp dword [ebp + 0xc], ebx
jae 0x8c6919
xor eax, eax
jmp 0x8c6ba1
lea eax, [ebp - 0x145c]
push eax
call dword [fcn.008c1148]
test eax, eax
jl 0x8c6912
push esi
mov esi, dword [fcn.008c1160]
push edi
lea eax, [ebp - 0x1458]
push eax
xor edi, edi
push 0x23
push edi
mov dword [ebp - 0x1470], edi
call esi
test eax, eax
jl 0x8c6981
push dword [ebp - 0x1468]
push dword [ebp - 0x1458]
call dword [0x8c1144]
test eax, eax
je 0x8c6b73
mov eax, dword [ebp - 0x145c]
push dword [ebp - 0x1458]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x14]
mov dword [ebp - 0x1458], edi
jmp 0x8c6b4b
lea eax, [ebp - 0x1458]
push eax
push 0x1a
push edi
call esi
test eax, eax
lea eax, [ebp - 0x41c]
jl 0x8c69c6
push eax
push dword [ebp - 0x1458]
call dword [0x8c1144]
test eax, eax
je 0x8c6b73
mov eax, dword [ebp - 0x145c]
push dword [ebp - 0x1458]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x14]
mov dword [ebp - 0x1458], edi
jmp 0x8c69d9
push ebx
push eax
push 0x1f5
push dword [ebp - 0x1460]
call dword [0x8c117c]
lea eax, [ebp - 0x1458]
push eax
push 0x19
push edi
mov dword [ebp - 0x1464], edi
call esi
test eax, eax
jl 0x8c6a34
lea eax, [ebp - 0x210]
push eax
push dword [ebp - 0x1458]
call dword [0x8c1144]
test eax, eax
je 0x8c6a10
mov dword [ebp - 0x1464], 1
mov eax, dword [ebp - 0x145c]
push dword [ebp - 0x1458]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x14]
mov dword [ebp - 0x1458], edi
cmp dword [ebp - 0x1464], edi
jne 0x8c6aea
lea eax, [ebp - 0x1460]
push eax
push 0x20019
push edi
push 0x8c1910
push 0x80000002
call dword [fcn.008c1008]
test eax, eax
jne 0x8c6abb
lea eax, [ebp - 0x146c]
push eax
lea eax, [ebp - 0x210]
push eax
lea eax, [ebp - 0x1474]
push eax
push edi
push 0x8c18ec
push dword [ebp - 0x1460]
xor esi, esi
inc esi
mov dword [ebp - 0x146c], ebx
mov dword [ebp - 0x1474], esi
call dword [0x8c1004]
test eax, eax
jne 0x8c6aa7
mov eax, dword [ebp - 0x146c]
shr eax, 1
xor ecx, ecx
mov word [ebp + eax*2 - 0x210], cx
mov dword [ebp - 0x1464], esi
push dword [ebp - 0x1460]
call dword [section..text]
cmp dword [ebp - 0x1464], edi
jne 0x8c6aea
push ebx
lea eax, [ebp - 0x210]
push eax
call dword [0x8c1058]
test eax, eax
je 0x8c6aea
push 0x900
push edi
push edi
push 0x8c18d8
push 0x106
lea eax, [ebp - 0x210]
push eax
call fcn.008d1bb4
lea eax, [ebp - 0x41c]
push eax
lea ecx, [ebp - 0x1454]
call fcn.008cf578
lea eax, [ebp - 0x210]
push eax
lea ecx, [ebp - 0xc38]
call fcn.008cf578
lea eax, [ebp - 0xe3c]
push eax
lea eax, [ebp - 0x103e]
push eax
lea eax, [ebp - 0xa24]
push eax
lea eax, [ebp - 0xa2e]
push eax
push 0x8c18c4
push 0x900
push edi
push edi
push dword [ebp + 0xc]
push dword [ebp - 0x1468]
call fcn.008d1c3a
add esp, 0x28
test eax, eax
jl 0x8c6b73
push 0x900
push edi
push edi
push 0x8c1880
push dword [ebp + 0xc]
push dword [ebp - 0x1468]
call fcn.008d1bb4
test eax, eax
jl 0x8c6b73
mov dword [ebp - 0x1470], 1
cmp dword [ebp - 0x1458], edi
pop edi
pop esi
je 0x8c6b8f
mov eax, dword [ebp - 0x145c]
push dword [ebp - 0x1458]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x14]
mov eax, dword [ebp - 0x145c]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x1470]
mov ecx, dword [ebp - 4]
xor ecx, ebp
pop ebx
call fcn.008ce492
leave
ret 0xc