Function at 0x100b4691
Capabilities:
Execute anti-debugging instructions

Disassembly:
add byte [eax], al
inc ecx
pushfd
add ebp, 3
popfd
lea ebp, [ebp - 3]
cmp ecx, edi
pushfd
add ebp, 0x51
popfd
lea ebp, [ebp - 0x51]
jb 0x1008fb68
xchg ebx, eax
mov ebx, dword [esi + 4]
push eax
xchg ebx, eax
pop ebx
jmp 0x100c21fc
push ebp
mov esi, 0x1c87f387
and al, 0x87
lea esp, [esp + 4]
xchg ebx, esi
xchg dword [esp], ebx
xchg ebx, esi
lea esp, [esp + 4]
cmp edi, 8
push ebx
mov ebx, dword [esp + 6]
pop ebx
jle 0x10092de8
lea esp, [esp - 4]
mov dword [esp], esi
mov esi, dword [ecx + 0x5a]
xchg dword [esp], esi
xchg edi, eax
mov edi, dword [ecx + 0x56]
push eax
xchg edi, eax
pop edi
add eax, ebx
mov edx, edx
xchg ecx, eax
lea esp, [esp - 4]
mov dword [esp], ecx
mov ecx, eax
mov eax, dword [esp]
xchg edi, eax
lea esp, [esp - 4]
mov dword [esp], edi
mov edi, eax
mov eax, dword [esp]
lea eax, [ecx + 0x72]
pushfd
add ebp, 0x4b
popfd
lea ebp, [ebp - 0x4b]
xchg ecx, eax
lea esp, [esp - 4]
mov dword [esp], ecx
mov ecx, eax
mov eax, dword [esp]
pushfd
mov esi, esi
call fcn.1008d710
add byte [eax], al
xchg edx, ebx
mov ebx, dword [ebp - 4]
push edx
xchg edx, ebx
pop ebx
and eax, 0xfff
push edx
mov edx, dword [esp + 4]
lea edx, [edx + 0x6e]
xchg dword [esp + 4], edx
mov dword [esp + 4], edx
mov edx, dword [esp]
lea esp, [esp + 4]
add eax, dword [esi]
push ecx
mov ecx, dword [esp + 4]
lea ecx, [ecx + 0x70]
xchg dword [esp + 4], ecx
mov dword [esp + 4], ecx
mov ecx, dword [esp]
lea esp, [esp + 4]
add dword [eax + ebx], edx
push esi
mov esi, dword [esp + 4]
lea esi, [esi + 0x58]
xchg dword [esp + 4], esi
mov dword [esp + 4], esi
mov esi, dword [esp]
lea esp, [esp + 4]
jmp 0x100be4f0
add byte [eax], al
lea edi, [eax - 8]
push ecx
mov ecx, dword [esp + 4]
lea ecx, [ecx + 0x54]
xchg dword [esp + 4], ecx
mov dword [esp + 4], ecx
mov ecx, dword [esp]
lea esp, [esp + 4]
xchg ecx, eax
mov eax, 0x5f94f0c2
push ecx
xchg ecx, eax
pop eax
pushfd
mov ecx, ecx
push 0x5f94f0c2
push edx
mov edx, dword [esp + 4]
xor ecx, edx
mov edx, dword [esp]
lea esp, [esp + 8]
popfd
push eax
mov eax, dword [esp + 4]
lea eax, [eax + 0x5d]
xchg dword [esp + 4], eax
mov dword [esp + 4], eax
mov eax, dword [esp]
lea esp, [esp + 4]
shr edi, 1
push ebp
mov ebp, esp
leave
je 0x1009404c
mov edi, edi
push ebx
mov ebx, dword [esp + 4]
lea ebx, [ebx + 0x79]
xchg dword [esp + 4], ebx
mov dword [esp + 4], ebx
mov ebx, dword [esp]
lea esp, [esp + 4]
jmp 0x100c1514
lds eax, [eax]
movzx eax, word [esi + ecx*2 + 8]
mov edx, edx
xchg edx, ecx
mov ecx, eax
push edx
xchg edx, ecx
pop ecx
shr edx, 0xc
lea ecx, [ecx]
cmp edx, 3
push edi
mov edi, dword [esp + 4]
lea edi, [edi + 0x7a]
xchg dword [esp + 4], edi
mov dword [esp + 4], edi
mov edi, dword [esp]
lea esp, [esp + 4]
je 0x100b35c4
cmp edx, 0xa
push ebx
mov ebx, eax
pop ebx
jne 0x100cc6fc
jmp 0x100c33d4
add byte [eax], al
popfd
push ebp
mov ebp, esp
leave
je 0x100be4f0
jne 0x100be4f0
jmp 0x100be4ee
xchg edx, edi
xchg dword [esp], edx
xchg edx, edi
lea esp, [esp + 4]
xor eax, eax
push ebx
mov ebx, dword [esp + 4]
lea ebx, [ebx + 0x15]
xchg dword [esp + 4], ebx
mov dword [esp + 4], ebx
mov ebx, dword [esp]
lea esp, [esp + 4]
xchg ecx, ebx
xchg dword [esp], ecx
xchg ecx, ebx
lea esp, [esp + 4]
mov esp, ebp
push ecx
mov ecx, dword [esp + 4]
lea ecx, [ecx + 0x56]
xchg dword [esp + 4], ecx
mov dword [esp + 4], ecx
mov ecx, dword [esp]
lea esp, [esp + 4]
xchg esi, ebp
xchg dword [esp], esi
xchg esi, ebp
lea esp, [esp + 4]
ret
pushfd
pushfd
add ebp, 4
popfd
lea ebp, [ebp - 4]
xchg ecx, eax
lea esp, [esp - 4]
mov dword [esp], ecx
mov ecx, eax
mov eax, dword [esp]
xchg edi, edx
lea esp, [esp - 4]
mov dword [esp], edi
mov edi, edx
mov edx, dword [esp]
rdtsc
push eax
mov eax, dword [esp + 4]
lea eax, [eax + 5]
xchg dword [esp + 4], eax
mov dword [esp + 4], eax
mov eax, dword [esp]
lea esp, [esp + 4]
and eax, 1
push ecx
mov ecx, dword [esp + 4]
lea ecx, [ecx + 3]
xchg dword [esp + 4], ecx
mov dword [esp + 4], ecx
mov ecx, dword [esp]
lea esp, [esp + 4]
xchg edx, eax
xchg dword [esp], eax
xchg edx, eax
lea esp, [esp + 4]
xchg edi, eax
xchg dword [esp], edi
xchg edi, eax
lea esp, [esp + 4]
je 0x100d2f6c
jne 0x100d1e3c
jmp 0x100d2f6a
pushfd
push edi
mov edi, dword [esp + 4]
lea edi, [edi + 0x59]
xchg dword [esp + 4], edi
mov dword [esp + 4], edi
mov edi, dword [esp]
lea esp, [esp + 4]
xchg edx, eax
lea esp, [esp - 4]
mov dword [esp], edx
mov edx, eax
mov eax, dword [esp]
xchg edi, edx
lea esp, [esp - 4]
mov dword [esp], edi
mov edi, edx
mov edx, dword [esp]
rdtsc
lea edx, [edx]
and eax, 1
push ecx
mov ecx, dword [esp + 4]
lea ecx, [ecx + 0x16]
xchg dword [esp + 4], ecx
mov dword [esp + 4], ecx
mov ecx, dword [esp]
lea esp, [esp + 4]
xchg ebx, edx
xchg dword [esp], ebx
xchg ebx, edx
lea esp, [esp + 4]
xchg ecx, eax
xchg dword [esp], ecx
xchg ecx, eax
lea esp, [esp + 4]
je 0x100c0134
jne 0x100b98b4
jmp 0x100c0132
push esi
mov esi, dword [esp + 4]
lea esi, [esi + 0x7d]
xchg dword [esp + 4], esi
mov dword [esp + 4], esi
mov esi, dword [esp]
lea esp, [esp + 4]
add dword [esp], 0x1b32
xchg dword [esp], eax
pushfd
add ebp, 0x42
popfd
lea ebp, [ebp - 0x42]
xchg dword [esp + 4], eax
push ebp
mov ebp, esp
leave
xchg dword [esp], eax
push ecx
mov ecx, dword [esp + 4]
lea ecx, [ecx + 0x44]
xchg dword [esp + 4], ecx
mov dword [esp + 4], ecx
mov ecx, dword [esp]
lea esp, [esp + 4]
popfd
push ecx
mov ecx, dword [esp + 4]
lea ecx, [ecx + 0x41]
xchg dword [esp + 4], ecx
mov dword [esp + 4], ecx
mov ecx, dword [esp]
lea esp, [esp + 4]
jmp 0x100b6194
call fcn.100ccf0c
inc ecx
scasd eax, dword es:[edi]
push eax
out dx, al
jge 0x100b61bd
sub byte [edi + 3], 0
add byte [ebp - 0x361374ab], bl
pushfd
add ebp, 0x33
popfd
lea ebp, [ebp - 0x33]
je 0x1008e648
jne 0x1008e648
jmp 0x1008e646
jmp 0x14931463
xchg esi, eax
xchg dword [esp], eax
xchg esi, eax
lea esp, [esp + 4]
cmp edi, 8
push eax
mov eax, dword [esp + 4]
lea eax, [eax + 0x29]
xchg dword [esp + 4], eax
mov dword [esp + 4], eax
mov eax, dword [esp]
lea esp, [esp + 4]
jle 0x10092de8
lea esp, [esp - 4]
mov dword [esp], eax
mov eax, dword [ecx + 0x5a]
xchg dword [esp], eax
xchg ebx, eax
mov ebx, dword [ecx + 0x56]
push eax
xchg ebx, eax
pop ebx
add eax, ebx
mov eax, eax
xchg ecx, eax
lea esp, [esp - 4]
mov dword [esp], ecx
mov ecx, eax
mov eax, dword [esp]
xchg ecx, eax
lea esp, [esp - 4]
mov dword [esp], ecx
mov ecx, eax
mov eax, dword [esp]
lea eax, [ecx + 0x72]
push esi
mov esi, dword [esp + 4]
lea esi, [esi + 0x49]
xchg dword [esp + 4], esi
mov dword [esp + 4], esi
mov esi, dword [esp]
lea esp, [esp + 4]
xchg ecx, eax
lea esp, [esp - 4]
mov dword [esp], ecx
mov ecx, eax
mov eax, dword [esp]
pushfd
push ebp
mov ebp, esp
leave
call 0x100b7eec
push ebx
mov ebx, dword [esp + 4]
lea ebx, [ebx + 0x26]
xchg dword [esp + 4], ebx
mov dword [esp + 4], ebx
mov ebx, dword [esp]
lea esp, [esp + 4]
add dword [esp], 0x12855
xchg dword [esp], ebx
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]
xchg dword [esp + 4], ebx
push ebx
mov ebx, eax
pop ebx
xchg dword [esp], ebx
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]
popfd
push esi
mov esi, dword [esp + 4]
lea esi, [esi + 0xf]
xchg dword [esp + 4], esi
mov dword [esp + 4], esi
mov esi, dword [esp]
lea esp, [esp + 4]
jmp fcn.10094d34
popfd
push edi
mov edi, dword [esp + 4]
lea edi, [edi + 0x4a]
xchg dword [esp + 4], edi
mov dword [esp + 4], edi
mov edi, dword [esp]
lea esp, [esp + 4]
je 0x1008db3c
jne 0x1008db3c
jmp 0x1008db3a
add byte [eax], al
add esi, eax
push ebx
mov ebx, dword [esp + 4]
lea ebx, [ebx + 0x74]
xchg dword [esp + 4], ebx
mov dword [esp + 4], ebx
mov ebx, dword [esp]
lea esp, [esp + 4]
xchg ecx, eax
mov ecx, dword [esi + 4]
push eax
xchg ecx, eax
pop ecx
test eax, eax
push edx
mov edx, dword [esp + 4]
lea edx, [edx + 0x48]
xchg dword [esp + 4], edx
mov dword [esp + 4], edx
mov edx, dword [esp]
lea esp, [esp + 4]
jne 0x1008e648
xchg ecx, esi
mov esi, dword [ebp + 8]
push ecx
xchg ecx, esi
pop esi
xchg edi, eax
mov eax, dword [ecx]
push edi
xchg edi, eax
pop eax
jmp 0x100b7e60
out dx, al
int 0x9d
popfd
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]
je 0x100b7e60
jne 0x100b7e60
jmp 0x100b7e5e
test al, 0
inc ecx
push eax
mov eax, dword [esp + 4]
lea eax, [eax + 0x71]
xchg dword [esp + 4], eax
mov dword [esp + 4], eax
mov eax, dword [esp]
lea esp, [esp + 4]
cmp ecx, edi
push ecx
mov ecx, dword [esp + 4]
lea ecx, [ecx + 0x1a]
xchg dword [esp + 4], ecx
mov dword [esp + 4], ecx
mov ecx, dword [esp]
lea esp, [esp + 4]
jb 0x1008fb68
xchg edx, eax
mov edx, dword [esi + 4]
push eax
xchg edx, eax
pop edx
jmp 0x100c21fc
push edx
pop ecx
movzx eax, word [esi + ecx*2 + 8]
push ecx
mov ecx, dword [esp + 4]
lea ecx, [ecx + 0xe]
xchg dword [esp + 4], ecx
mov dword [esp + 4], ecx
mov ecx, dword [esp]
lea esp, [esp + 4]
xchg edx, edi
mov edi, eax
push edx
xchg edx, edi
pop edi
shr edx, 0xc
push ecx
mov ecx, dword [esp + 4]
lea ecx, [ecx + 0x49]
xchg dword [esp + 4], ecx
mov dword [esp + 4], ecx
mov ecx, dword [esp]
lea esp, [esp + 4]
cmp edx, 3
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 0x100c33d4
cmp edx, 0xa
push eax
mov eax, dword [esp + 4]
lea eax, [eax + 0x3e]
xchg dword [esp + 4], eax
mov dword [esp + 4], eax
mov eax, dword [esp]
lea esp, [esp + 4]
jne 0x100be4f0
jmp 0x100c33d4
xchg esi, eax
add byte [ebp + 0x245c8b53], bl
add al, 0x8d
pop ebx
sbb al, 0x87
pop esp
and al, 4
popfd
push ebx
mov ebx, dword [esp + 4]
lea ebx, [ebx + 0x1c]
xchg dword [esp + 4], ebx
mov dword [esp + 4], ebx
mov ebx, dword [esp]
lea esp, [esp + 4]
je 0x100c33d4
jne 0x100c33d4
jmp 0x100c33d2
pushfd
pushfd
add ebp, 6
popfd
lea ebp, [ebp - 6]
xchg ecx, eax
lea esp, [esp - 4]
mov dword [esp], ecx
mov ecx, eax
mov eax, dword [esp]
xchg ebx, edx
lea esp, [esp - 4]
mov dword [esp], ebx
mov ebx, edx
mov edx, dword [esp]
rdtsc
push esi
mov esi, dword [esp + 5]
pop esi
and eax, 1
push eax
mov eax, dword [esp + 4]
lea eax, [eax + 0x5b]
xchg dword [esp + 4], eax
mov dword [esp + 4], eax
mov eax, dword [esp]
lea esp, [esp + 4]
xchg edi, edx
xchg dword [esp], edi
xchg edi, edx
lea esp, [esp + 4]
xchg ecx, eax
xchg dword [esp], ecx
xchg ecx, eax
lea esp, [esp + 4]
je 0x100c4b20
jne 0x100ce950
jmp 0x100c4b1e
add byte [eax], al
add esi, eax
push eax
mov eax, dword [esp + 4]
lea eax, [eax + 0x7b]
xchg dword [esp + 4], eax
mov dword [esp + 4], eax
mov eax, dword [esp]
lea esp, [esp + 4]
xchg edi, eax
mov edi, dword [esi + 4]
push eax
xchg edi, eax
pop edi
test eax, eax
push ecx
mov ecx, dword [esp + 4]
lea ecx, [ecx + 0x67]
xchg dword [esp + 4], ecx
mov dword [esp + 4], ecx
mov ecx, dword [esp]
lea esp, [esp + 4]
jne 0x1008e648
xchg ecx, eax
mov eax, dword [ebp + 8]
push ecx
xchg ecx, eax
pop eax
xchg edi, eax
mov eax, dword [ecx]
push edi
xchg edi, eax
pop eax
jmp 0x100c40b8
pop ss
add byte [edx + 0x52fc458b], dl
xchg edx, eax
mov eax, dword [ebp - 4]
push edx
xchg edx, eax
pop eax
and eax, 0xfff
push edi
mov edi, dword [esp + 4]
lea edi, [edi + 0x38]
xchg dword [esp + 4], edi
mov dword [esp + 4], edi
mov edi, dword [esp]
lea esp, [esp + 4]
add eax, dword [esi]
push eax
mov eax, dword [esp + 4]
lea eax, [eax + 0x18]
xchg dword [esp + 4], eax
mov dword [esp + 4], eax
mov eax, dword [esp]
lea esp, [esp + 4]
add dword [eax + ebx], edx
push ecx
mov ecx, dword [esp + 4]
lea ecx, [ecx + 0x42]
xchg dword [esp + 4], ecx
mov dword [esp + 4], ecx
mov ecx, dword [esp]
lea esp, [esp + 4]
jmp 0x100be4f0
pushfd
push esi
mov esi, dword [esp + 4]
lea esi, [esi + 0x2a]
xchg dword [esp + 4], esi
mov dword [esp + 4], esi
mov esi, dword [esp]
lea esp, [esp + 4]
xchg esi, eax
lea esp, [esp - 4]
mov dword [esp], esi
mov esi, eax
mov eax, dword [esp]
xchg edx, eax
lea esp, [esp - 4]
mov dword [esp], eax
mov eax, edx
mov edx, dword [esp]
rdtsc
pushfd
add ebp, 0x15
popfd
lea ebp, [ebp - 0x15]
and eax, 1
push edi
mov edi, dword [esp + 4]
lea edi, [edi + 0x22]
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 edx, eax
xchg dword [esp], edx
xchg edx, eax
lea esp, [esp + 4]
je 0x100bc8e4
jne 0x100c824c
jmp 0x100bc8e2
add byte [eax], al
popfd
push eax
mov eax, dword [esp + 4]
lea eax, [eax + 0x5e]
xchg dword [esp + 4], eax
mov dword [esp + 4], eax
mov eax, dword [esp]
lea esp, [esp + 4]
je 0x1008fb68
jne 0x1008fb68
jmp 0x1008fb66
popfd
push esi
mov esi, dword [esp + 4]
lea esi, [esi + 0x14]
xchg dword [esp + 4], esi
mov dword [esp + 4], esi
mov esi, dword [esp]
lea esp, [esp + 4]
je 0x1008c5c4
jne 0x1008c5c4
jmp 0x1008c5c2
popfd
push ebp
mov ebp, esp
leave
je 0x1008d6a4
jne 0x1008d6a4
jmp 0x1008d6a2
pushfd
push ebx
mov ebx, dword [esp + 4]
lea ebx, [ebx + 0x45]
xchg dword [esp + 4], ebx
mov dword [esp + 4], ebx
mov ebx, 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], eax
mov eax, edx
mov edx, dword [esp]
rdtsc
push edx
mov edx, dword [esp + 4]
lea edx, [edx + 0x22]
xchg dword [esp + 4], edx
mov dword [esp + 4], edx
mov edx, dword [esp]
lea esp, [esp + 4]
and eax, 1
push ebp
mov ebp, esp
leave
xchg esi, edx
xchg dword [esp], esi
xchg esi, edx
lea esp, [esp + 4]
xchg edx, eax
xchg dword [esp], edx
xchg edx, eax
lea esp, [esp + 4]
je 0x10091560
jne 0x100c74a0
jmp 0x1009155e
popfd
pushfd
add ebp, 0x4c
popfd
lea ebp, [ebp - 0x4c]
je 0x100beddc
jne 0x100beddc
jmp 0x100bedda
popfd
push ecx
mov ecx, dword [esp + 4]
lea ecx, [ecx + 0x29]
xchg dword [esp + 4], ecx
mov dword [esp + 4], ecx
mov ecx, dword [esp]
lea esp, [esp + 4]
je 0x100b9f0c
jne 0x100b9f0c
jmp 0x100b9f0a
jno 0x8498860d
popfd
push esi
mov esi, dword [esp + 4]
and al, 4
lea esi, [esi + 0x31]
xchg dword [esp + 4], esi
mov dword [esp + 4], esi
mov esi, dword [esp]
lea esp, [esp + 4]
je 0x100c21fc
jne 0x100c21fc
jmp 0x100c21fa