Function at 0x10c15cc0
Capabilities:
Execute anti-debugging instructions

Disassembly:
mov eax, dword fs:[0]
push 0xffffffffffffffff
push 0x10e28206
push eax
mov eax, dword [0x110bb4b0]
mov dword fs:[0], esp
sub esp, 0x24
push ebp
push esi
push edi
mov edi, ecx
mov ecx, dword [0x110bb608]
lea ecx, [eax + ecx*4]
rdtsc
mov dword [0x10fab810], edx
mov dword [0x10fab80c], eax
mov edx, dword [0x10fab80c]
sub dword [ecx], edx
mov eax, dword [edi + 0xc]
test eax, eax
jle 0x10c15fae
mov esi, dword [esp + 0x44]
mov eax, dword [esi]
mov ecx, esi
call dword [eax]
test byte [0x11236354], 1
jne 0x10c15d64
or dword [0x11236354], 1
mov al, 0x80
mov byte [esp + 0x44], al
mov byte [esp + 0x45], al
mov byte [esp + 0x46], al
mov byte [esp + 0x47], 0xff
mov ecx, dword [esp + 0x44]
push ecx
mov ecx, 0x11236340
mov dword [esp + 0x3c], 0
call fcn.10b87d40
push 0x10e42510
call fcn.10dde7e6
add esp, 4
mov dword [esp + 0x38], 0xffffffff
mov eax, dword [0x1123633c]
test eax, eax
jne 0x10c15dd2
push 0
push ecx
mov eax, esp
mov dword [eax], 0
mov eax, dword [0x110b8a6c]
test eax, eax
mov dword [esp + 0x4c], esp
jne 0x10c15d9c
push 0x10e44b40
call fcn.10a1ef70
add esp, 4
mov dword [0x110b8a6c], eax
call fcn.10a1f020
mov edx, dword [0x110b8a6c]
push 0xffffffffffffffff
push edx
call fcn.10aaaa50
mov ecx, dword [0x110b84a0]
add esp, 0x10
push 0x1123633c
mov dword [0x1123633c], eax
call fcn.10a1dec0
mov ecx, dword [0x1123633c]
push 0x11236340
call fcn.10aa7bd0
mov eax, dword [0x11236338]
test eax, eax
mov ebp, 8
jne 0x10c15e5d
push 0
push ecx
mov eax, esp
mov dword [eax], 0
mov eax, dword [0x110b8acc]
test eax, eax
mov dword [esp + 0x4c], esp
jne 0x10c15e0f
push 0x10e44b40
call fcn.10a1d1a0
add esp, 4
mov dword [0x110b8acc], eax
call fcn.10a1e730
mov eax, dword [0x110b8acc]
push 0xffffffffffffffff
push eax
call fcn.10a2bdf0
mov ecx, dword [0x110b84a0]
add esp, 0x10
push 0x11236338
mov dword [0x11236338], eax
call fcn.10a1dec0
mov ecx, dword [0x11236338]
mov edx, dword [0x1123633c]
mov dword [ecx + 0x40], edx
mov eax, dword [0x11236338]
mov byte [eax + 0x44], 0
mov eax, dword [0x11236338]
or dword [eax + 0x48], 1
mov eax, dword [0x11236338]
or dword [eax + 0x48], ebp
sub esp, 0x10
mov eax, esp
mov dword [esp + 0x54], esp
push 0
mov ecx, eax
mov dword [esp + 0x24], 0
mov edx, dword [esp + 0x24]
mov dword [ecx], edx
push 0
mov dword [esp + 0x2c], 0
mov edx, dword [esp + 0x2c]
mov dword [ecx + 4], edx
push 0
mov dword [esp + 0x34], 0
mov edx, dword [esp + 0x34]
mov dword [ecx + 8], edx
push 0
mov dword [eax + 0xc], 0
mov eax, dword [esi]
push 0
mov ecx, esi
call dword [eax + 0x24]
mov eax, dword [0x11236338]
mov edx, dword [esi]
push 0
push 0
push 0
push eax
mov ecx, esi
call dword [edx + 0x3c]
mov eax, dword [esp + 0x40]
mov ecx, dword [eax + 0x1d0]
test ecx, ecx
je 0x10c15ee6
mov edx, dword [esi]
mov eax, ecx
mov ecx, dword [edi + 0x14]
push ecx
push 3
push 1
push 1
push eax
push eax
push 6
mov ecx, esi
call dword [edx + 0x40]
jmp 0x10c15f4b
mov eax, dword [eax + 4]
mov ecx, dword [eax + 0x34]
test ecx, ecx
je 0x10c15eff
cmp dword [ecx + 0x5b8], ebp
jne 0x10c15eff
mov ecx, 1
jmp 0x10c15f01
xor ecx, ecx
mov eax, dword [eax + 0x34]
test eax, eax
je 0x10c15f17
cmp dword [eax + 0x5b8], ebp
jne 0x10c15f17
mov eax, 1
jmp 0x10c15f19
xor eax, eax
mov edx, dword [edi + 0x14]
mov ebp, dword [esi]
neg ecx
sbb ecx, ecx
push edx
and ecx, 0xf
not edx
not ecx
and ecx, edx
mov edx, dword [edi + 0x14]
neg eax
push 3
sbb eax, eax
push 1
and eax, 0xf
push 1
push ecx
not eax
not edx
and eax, edx
push eax
push 3
mov ecx, esi
call dword [ebp + 0x40]
mov eax, dword [edi + 4]
mov ecx, dword [edi]
imul eax, eax, 0x2c
add eax, dword [ecx + 0xdc]
mov edx, dword [esi]
mov dword [esp + 0xc], eax
push 1
lea eax, [esp + 0x10]
push eax
push 0
mov ecx, esi
call dword [edx + 0x4c]
push edi
lea ecx, [esp + 0x20]
call fcn.10c14910
mov edx, dword [esi]
push 0
lea eax, [esp + 0x20]
push eax
mov ecx, esi
mov dword [esp + 0x40], 1
call dword [edx + 0x58]
movzx ecx, word [esp + 0x2e]
mov edx, dword [esi]
push ecx
movzx ecx, word [esp + 0x30]
push ecx
mov ecx, dword [edi + 0xc]
push ecx
push eax
push 0
mov ecx, esi
call dword [edx + 0x5c]
mov edx, dword [esi]
mov ecx, esi
call dword [edx + 4]
mov eax, dword [0x110bb4b0]
mov ecx, dword [0x110bb60c]
mov ebp, dword [eax + ecx*4]
mov edx, dword [edi + 8]
add ebp, edx
mov dword [eax + ecx*4], ebp
mov eax, dword [0x110bb4b0]
mov ecx, dword [0x110bb610]
mov esi, dword [eax + ecx*4]
mov edx, dword [edi + 0xc]
add esi, edx
mov dword [eax + ecx*4], esi
mov eax, dword [0x110bb4b0]
mov ecx, dword [0x110bb608]
lea ecx, [eax + ecx*4]
rdtsc
mov dword [0x10fab810], edx
mov dword [0x10fab80c], eax
mov edx, dword [0x10fab80c]
mov eax, dword [ecx]
add edx, 0xfffffff4
add eax, edx
pop edi
mov dword [ecx], eax
mov ecx, dword [esp + 0x2c]
pop esi
mov dword fs:[0], ecx
pop ebp
add esp, 0x30
ret 8