Function at 0x10a3c420
Capabilities:
Execute anti-debugging instructions

Disassembly:
sub esp, 0x54
push ebx
mov ebx, ecx
mov eax, dword [ebx + 0x258]
test eax, eax
push ebp
mov ebp, dword [esp + 0x60]
mov dword [esp + 0x10], ebx
je 0x10a3c462
mov eax, dword [ebx]
call dword [eax + 0x1a4]
test eax, eax
je 0x10a3c462
mov eax, dword [ebp + 0x258]
test eax, eax
je 0x10a3c462
mov edx, dword [ebp]
mov ecx, ebp
call dword [edx + 0x1a4]
test eax, eax
jne 0x10a3c8f8
cmp ebp, dword [ebx + 0x94]
je 0x10a3c8f8
cmp ebx, ebp
je 0x10a3c8f8
mov ecx, ebx
call fcn.10a3a900
test eax, eax
je 0x10a3c490
mov ecx, ebp
call fcn.10a3a900
test eax, eax
jne 0x10a3c8f8
mov eax, dword [ebx]
push ebp
mov ecx, ebx
call dword [eax + 0x78]
test eax, eax
jne 0x10a3c8f8
mov edx, dword [ebp]
push ebx
mov ecx, ebp
call dword [edx + 0x78]
test eax, eax
jne 0x10a3c8f8
mov eax, dword [ebx + 0x6c]
push esi
mov esi, 0x8000000
test esi, eax
je 0x10a3c4d8
mov eax, dword [ebp]
mov ecx, ebp
call dword [eax + 0x1b8]
test eax, eax
jne 0x10a3c4d8
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x54
ret 8
test dword [ebp + 0x6c], esi
je 0x10a3c4eb
mov edx, dword [ebx]
mov ecx, ebx
call dword [edx + 0x1b8]
test eax, eax
je 0x10a3c4cd
mov cl, byte [ebx + 0x2d4]
mov al, 0x80
test al, cl
jne 0x10a3c54c
test byte [ebp + 0x2d4], al
jne 0x10a3c54c
call fcn.109067f0
mov ecx, dword [ebx + 0x28]
test ecx, ecx
je 0x10a3c51b
jmp 0x10a3c510
cmp ecx, eax
je 0x10a3c54c
mov ecx, dword [ecx + 0x2c]
test ecx, ecx
jne 0x10a3c510
xor ecx, ecx
test eax, eax
sete cl
mov eax, ecx
test eax, eax
jne 0x10a3c54c
call fcn.109067f0
mov ecx, dword [ebp + 0x28]
test ecx, ecx
je 0x10a3c53f
cmp ecx, eax
je 0x10a3c54c
mov ecx, dword [ecx + 0x2c]
test ecx, ecx
jne 0x10a3c534
xor edx, edx
test eax, eax
sete dl
mov eax, edx
test eax, eax
je 0x10a3c4cd
mov ecx, ebx
call fcn.10a3a900
test eax, eax
je 0x10a3c583
call fcn.109074e0
mov ecx, dword [ebp + 0x28]
test ecx, ecx
je 0x10a3c572
cmp ecx, eax
je 0x10a3c4cd
mov ecx, dword [ecx + 0x2c]
test ecx, ecx
jne 0x10a3c563
xor ecx, ecx
test eax, eax
sete cl
mov eax, ecx
test eax, eax
jne 0x10a3c4cd
mov ecx, ebp
call fcn.10a3a900
test eax, eax
je 0x10a3c5c0
call fcn.109074e0
mov ecx, dword [ebx + 0x28]
test ecx, ecx
je 0x10a3c5af
lea ebx, [ebx]
cmp ecx, eax
je 0x10a3c4cd
mov ecx, dword [ecx + 0x2c]
test ecx, ecx
jne 0x10a3c5a0
xor edx, edx
test eax, eax
sete dl
mov eax, edx
test eax, eax
jne 0x10a3c4cd
push edi
call fcn.109067f0
mov ecx, dword [ebx + 0x28]
test ecx, ecx
je 0x10a3c5df
lea ecx, [ecx]
cmp ecx, eax
je 0x10a3c73b
mov ecx, dword [ecx + 0x2c]
test ecx, ecx
jne 0x10a3c5d0
xor ecx, ecx
test eax, eax
sete cl
mov eax, ecx
test eax, eax
jne 0x10a3c73b
call fcn.109067f0
mov ecx, dword [ebp + 0x28]
test ecx, ecx
je 0x10a3c60b
lea esp, [esp]
cmp ecx, eax
je 0x10a3c618
mov ecx, dword [ecx + 0x2c]
test ecx, ecx
jne 0x10a3c600
xor edx, edx
test eax, eax
sete dl
mov eax, edx
test eax, eax
je 0x10a3c621
mov esi, ebx
mov edi, ebp
jmp 0x10a3c73f
mov ecx, ebx
call fcn.10924790
test eax, eax
jne 0x10a3c73b
call fcn.10908e90
mov ecx, dword [ebx + 0x28]
test ecx, ecx
je 0x10a3c64f
lea esp, [esp]
cmp ecx, eax
je 0x10a3c73b
mov ecx, dword [ecx + 0x2c]
test ecx, ecx
jne 0x10a3c640
xor ecx, ecx
test eax, eax
sete cl
mov eax, ecx
test eax, eax
jne 0x10a3c73b
mov ecx, ebp
call fcn.10924790
test eax, eax
jne 0x10a3c618
call fcn.10908e90
mov ecx, dword [ebp + 0x28]
test ecx, ecx
je 0x10a3c682
cmp ecx, eax
je 0x10a3c618
mov ecx, dword [ecx + 0x2c]
test ecx, ecx
jne 0x10a3c677
xor edx, edx
test eax, eax
sete dl
mov eax, edx
test eax, eax
jne 0x10a3c618
mov ecx, ebx
call fcn.10a3a900
test eax, eax
jne 0x10a3c73b
mov ecx, ebp
call fcn.10a3a900
test eax, eax
je 0x10a3c6b2
mov esi, ebx
mov edi, ebp
jmp 0x10a3c73f
fld dword [ebx + 0x150]
fsub dword [ebp + 0x150]
fld dword [ebp + 0x2d0]
fadd dword [ebx + 0x2d0]
fld st(1)
fmul st(2)
fld st(1)
fmul st(2)
fcompp
fnstsw ax
fstp st(0)
test ah, 0x41
fstp st(0)
jne 0x10a3c72f
fld dword [ebx + 0x148]
fsub dword [ebp + 0x148]
fld dword [ebx + 0x14c]
fsub dword [ebp + 0x14c]
fld dword [ebp + 0x2cc]
fadd dword [ebx + 0x2cc]
fld st(1)
fmul st(2)
fld st(3)
fmul st(4)
faddp st(1)
fld st(1)
fmul st(2)
fcompp
fstp st(0)
fnstsw ax
fstp st(0)
test ah, 0x41
fstp st(0)
jne 0x10a3c72f
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x54
ret 8
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x54
ret 8
mov edi, ebx
mov esi, ebp
mov eax, dword [esp + 0x6c]
test eax, eax
mov dword [esp + 0x60], 0
jne 0x10a3c757
lea eax, [esp + 0x34]
mov dword [esp + 0x6c], eax
mov ecx, dword [ebx + 0x98]
mov eax, dword [ecx + 0x1168]
test eax, eax
je 0x10a3c887
rdtsc
mov dword [0x10fab810], edx
mov dword [0x10fab80c], eax
mov edx, dword [0x10fab80c]
mov eax, dword [esi]
mov ecx, esi
mov dword [esp + 0x14], edx
call dword [eax + 0xd4]
mov edx, dword [esi]
mov ecx, esi
mov ebx, eax
call dword [edx + 0xd4]
mov ebp, eax
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 0xd4]
mov edx, dword [ebx]
push 0
push esi
lea ecx, [esp + 0x24]
mov dword [esp + 0x70], eax
mov eax, dword [eax]
push ecx
mov ecx, ebx
mov dword [esp + 0x1c], eax
call dword [edx + 0x8c]
mov edx, dword [ebp]
push eax
push esi
lea eax, [esp + 0x34]
push eax
mov ecx, ebp
call dword [edx + 0x90]
mov ecx, dword [esp + 0x74]
push eax
mov eax, dword [esp + 0x1c]
push edi
push ecx
mov ecx, dword [esp + 0x7c]
call dword [eax + 0x70]
mov ebx, eax
neg ebx
sbb ebx, ebx
inc ebx
rdtsc
mov dword [0x10fab810], edx
mov dword [0x10fab80c], eax
mov edx, dword [0x10fab80c]
sub edx, dword [esp + 0x14]
sub edx, 0xc
test edx, edx
mov dword [esp + 0x6c], edx
fild dword [esp + 0x6c]
jge 0x10a3c817
fadd qword [0x10e63b30]
fmul qword [0x10f43608]
mov eax, dword [esp + 0x18]
mov ecx, dword [eax + 0x98]
fmul qword [0x10e470d0]
fcom dword [ecx + 0x116c]
fnstsw ax
test ah, 0x41
jne 0x10a3c879
mov edx, dword [esi + 0x24]
mov eax, dword [0x110a36dc]
mov ecx, dword [eax + edx*4]
mov edx, dword [edi + 0x24]
mov eax, dword [eax + edx*4]
sub esp, 8
fstp qword [esp]
add ecx, 0xc
push ecx
mov ecx, dword [0x10f43370]
add eax, 0xc
push eax
push str.IOL:_Testing:_P:_s___B:_s_Time:__f
push ecx
call fcn.109baf50
add esp, 0x18
pop edi
pop esi
pop ebp
mov eax, ebx
pop ebx
add esp, 0x54
ret 8
pop edi
fstp st(0)
pop esi
pop ebp
mov eax, ebx
pop ebx
add esp, 0x54
ret 8
mov edx, dword [esi]
mov ecx, esi
call dword [edx + 0xd4]
mov ebx, eax
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0xd4]
mov edx, dword [edi]
mov ecx, edi
mov ebp, eax
call dword [edx + 0xd4]
mov edx, dword [ebx]
push 0
push esi
lea ecx, [esp + 0x30]
mov dword [esp + 0x70], eax
mov eax, dword [eax]
push ecx
mov ecx, ebx
mov dword [esp + 0x24], eax
call dword [edx + 0x8c]
mov edx, dword [ebp]
push eax
push esi
lea eax, [esp + 0x28]
push eax
mov ecx, ebp
call dword [edx + 0x90]
mov ecx, dword [esp + 0x74]
push eax
mov eax, dword [esp + 0x24]
push edi
push ecx
mov ecx, dword [esp + 0x7c]
call dword [eax + 0x70]
pop edi
neg eax
pop esi
sbb eax, eax
pop ebp
inc eax
pop ebx
add esp, 0x54
ret 8
pop ebp
xor eax, eax
pop ebx
add esp, 0x54
ret 8