Function at 0x451726
Capabilities:
Execute anti-debugging instructions

Disassembly:
pushfd
push ecx
mov ecx, dword [esp + 4]
lea ecx, [ecx + 0x6b]
xchg dword [esp + 4], ecx
mov dword [esp + 4], ecx
mov ecx, 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 edi, [edi]
and eax, 1
push edi
mov edi, dword [esp + 4]
lea edi, [edi + 0x19]
xchg dword [esp + 4], edi
mov dword [esp + 4], edi
mov edi, dword [esp]
lea esp, [esp + 4]
xchg edx, eax
xchg dword [esp], eax
xchg edx, eax
lea esp, [esp + 4]
xchg ecx, eax
xchg dword [esp], ecx
xchg ecx, eax
lea esp, [esp + 4]
je 0x450450
jne 0x45f048
jmp 0x45044e
popfd
push edi
mov edi, dword [esp + 4]
lea edi, [edi + 5]
xchg dword [esp + 4], edi
mov dword [esp + 4], edi
mov edi, dword [esp]
lea esp, [esp + 4]
je 0x44515c
jne 0x44515c
jmp 0x44515a
hlt
xchg edx, ebx
mov ebx, dword [ebp - 4]
push edx
xchg edx, ebx
pop ebx
add edx, 4
push esi
mov esi, dword [esp + 4]
lea esi, [esi + 0x6c]
xchg dword [esp + 4], esi
mov dword [esp + 4], esi
mov esi, dword [esp]
lea esp, [esp + 4]
lea eax, [ebp + 0x6c]
mov ebx, ebx
cmp edx, eax
push edx
mov edx, dword [esp + 4]
lea edx, [edx + 0x44]
xchg dword [esp + 4], edx
mov dword [esp + 4], edx
mov edx, dword [esp]
lea esp, [esp + 4]
jae 0x485d9c
xchg ecx, esi
mov esi, dword [ebp - 4]
push ecx
xchg ecx, esi
pop esi
xchg edx, eax
mov eax, dword [ecx]
push edx
xchg edx, eax
pop eax
push dword [ebp - 8]
push eax
mov eax, dword [esp + 4]
xor edx, eax
mov eax, dword [esp]
lea esp, [esp + 8]
xchg ecx, eax
mov ecx, dword [ebp - 4]
push eax
xchg ecx, eax
pop ecx
xchg dword [eax], esi
mov esi, edx
push dword [eax]
xchg dword [eax], esi
pop esi
xchg ecx, eax
mov eax, dword [ebp - 4]
push ecx
xchg ecx, eax
pop eax
xchg edx, ecx
mov ecx, dword [ebp - 8]
push edx
xchg edx, ecx
pop ecx
add edx, dword [ecx]
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]
xchg dword [ebp - 8], ebx
mov ebx, edx
push dword [ebp - 8]
xchg dword [ebp - 8], ebx
pop ebx
xchg ecx, eax
mov ecx, dword [ebp - 8]
push eax
xchg ecx, eax
pop ecx
and eax, 0xfff0
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]
xchg dword [ebp - 8], ecx
mov ecx, eax
push dword [ebp - 8]
xchg dword [ebp - 8], ecx
pop ecx
xchg ecx, eax
mov eax, dword [ebp - 4]
push ecx
xchg ecx, eax
pop eax
add ecx, 4
push ecx
mov ecx, dword [esp + 4]
lea ecx, [ecx + 0x2d]
xchg dword [esp + 4], ecx
mov dword [esp + 4], ecx
mov ecx, dword [esp]
lea esp, [esp + 4]
xchg dword [ebp - 4], eax
mov eax, ecx
push dword [ebp - 4]
xchg dword [ebp - 4], eax
pop eax
jmp 0x44515c
pushfd
push ebx
mov ebx, edi
pop ebx
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
push esi
mov esi, dword [esp + 4]
lea esi, [esi + 0x56]
xchg dword [esp + 4], esi
mov dword [esp + 4], esi
mov esi, 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 ecx, eax
xchg dword [esp], ecx
xchg ecx, eax
lea esp, [esp + 4]
je 0x48b0c4
jne 0x444cd4
jmp 0x48b0c2
invalid
xchg edx, eax
mov eax, dword [ebp - 4]
push edx
xchg edx, eax
pop eax
add edx, 4
push ebx
mov ebx, dword [esp + 4]
lea ebx, [ebx + 0x21]
xchg dword [esp + 4], ebx
mov dword [esp + 4], ebx
mov ebx, dword [esp]
lea esp, [esp + 4]
lea eax, [ebp + 0x6c]
lea edi, [edi]
cmp edx, eax
pushfd
add ebp, 0x3b
popfd
lea ebp, [ebp - 0x3b]
jae 0x4376b8
xchg ecx, eax
mov eax, dword [ebp - 4]
push ecx
xchg ecx, eax
pop eax
xchg edx, eax
mov eax, dword [ecx]
push edx
xchg edx, eax
pop eax
push dword [ebp - 8]
push eax
mov eax, dword [esp + 4]
xor edx, eax
mov eax, dword [esp]
lea esp, [esp + 8]
xchg edi, eax
mov edi, dword [ebp - 4]
push eax
xchg edi, eax
pop edi
xchg dword [eax], ecx
mov ecx, edx
push dword [eax]
xchg dword [eax], ecx
pop ecx
xchg ecx, eax
mov eax, dword [ebp - 4]
push ecx
xchg ecx, eax
pop eax
xchg edx, edi
mov edi, dword [ebp - 8]
push edx
xchg edx, edi
pop edi
add edx, dword [ecx]
push ebp
mov ebp, esp
leave
xchg dword [ebp - 8], edi
mov edi, edx
push dword [ebp - 8]
xchg dword [ebp - 8], edi
pop edi
xchg ecx, eax
mov ecx, dword [ebp - 8]
push eax
xchg ecx, eax
pop ecx
and eax, 0xfff0
push eax
mov eax, dword [esp + 4]
lea eax, [eax + 0x69]
xchg dword [esp + 4], eax
mov dword [esp + 4], eax
mov eax, dword [esp]
lea esp, [esp + 4]
xchg dword [ebp - 8], ecx
mov ecx, eax
push dword [ebp - 8]
xchg dword [ebp - 8], ecx
pop ecx
xchg ecx, edi
mov edi, dword [ebp - 4]
push ecx
xchg ecx, edi
pop edi
add ecx, 4
lea ecx, [ecx]
xchg dword [ebp - 4], eax
mov eax, ecx
push dword [ebp - 4]
xchg dword [ebp - 4], eax
pop eax
jmp 0x4477a0
inc eax
add byte [edx - 0x5e880248], dl
dec edi
xchg edx, eax
mov eax, 0x4fa177fd
push edx
xchg edx, eax
pop eax
pushfd
pushfd
add ebp, 0x2e
popfd
lea ebp, [ebp - 0x2e]
push 0x4fa177f9
push ecx
mov ecx, dword [esp + 4]
xor edx, ecx
mov ecx, dword [esp]
lea esp, [esp + 8]
popfd
push eax
mov eax, dword [esp + 4]
lea eax, [eax + 0x14]
xchg dword [esp + 4], eax
mov dword [esp + 4], eax
mov eax, dword [esp]
lea esp, [esp + 4]
imul eax, edx, 0
push ecx
mov ecx, dword [esp + 4]
lea ecx, [ecx + 1]
xchg dword [esp + 4], ecx
mov dword [esp + 4], ecx
mov ecx, dword [esp]
lea esp, [esp + 4]
xchg ecx, edx
mov edx, dword [ebp + eax - 0x18]
push ecx
xchg ecx, edx
pop edx
xchg ecx, eax
lea esp, [esp - 4]
mov dword [esp], eax
mov eax, ecx
mov ecx, dword [esp]
pushfd
push ebx
mov ebx, ecx
pop ebx
call fcn.0044c7f0
add byte [eax], al
popfd
push edi
mov edi, dword [esp + 4]
lea edi, [edi + 0x46]
xchg dword [esp + 4], edi
mov dword [esp + 4], edi
mov edi, dword [esp]
lea esp, [esp + 4]
je 0x485d9c
jne 0x485d9c
jmp 0x485d9a
push ebx
mov ebx, edi
pop ebx
add dword [esp], 0x7406
xchg dword [esp], edx
lea ecx, [ecx]
xchg dword [esp + 4], edx
push ecx
mov ecx, dword [esp + 4]
lea ecx, [ecx + 0x62]
xchg dword [esp + 4], ecx
mov dword [esp + 4], ecx
mov ecx, dword [esp]
lea esp, [esp + 4]
xchg dword [esp], edx
lea ebx, [ebx]
popfd
push ebp
mov ebp, esp
leave
jmp 0x458af8
xchg dword [ebp - 4], eax
pop eax
jmp 0x4469a4
call fcn.004e70c8
push edx
outsb dx, byte [esi]
jle 0x458ada
sbb dword [edx - 0x34], esp
or dword [eax], edi
add byte [ecx - 0x3db9b73], dl
mov dword [esp], ecx
mov ecx, eax
mov eax, dword [esp]
xchg edi, ebx
lea esp, [esp - 4]
mov dword [esp], edi
mov edi, ebx
mov ebx, dword [esp]
jmp 0x48129a
popfd
push esi
mov esi, dword [esp + 4]
lea esi, [esi + 0xc]
xchg dword [esp + 4], esi
mov dword [esp + 4], esi
mov esi, dword [esp]
lea esp, [esp + 4]
je 0x44c778
jne 0x44c778
jmp 0x44c776
mov eax, 0xac731
call fcn.004557b0
call fcn.00438578
xor esi, dword [edi]
or edi, eax
adc dword [edi + 0x78b313], ebp
add byte [edi + edx*2 + 0x4247c8b], bl
test eax, 0xb9ca8700
inc ebx
dec ecx
dec esi
sub byte [edx - 0x79], dl
retf 0x9c59
xchg edx, ecx
mov ecx, 0x284e4943
push edx
xchg edx, ecx
pop ecx
pushfd
mov eax, eax
push 0x284e4947
push eax
mov eax, dword [esp + 4]
xor edx, eax
mov eax, dword [esp]
lea esp, [esp + 8]
popfd
mov edx, edx
imul eax, edx, 0
lea ecx, [ecx]
xchg ecx, edx
mov edx, dword [ebp + eax - 0x18]
push ecx
xchg ecx, edx
pop edx
xchg edi, ecx
lea esp, [esp - 4]
mov dword [esp], edi
mov edi, ecx
mov ecx, dword [esp]
pushfd
lea ecx, [ecx]
call 0x485de5
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]
add dword [esp], 0xfffb1598
xchg dword [esp], edx
push esi
mov esi, dword [esp + 4]
lea esi, [esi + 0x74]
xchg dword [esp + 4], esi
mov dword [esp + 4], esi
mov esi, dword [esp]
lea esp, [esp + 4]
xchg dword [esp + 4], edx
pushfd
add ebp, 0x10
popfd
lea ebp, [ebp - 0x10]
xchg dword [esp], edx
push ebp
mov ebp, esp
leave
popfd
mov edx, edx
jmp dword [0x53234c]
salc
add byte [ebp - 0x7bf0f673], bl
rol esi, cl
sti
dec dword [edi]
test ebp, ecx
invalid
popfd
lea ecx, [ecx]
je 0x4477a0
jne 0x4477a0
jmp 0x44779e