Function at 0x100c3c61
Capabilities:
Execute anti-debugging instructions

Disassembly:
pushfd
push ecx
mov ecx, dword [esp + 4]
lea ecx, [ecx + 0x57]
xchg dword [esp + 4], ecx
mov dword [esp + 4], ecx
mov ecx, dword [esp]
lea esp, [esp + 4]
xchg edi, eax
lea esp, [esp - 4]
mov dword [esp], edi
mov edi, eax
mov eax, dword [esp]
xchg edx, eax
lea esp, [esp - 4]
mov dword [esp], eax
mov eax, edx
mov edx, dword [esp]
rdtsc
push eax
mov eax, dword [esp + 4]
lea eax, [eax + 0x66]
xchg dword [esp + 4], eax
mov dword [esp + 4], eax
mov eax, dword [esp]
lea esp, [esp + 4]
and eax, 1
push eax
mov eax, dword [esp + 4]
lea eax, [eax + 0x31]
xchg dword [esp + 4], eax
mov dword [esp + 4], eax
mov eax, dword [esp]
lea esp, [esp + 4]
xchg edx, eax
xchg dword [esp], eax
xchg edx, eax
lea esp, [esp + 4]
xchg esi, eax
xchg dword [esp], esi
xchg esi, eax
lea esp, [esp + 4]
je 0x100c5a88
jne 0x100cd818
jmp 0x100c5a86
pushfd
pushfd
add ebp, 5
popfd
lea ebp, [ebp - 5]
xchg edi, eax
lea esp, [esp - 4]
mov dword [esp], edi
mov edi, eax
mov eax, dword [esp]
xchg edx, eax
lea esp, [esp - 4]
mov dword [esp], eax
mov eax, edx
mov edx, dword [esp]
rdtsc
push ebx
mov ebx, dword [esp + 4]
lea ebx, [ebx + 3]
xchg dword [esp + 4], ebx
mov dword [esp + 4], ebx
mov ebx, dword [esp]
lea esp, [esp + 4]
and eax, 1
pushfd
add ebp, 0x41
popfd
lea ebp, [ebp - 0x41]
xchg ecx, edx
xchg dword [esp], ecx
xchg ecx, edx
lea esp, [esp + 4]
xchg ecx, eax
xchg dword [esp], ecx
xchg ecx, eax
lea esp, [esp + 4]
je 0x100c9aa4
jne 0x100bcc10
jmp 0x100c9aa2
popfd
push esi
mov esi, dword [esp + 4]
lea esi, [esi + 0x3d]
xchg dword [esp + 4], esi
mov dword [esp + 4], esi
mov esi, dword [esp]
lea esp, [esp + 4]
je 0x100b4fac
jne 0x100b4fac
jmp 0x100b4faa
or eax, dword [eax]
xchg ebx, ecx
mov ecx, dword [edx + 0x10]
push ebx
xchg ebx, ecx
pop ecx
xchg edi, eax
mov eax, dword [edx + 0xc]
push edi
xchg edi, eax
pop eax
add ebx, ecx
push ecx
mov ecx, dword [esp + 4]
lea ecx, [ecx + 0x78]
xchg dword [esp + 4], ecx
add byte [eax], al
xchg ecx, ebx
mov ebx, dword [ebp + 0xc]
push ecx
xchg ecx, ebx
pop ebx
xchg edx, eax
mov edx, dword [ecx + 0x3c]
push eax
xchg edx, eax
pop edx
mov eax, dword [eax + ecx + 0x80]
push eax
mov eax, dword [esp + 4]
lea eax, [eax + 0x53]
xchg dword [esp + 4], eax
mov dword [esp + 4], eax
mov eax, dword [esp]
lea esp, [esp + 4]
test eax, eax
push ebp
mov ebp, esp
leave
je 0x100d13c4
jmp 0x100bff0c
das
inc esi
lea edi, [edi]
add dword [esp], 0x90e8
xchg dword [esp], ebx
lea ebx, [ebx]
xchg dword [esp + 4], ebx
push edx
mov edx, dword [esp + 4]
lea edx, [edx + 0x5d]
xchg dword [esp + 4], edx
mov dword [esp + 4], edx
mov edx, dword [esp]
lea esp, [esp + 4]
xchg dword [esp], ebx
push ecx
mov ecx, dword [esp + 4]
lea ecx, [ecx + 0x64]
xchg dword [esp + 4], ecx
mov dword [esp + 4], ecx
mov ecx, dword [esp]
lea esp, [esp + 4]
popfd
push edi
mov edi, dword [esp + 0xa]
pop edi
jmp 0x100c395c
popfd
pushfd
add ebp, 0x30
popfd
lea ebp, [ebp - 0x30]
je 0x100b3718
jne 0x100b3718
jmp 0x100b3716
lea edx, [eax + ecx]
push ebp
mov ebp, esp
leave
xchg ecx, eax
mov ecx, dword [edx]
push eax
xchg ecx, eax
pop ecx
xchg dword [ebp - 4], eax
mov eax, edx
push dword [ebp - 4]
xchg dword [ebp - 4], eax
pop eax
test eax, eax
pushfd
add ebp, 0x63
popfd
lea ebp, [ebp - 0x63]
je 0x10090e64
jmp 0x10092ef8
call fcn.1008c7e0
idiv byte [esi - 0x24]
sub al, 0x30
mov byte [0x3272c2], al
add byte [esp + ebx*4 - 0x62a33a7d], bl
lea ebp, [ebp - 0x5c]
xchg esi, eax
lea esp, [esp - 4]
mov dword [esp], esi
mov esi, eax
mov eax, dword [esp]
xchg esi, edx
lea esp, [esp - 4]
mov dword [esp], esi
mov esi, edx
mov edx, dword [esp]
rdtsc
pushfd
add ebp, 0x33
popfd
lea ebp, [ebp - 0x33]
and eax, 1
push edi
mov edi, dword [esp + 4]
lea edi, [edi + 0x45]
xchg dword [esp + 4], edi
mov dword [esp + 4], edi
mov edi, dword [esp]
lea esp, [esp + 4]
xchg ecx, edx
xchg dword [esp], ecx
xchg ecx, edx
lea esp, [esp + 4]
xchg esi, eax
xchg dword [esp], esi
xchg esi, eax
lea esp, [esp + 4]
je 0x100c3c60
jne 0x100949c0
jmp 0x100c3c5e
sbb al, 0xf7
popfd
push ebp
mov ebp, esp
leave
je 0x100cda80
jne 0x100cda80
jmp 0x100cda7e
fiadd word [eax]
popfd
push ebx
mov ebx, dword [esp + 4]
lea ebx, [ebx + 0x11]
xchg dword [esp + 4], ebx
mov dword [esp + 4], ebx
mov ebx, dword [esp]
lea esp, [esp + 4]
je 0x100b7310
jne 0x100b7310
jmp 0x100b730e
add byte [eax], al
add byte [eax], al
popfd
push ecx
mov ecx, dword [esp + 4]
lea ecx, [ecx + 0x7e]
xchg dword [esp + 4], ecx
mov dword [esp + 4], ecx
mov ecx, dword [esp]
lea esp, [esp + 4]
je 0x100c8648
jne 0x100c8648
jmp 0x100c8646
adc al, 0
cmp esi, 8
pushfd
add ebp, 0x7c
popfd
lea ebp, [ebp - 0x7c]
jle 0x100d13c4
lea esp, [esp - 4]
mov dword [esp], eax
mov eax, dword [ebx + 0x3a]
xchg dword [esp], eax
xchg edx, eax
mov edx, dword [ebx + 0x36]
push eax
xchg edx, eax
pop edx
add eax, ecx
push eax
mov eax, dword [esp + 4]
lea eax, [eax + 0x64]
xchg dword [esp + 4], eax
mov dword [esp + 4], eax
mov eax, dword [esp]
lea esp, [esp + 4]
xchg ecx, eax
lea esp, [esp - 4]
mov dword [esp], ecx
mov ecx, eax
mov eax, dword [esp]
xchg edx, eax
lea esp, [esp - 4]
mov dword [esp], edx
mov edx, eax
mov eax, dword [esp]
lea eax, [ebx + 0x72]
mov ebx, ebx
xchg esi, eax
lea esp, [esp - 4]
mov dword [esp], esi
mov esi, eax
mov eax, dword [esp]
pushfd
push ecx
mov ecx, eax
pop ecx
call 0x100cb53c
push esi
mov esi, dword [esp + 4]
lea esi, [esi + 9]
xchg dword [esp + 4], esi
mov dword [esp + 4], esi
mov esi, dword [esp]
lea esp, [esp + 4]
add dword [esp], 0xfffea181
xchg dword [esp], edx
push ebx
mov ebx, dword [esp + 4]
lea ebx, [ebx + 0x3c]
xchg dword [esp + 4], ebx
mov dword [esp + 4], ebx
mov ebx, dword [esp]
lea esp, [esp + 4]
xchg dword [esp + 4], edx
push ecx
mov ecx, dword [esp + 4]
lea ecx, [ecx + 0xb]
xchg dword [esp + 4], ecx
mov dword [esp + 4], ecx
mov ecx, dword [esp]
lea esp, [esp + 4]
xchg dword [esp], edx
push ebp
mov ebp, esp
leave
popfd
push edi
mov edi, dword [esp + 4]
lea edi, [edi + 0x48]
xchg dword [esp + 4], edi
mov dword [esp + 4], edi
mov edi, dword [esp]
lea esp, [esp + 4]
jmp fcn.10094d34
popfd
push ecx
mov ecx, dword [esp + 4]
lea ecx, [ecx + 0x63]
xchg dword [esp + 4], ecx
mov dword [esp + 4], ecx
mov ecx, dword [esp]
lea esp, [esp + 4]
je 0x100cb4c8
jne 0x100cb4c8
jmp 0x100cb4c6
add byte [eax], al
xchg ecx, eax
mov eax, dword [ebp + 0xc]
push ecx
xchg ecx, eax
pop eax
xchg edi, eax
mov edi, dword [ecx + 0x3c]
push eax
xchg edi, eax
pop edi
mov eax, dword [eax + ecx + 0x80]
push edi
mov edi, dword [esp + 4]
lea edi, [edi + 0x32]
xchg dword [esp + 4], edi
mov dword [esp + 4], edi
mov edi, dword [esp]
lea esp, [esp + 4]
test eax, eax
push edi
mov edi, dword [esp + 4]
pop edi
je 0x100d13c4
jmp 0x100bff0c