Function at 0x4e4b7d
Capabilities:
Execute anti-debugging instructions

Disassembly:
xlatb
and bl, byte [ebp + 0x65c5839c]
popfd
pushfd
add ebp, 0x65
popfd
lea ebp, [ebp - 0x65]
je 0x531708
jne 0x531708
jmp 0x531706
lea esp, [esp - 4]
mov dword [esp], ecx
insb byte es:[edi], dx
add byte [ebx - 0x74aff7c6], al
inc esp
and al, 4
cmp dword [edx], 8
push eax
mov eax, dword [esp + 4]
lea eax, [eax + 0x48]
xchg dword [esp + 4], eax
mov dword [esp + 4], eax
mov eax, dword [esp]
lea esp, [esp + 4]
jle 0x531708
lea esp, [esp - 4]
mov dword [esp], esi
mov esi, dword [edx + 0x3a]
xchg dword [esp], esi
xchg ecx, eax
mov ecx, dword [edx + 0x36]
push eax
xchg ecx, eax
pop ecx
add eax, ebx
push eax
mov eax, dword [esp + 4]
lea eax, [eax + 0xe]
xchg dword [esp + 4], eax
mov dword [esp + 4], eax
mov eax, 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 esi, eax
lea esp, [esp - 4]
mov dword [esp], esi
mov esi, eax
mov eax, dword [esp]
lea eax, [edx + 0x72]
push ecx
mov ecx, dword [esp - 9]
pop ecx
xchg ecx, eax
lea esp, [esp - 4]
mov dword [esp], ecx
mov ecx, eax
mov eax, dword [esp]
pushfd
push edi
mov edi, dword [esp + 4]
lea edi, [edi + 0x29]
xchg dword [esp + 4], edi
mov dword [esp + 4], edi
mov edi, dword [esp]
lea esp, [esp + 4]
call fcn.0040a13a
pushfd
push esi
mov esi, dword [esp + 4]
lea esi, [esi + 0x73]
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
lea edi, [edi]
and eax, 1
push eax
mov eax, dword [esp + 4]
lea eax, [eax + 0x32]
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 edi, eax
xchg dword [esp], edi
xchg edi, eax
lea esp, [esp + 4]
je 0x4062bc
jne 0x530b8c
jmp 0x4062ba
add byte [eax], al
xchg esi, ebx
mov ebx, dword [ecx + 0xc]
push esi
xchg esi, ebx
pop ebx
add eax, ebx
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]
xchg edx, eax
mov eax, dword [ecx + 0x10]
push edx
xchg edx, eax
pop eax
add esi, ebx
pushfd
add ebp, 0x76
popfd
lea ebp, [ebp - 0x76]
add edx, ebx
push ecx
mov ecx, dword [esp + 4]
lea ecx, [ecx + 0x3d]
xchg dword [esp + 4], ecx
mov dword [esp + 4], ecx
mov ecx, dword [esp]
lea esp, [esp + 4]
xchg dword [ebp - 8], edx
mov edx, eax
push dword [ebp - 8]
xchg dword [ebp - 8], edx
pop edx
xchg esi, eax
lea esp, [esp - 4]
mov dword [esp], eax
mov eax, esi
mov esi, dword [esp]
xchg dword [ebp - 0xc], ecx
mov ecx, edx
push dword [ebp - 0xc]
xchg dword [ebp - 0xc], ecx
pop ecx
pushfd
push esi
mov esi, ebx
pop esi
call fcn.004def73
mov dword [eax], 0x51180c8d
lea ecx, [eax + ebx]
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 edx, eax
mov edx, dword [ecx]
push eax
xchg edx, eax
pop edx
xchg dword [ebp - 4], edx
mov edx, ecx
push dword [ebp - 4]
xchg dword [ebp - 4], edx
pop edx
xchg esi, eax
lea esp, [esp - 4]
mov dword [esp], eax
mov eax, esi
mov esi, dword [esp]
xchg edi, eax
lea esp, [esp - 4]
mov dword [esp], eax
mov eax, edi
mov edi, dword [esp]
test eax, eax
push ecx
mov ecx, dword [esp + 4]
lea ecx, [ecx + 0x25]
xchg dword [esp + 4], ecx
mov dword [esp + 4], ecx
mov ecx, dword [esp]
lea esp, [esp + 4]
je 0x532350
jmp 0x4deef8
popfd
push ebp
mov ebp, esp
leave
je 0x40a0a0
jne 0x40a0a0
jmp 0x40a09e
pushfd
push ebp
mov ebp, esp
leave
xchg edi, eax
lea esp, [esp - 4]
mov dword [esp], edi
mov edi, eax
mov eax, dword [esp]
xchg ecx, edx
lea esp, [esp - 4]
mov dword [esp], ecx
mov ecx, edx
mov edx, dword [esp]
rdtsc
mov esi, esi
and eax, 1
pushfd
add ebp, 0x74
popfd
lea ebp, [ebp - 0x74]
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 0x529a70
jne 0x530290
jmp 0x529a6e
popfd
push eax
mov eax, ecx
pop eax
je 0x5220ac
jne 0x5220ac
jmp 0x5220aa
popfd
push eax
mov eax, dword [esp + 4]
lea eax, [eax + 0x49]
xchg dword [esp + 4], eax
mov dword [esp + 4], eax
mov eax, dword [esp]
lea esp, [esp + 4]
je 0x52f694
jne 0x52f694
jmp 0x52f692
out dx, eax
add byte [ebp + 0x63c5839c], bl
popfd
pushfd
add ebp, 0x63
popfd
lea ebp, [ebp - 0x63]
je 0x52a2a8
jne 0x52a2a8
jmp 0x52a2a6
pop ebx
not dword [ebx + 0x530c458b]
xchg ebx, eax
mov eax, dword [ebp + 0xc]
push ebx
xchg ebx, eax
pop eax
jmp 0x529cdc
add byte [eax], al
xchg ebx, edi
xchg dword [esp], ebx
xchg ebx, edi
lea esp, [esp + 4]
xchg esi, eax
xchg dword [esp], eax
xchg esi, eax
lea esp, [esp + 4]
xor eax, eax
push ecx
mov ecx, esi
pop ecx
xchg ebx, eax
xchg dword [esp], eax
xchg ebx, eax
lea esp, [esp + 4]
mov esp, ebp
push ecx
mov ecx, dword [esp + 4]
lea ecx, [ecx + 0x1e]
xchg dword [esp + 4], ecx
mov dword [esp + 4], ecx
mov ecx, dword [esp]
lea esp, [esp + 4]
xchg ebp, eax
xchg dword [esp], eax
xchg ebp, eax
lea esp, [esp + 4]
ret
in eax, dx
sbb byte [ebp - 0x361374ab], 0xf
test cl, bl
ja 0x527719
popfd
push ebp
mov ebp, esp
leave
je 0x4deef8
dec dword [edi]
test ebx, edx
ja 0x52771f
jne 0x4deef8
invalid
jmp 0x4deef6
pushfd
pushfd
add ebp, 0x66
popfd
lea ebp, [ebp - 0x66]
xchg ecx, eax
lea esp, [esp - 4]
mov dword [esp], ecx
mov ecx, eax
mov eax, dword [esp]
xchg ecx, edx
lea esp, [esp - 4]
mov dword [esp], ecx
mov ecx, edx
mov edx, dword [esp]
rdtsc
push ecx
mov ecx, dword [esp + 4]
lea ecx, [ecx + 0x43]
xchg dword [esp + 4], ecx
mov dword [esp + 4], ecx
mov ecx, dword [esp]
lea esp, [esp + 4]
and eax, 1
push ebx
mov ebx, dword [esp + 4]
lea ebx, [ebx + 0x16]
xchg dword [esp + 4], ebx
mov dword [esp + 4], ebx
mov ebx, 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 0x52f1ac
jne 0x4e49d4
jmp 0x52f1aa
add byte [eax], al
popfd
pushfd
add ebp, 0x7d
popfd
lea ebp, [ebp - 0x7d]
je 0x529cdc
jne 0x529cdc
jmp 0x529cda
add byte [eax], al
lea ecx, [eax + ebx]
push ebp
mov ebp, esp
leave
xchg edx, eax
mov edx, dword [ecx]
push eax
xchg edx, eax
pop edx
xchg dword [ebp - 4], edx
mov edx, ecx
push dword [ebp - 4]
xchg dword [ebp - 4], edx
pop edx
xchg esi, eax
lea esp, [esp - 4]
mov dword [esp], eax
mov eax, esi
mov esi, dword [esp]
xchg esi, edi
lea esp, [esp - 4]
mov dword [esp], esi
mov esi, edi
mov edi, dword [esp]
test eax, eax
push eax
mov eax, dword [esp + 4]
lea eax, [eax + 0x6f]
xchg dword [esp + 4], eax
mov dword [esp + 4], eax
mov eax, dword [esp]
lea esp, [esp + 4]
je 0x528e00
jmp 0x52ded8
or ebp, 0xffffff87
sti
xchg ebx, edi
mov edi, dword [ebp + 0xc]
push ebx
xchg ebx, edi
pop edi
jmp 0x4e4b7c
pushfd
push edi
mov edi, dword [esp + 4]
lea edi, [edi + 0x62]
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 ecx, edx
lea esp, [esp - 4]
mov dword [esp], ecx
mov ecx, edx
mov edx, dword [esp]
rdtsc
push edi
mov edi, dword [esp + 4]
lea edi, [edi + 0x41]
xchg dword [esp + 4], edi
mov dword [esp + 4], edi
mov edi, dword [esp]
lea esp, [esp + 4]
and eax, 1
push edi
mov edi, dword [esp + 4]
lea edi, [edi]
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 ecx, eax
xchg dword [esp], ecx
xchg ecx, eax
lea esp, [esp + 4]
je 0x527714
jne 0x4e6acc
jmp 0x527712
lea esi, [esi]
add dword [esp], 0x4f4
xchg dword [esp], ecx
push ebx
mov ebx, dword [esp + 4]
lea ebx, [ebx + 0x23]
xchg dword [esp + 4], ebx
mov dword [esp + 4], ebx
mov ebx, dword [esp]
lea esp, [esp + 4]
xchg dword [esp + 4], ecx
push eax
mov eax, dword [esp + 4]
lea eax, [eax + 0x65]
xchg dword [esp + 4], eax
mov dword [esp + 4], eax
mov eax, dword [esp]
lea esp, [esp + 4]
xchg dword [esp], ecx
push eax
mov eax, dword [esp + 4]
lea eax, [eax + 0x4a]
xchg dword [esp + 4], eax
mov dword [esp + 4], eax
mov eax, dword [esp]
lea esp, [esp + 4]
popfd
pushfd
add ebp, 0x7b
popfd
lea ebp, [ebp - 0x7b]
jmp 0x52ec40
mov dword [esp + 4], eax
mov eax, dword [esp]
lea esp, [esp + 4]
xchg esi, edx
xchg dword [esp], esi
xchg esi, edx
lea esp, [esp + 4]
xchg edi, eax
xchg dword [esp], edi
xchg edi, eax
lea esp, [esp + 4]
je 0x51f36c
jne 0x4e52b8
jmp 0x51f36a
call fcn.004e49ec
out 0x9a, eax
cmp byte [ecx + eax + 0x7f], 0xd
loope 0x52ebf9
add byte [eax], al
mov dword [0x53a468], eax
xchg esi, eax
xchg dword [esp], eax
xchg esi, eax
lea esp, [esp + 4]
test eax, eax
push eax
mov eax, dword [esp - 0xc]
pop eax
jne 0x407330
or eax, 0xffffffff
push eax
mov eax, dword [esp + 4]
lea eax, [eax + 0x70]
xchg dword [esp + 4], eax
mov dword [esp + 4], eax
mov eax, dword [esp]
lea esp, [esp + 4]
mov esp, ebp
lea edi, [edi]
xchg ebx, ebp
xchg dword [esp], ebx
xchg ebx, ebp
lea esp, [esp + 4]
ret 8
add byte [eax], al
popfd
pushfd
add ebp, 0x2c
popfd
lea ebp, [ebp - 0x2c]
je 0x532350
jne 0x532350
jmp 0x53234e
add byte [eax], al
xchg esi, eax
mov eax, dword [ecx + 0xc]
push esi
xchg esi, eax
pop eax
add eax, ebx
push eax
mov eax, dword [esp + 4]
lea eax, [eax + 0x65]
xchg dword [esp + 4], eax
mov dword [esp + 4], eax
mov eax, dword [esp]
lea esp, [esp + 4]
xchg edx, edi
mov edi, dword [ecx + 0x10]
push edx
xchg edx, edi
pop edi
add esi, ebx
pushfd
add ebp, 0x6a
popfd
lea ebp, [ebp - 0x6a]
add edx, ebx
push edi
mov edi, dword [esp + 4]
lea edi, [edi + 0x14]
xchg dword [esp + 4], edi
mov dword [esp + 4], edi
mov edi, 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 esi, eax
lea esp, [esp - 4]
mov dword [esp], eax
mov eax, esi
mov esi, dword [esp]
xchg dword [ebp - 0xc], ecx
mov ecx, edx
push dword [ebp - 0xc]
xchg dword [ebp - 0xc], ecx
pop ecx
pushfd
push ecx
mov ecx, dword [esp + 4]
lea ecx, [ecx + 0x7c]
xchg dword [esp + 4], ecx
mov dword [esp + 4], ecx
mov ecx, dword [esp]
lea esp, [esp + 4]
call 0x52f722
push esi
mov esi, dword [esp + 4]
lea esi, [esi + 0x11]
xchg dword [esp + 4], esi
mov dword [esp + 4], esi
mov esi, dword [esp]
lea esp, [esp + 4]
add dword [esp], 0xffedb044
xchg dword [esp], ebx
push ecx
mov ecx, eax
pop ecx
xchg dword [esp + 4], ebx
push edi
mov edi, dword [esp + 4]
lea edi, [edi + 0x42]
xchg dword [esp + 4], edi
mov dword [esp + 4], edi
mov edi, dword [esp]
lea esp, [esp + 4]
xchg dword [esp], ebx
pushfd
add ebp, 0xf
popfd
lea ebp, [ebp - 0xf]
popfd
mov ecx, ecx
jmp dword [0x53a460]
popfd
mov ecx, ecx
je 0x4e2088
jne 0x4e2088
jmp 0x4e2086
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 0x5261ec
jne 0x5261ec
jmp 0x5261ea
add byte [eax], al
xchg ecx, edi
xchg dword [esp], ecx
xchg ecx, edi
lea esp, [esp + 4]
xchg esi, eax
xchg dword [esp], eax
xchg esi, eax
lea esp, [esp + 4]
xor eax, eax
push ebp
mov ebp, esp
leave
xchg ebx, eax
xchg dword [esp], eax
xchg ebx, eax
lea esp, [esp + 4]
mov esp, ebp
pushfd
add ebp, 0x4d
popfd
lea ebp, [ebp - 0x4d]
xchg ecx, ebp
xchg dword [esp], ecx
xchg ecx, ebp
lea esp, [esp + 4]
ret
add byte [ebx - 0x74acf7c6], al
pop esp
and al, 4
cmp dword [edx], 8
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]
jle 0x4ddc9c
lea esp, [esp - 4]
mov dword [esp], ecx
mov ecx, dword [edx + 0x3a]
xchg dword [esp], ecx
xchg ecx, eax
mov ecx, dword [edx + 0x36]
push eax
xchg ecx, eax
pop ecx
add eax, ebx
push esi
mov esi, dword [esp + 4]
lea esi, [esi + 0x2b]
xchg dword [esp + 4], esi
mov dword [esp + 4], esi
mov esi, 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 esi, eax
lea esp, [esp - 4]
mov dword [esp], esi
mov esi, eax
mov eax, dword [esp]
lea eax, [edx + 0x72]
push edi
mov edi, dword [esp + 0xb]
pop edi
xchg esi, eax
lea esp, [esp - 4]
mov dword [esp], esi
mov esi, eax
mov eax, dword [esp]
pushfd
push edx
mov edx, dword [esp + 4]
lea edx, [edx + 0x5f]
xchg dword [esp + 4], edx
mov dword [esp + 4], edx
mov edx, dword [esp]
lea esp, [esp + 4]
call 0x5323ea
push ecx
mov ecx, dword [esp + 4]
lea ecx, [ecx + 0x6e]
xchg dword [esp + 4], ecx
mov dword [esp + 4], ecx
mov ecx, dword [esp]
lea esp, [esp + 4]
add dword [esp], 0xffed8408
xchg dword [esp], edx
push edx
mov edx, dword [esp + 4]
lea edx, [edx + 0xd]
xchg dword [esp + 4], edx
mov dword [esp + 4], edx
mov edx, dword [esp]
lea esp, [esp + 4]
xchg dword [esp + 4], edx
mov ecx, ecx
xchg dword [esp], edx
push ecx
mov ecx, dword [esp + 4]
lea ecx, [ecx + 0xf]
xchg dword [esp + 4], ecx
mov dword [esp + 4], ecx
mov ecx, dword [esp]
lea esp, [esp + 4]
popfd
push ebp
mov ebp, esp
leave
jmp fcn.005274bc