Function at 0x49541e
Capabilities:
Execute anti-debugging instructions

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0xc
cmp dword [0x4e5480], 0
push ebx
push esi
push edi
mov dword [ebp - 8], edx
mov edi, 0x4aa062
mov dword [ebp - 0xc], ecx
je 0x49547f
cmp dword [0x4e52b8], 0
je 0x49547f
mov esi, dword [0x4e5488]
rdtsc
mov ecx, eax
mov eax, dword [0x4e547c]
sub ecx, eax
add eax, ecx
mov dword [0x4e547c], eax
cmp esi, 1
jbe 0x49546b
mov eax, ecx
xor edx, edx
div esi
mov ecx, eax
push 0x9c6
push edi
push ecx
push 0x4a9642
call fcn.0048dfa4
add esp, 0x10
movzx ecx, byte [0x4e7b54]
movzx eax, byte [0x4e7b55]
and ecx, 0x7f
mov esi, dword [0x4e7b3c]
and eax, 0xf
shl ecx, 8
or ecx, eax
push ecx
lea eax, [esi + 0x10]
push eax
call dword [0x4e5470]
xor ebx, ebx
lea eax, [esi + 4]
push 0x69
push eax
call dword [0x4e5470]
push esi
call dword [0x4e5464]
cmp eax, 0xffffffff
je 0x495ab9
and eax, 0xfffeffef
or eax, 0x20
push eax
push esi
call dword [0x4e5470]
cmp dword [0x4e5480], 0
je 0x495579
cmp dword [0x4e52b8], 0
je 0x49552a
mov edi, dword [0x4e5488]
rdtsc
mov ecx, eax
mov eax, dword [0x4e547c]
sub ecx, eax
add eax, ecx
mov dword [0x4e547c], eax
cmp edi, 1
jbe 0x495512
mov eax, ecx
xor edx, edx
div edi
mov ecx, eax
push 0x9f1
push 0x4aa062
push ecx
push 0x4a9642
call fcn.0048dfa4
add esp, 0x10
cmp dword [0x4e5480], 0
je 0x495579
cmp dword [0x4e52b8], 0
je 0x495579
mov edi, dword [0x4e5488]
rdtsc
mov ecx, eax
mov eax, dword [0x4e547c]
sub ecx, eax
add eax, ecx
mov dword [0x4e547c], eax
cmp edi, 1
jbe 0x495561
mov eax, ecx
xor edx, edx
div edi
mov ecx, eax
push 0x9f8
push 0x4aa062
push ecx
push 0x4a9642
call fcn.0048dfa4
add esp, 0x10
mov edi, dword [0x4e52b4]
push esi
call dword [0x4e5464]
mov dword [ebp - 4], eax
cmp eax, 0xffffffff
je 0x495a20
test eax, 0x10000
jne 0x4955bc
mov eax, dword [0x4e52b4]
sub eax, edi
cmp eax, 0x7a120
ja 0x495710
push 5
call dword [0x4e5420]
add dword [0x4e52b4], 5
jmp 0x49557f
cmp dword [0x4e5480], 0
je 0x495611
cmp dword [0x4e52b8], 0
je 0x495611
mov edi, dword [0x4e5488]
rdtsc
mov ecx, eax
mov eax, dword [0x4e547c]
sub ecx, eax
add eax, ecx
mov dword [0x4e547c], eax
cmp edi, 1
jbe 0x4955f3
mov eax, ecx
xor edx, edx
div edi
mov ecx, eax
push 0xa0a
mov edi, 0x4aa062
push edi
push ecx
push 0x4a9642
call fcn.0048dfa4
mov eax, dword [ebp - 4]
add esp, 0x10
jmp 0x495616
mov edi, 0x4aa062
push eax
push esi
call dword [0x4e5470]
test byte [ebp - 4], 0x40
je 0x49567a
cmp dword [0x4e5480], 0
je 0x4956b6
cmp dword [0x4e52b8], 0
je 0x4956b6
mov edi, dword [0x4e5488]
rdtsc
mov ecx, eax
mov eax, dword [0x4e547c]
sub ecx, eax
add eax, ecx
mov dword [0x4e547c], eax
cmp edi, 1
jbe 0x49565f
mov eax, ecx
xor edx, edx
div edi
mov ecx, eax
push 0xa28
mov edi, 0x4aa062
push edi
push ecx
push 0x4a9642
call fcn.0048dfa4
add esp, 0x10
jmp 0x4956b6
lea eax, [esi + 4]
push eax
call dword [0x4e5464]
cmp eax, 0xffffffff
je 0x495990
shr eax, 0x10
movzx ecx, al
cmp ecx, 0x5a
je 0x49593d
cmp ecx, 0x1e
je 0x4958f4
mov dl, byte [0x4e7b56]
movzx eax, dl
cmp ecx, eax
je 0x4957bc
inc ebx
cmp ebx, 3
jb 0x4954ab
cmp dword [0x4e5480], 0
je 0x495b4b
cmp dword [0x4e52b8], 0
je 0x495b4b
mov esi, dword [0x4e5488]
rdtsc
mov ecx, eax
mov eax, dword [0x4e547c]
sub ecx, eax
add eax, ecx
mov dword [0x4e547c], eax
cmp esi, 1
jbe 0x4956ff
mov eax, ecx
xor edx, edx
div esi
mov ecx, eax
push 0xa69
push edi
push ecx
push 0x4a9642
jmp 0x495b43
cmp dword [0x4e5480], 0
je 0x4957b2
cmp dword [0x4e52b8], 0
je 0x495763
mov esi, dword [0x4e5488]
rdtsc
mov ecx, eax
mov eax, dword [0x4e547c]
sub ecx, eax
add eax, ecx
mov dword [0x4e547c], eax
cmp esi, 1
jbe 0x49574b
mov eax, ecx
xor edx, edx
div esi
mov ecx, eax
push 0xa15
push 0x4aa062
push ecx
push 0x4a9642
call fcn.0048dfa4
add esp, 0x10
cmp dword [0x4e5480], 0
je 0x4957b2
cmp dword [0x4e52b8], 0
je 0x4957b2
mov esi, dword [0x4e5488]
rdtsc
mov ecx, eax
mov eax, dword [0x4e547c]
sub ecx, eax
add eax, ecx
mov dword [0x4e547c], eax
cmp esi, 1
jbe 0x49579a
mov eax, ecx
xor edx, edx
div esi
mov ecx, eax
push 0xa16
push 0x4aa062
push ecx
push 0x4a9654
call fcn.0048dfa4
add esp, 0x10
call fcn.0049463e
jmp 0x495b4b
cmp dl, 0xc3
setne al
dec al
and al, 0x88
add al, 0xc3
cmp dword [0x4e5480], 0
mov byte [0x4e7b56], al
je 0x49581d
cmp dword [0x4e52b8], 0
je 0x49581d
mov edi, dword [0x4e5488]
rdtsc
mov ecx, eax
mov eax, dword [0x4e547c]
sub ecx, eax
add eax, ecx
mov dword [0x4e547c], eax
cmp edi, 1
jbe 0x495804
mov eax, ecx
xor edx, edx
div edi
mov ecx, eax
push 0xa52
mov edi, 0x4aa062
push edi
push ecx
push 0x4a9642
call fcn.0048dfa4
add esp, 0x10
push esi
call dword [0x4e5464]
cmp eax, 0xffffffff
jne 0x4958c7
cmp dword [0x4e5480], 0
je 0x495b4b
cmp dword [0x4e52b8], 0
je 0x49587c
mov esi, dword [0x4e5488]
rdtsc
mov ecx, eax
mov eax, dword [0x4e547c]
sub ecx, eax
add eax, ecx
mov dword [0x4e547c], eax
cmp esi, 1
jbe 0x495868
mov eax, ecx
xor edx, edx
div esi
mov ecx, eax
push 0xa58
push edi
push ecx
push 0x4a9642
call fcn.0048dfa4
add esp, 0x10
cmp dword [0x4e5480], 0
je 0x495b4b
cmp dword [0x4e52b8], 0
je 0x495b4b
mov esi, dword [0x4e5488]
rdtsc
mov ecx, eax
mov eax, dword [0x4e547c]
sub ecx, eax
add eax, ecx
mov dword [0x4e547c], eax
cmp esi, 1
jbe 0x4958bb
mov eax, ecx
xor edx, edx
div esi
mov ecx, eax
push 0xa59
push edi
push ecx
jmp 0x495b3e
mov ecx, dword [ebp - 8]
and eax, 0xf
mov dword [ecx], eax
je 0x4958ed
lea eax, [esi + 8]
push eax
call dword [0x4e5464]
mov edi, dword [ebp - 0xc]
mov dword [edi], eax
lea eax, [esi + 0xc]
push eax
call dword [0x4e5464]
mov dword [edi + 4], eax
xor eax, eax
jmp 0x495b4e
cmp dword [0x4e5480], 0
je 0x495b4b
cmp dword [0x4e52b8], 0
je 0x495b4b
mov esi, dword [0x4e5488]
rdtsc
mov ecx, eax
mov eax, dword [0x4e547c]
sub ecx, eax
add eax, ecx
mov dword [0x4e547c], eax
cmp esi, 1
jbe 0x495933
mov eax, ecx
xor edx, edx
div esi
mov ecx, eax
push 0xa40
jmp 0x495704
cmp dword [0x4e5480], 0
je 0x495988
cmp dword [0x4e52b8], 0
je 0x495988
mov esi, dword [0x4e5488]
rdtsc
mov ecx, eax
mov eax, dword [0x4e547c]
sub ecx, eax
add eax, ecx
mov dword [0x4e547c], eax
cmp esi, 1
jbe 0x495974
mov eax, ecx
xor edx, edx
div esi
mov ecx, eax
push 0xa3a
push edi
push ecx
push 0x4a9642
call fcn.0048dfa4
add esp, 0x10
xor eax, eax
inc eax
jmp 0x495b4e
cmp dword [0x4e5480], 0
je 0x495b4b
cmp dword [0x4e52b8], 0
je 0x4959db
mov ecx, dword [0x4e547c]
rdtsc
sub eax, ecx
add ecx, eax
mov dword [0x4e547c], ecx
mov ecx, dword [0x4e5488]
cmp ecx, 1
jbe 0x4959c7
xor edx, edx
div ecx
push 0xa33
push edi
push eax
push 0x4a9642
call fcn.0048dfa4
add esp, 0x10
cmp dword [0x4e5480], 0
je 0x495b4b
cmp dword [0x4e52b8], 0
je 0x495b4b
mov ecx, dword [0x4e547c]
rdtsc
sub eax, ecx
add ecx, eax
mov dword [0x4e547c], ecx
mov ecx, dword [0x4e5488]
cmp ecx, 1
jbe 0x495a16
xor edx, edx
div ecx
push 0xa34
jmp 0x495b3c
cmp dword [0x4e5480], 0
je 0x495b4b
cmp dword [0x4e52b8], 0
je 0x495a6f
mov ecx, dword [0x4e547c]
rdtsc
sub eax, ecx
add ecx, eax
mov dword [0x4e547c], ecx
mov ecx, dword [0x4e5488]
cmp ecx, 1
jbe 0x495a57
xor edx, edx
div ecx
push 0xa00
push 0x4aa062
push eax
push 0x4a9642
call fcn.0048dfa4
add esp, 0x10
cmp dword [0x4e5480], 0
je 0x495b4b
cmp dword [0x4e52b8], 0
je 0x495b4b
mov ecx, dword [0x4e547c]
rdtsc
sub eax, ecx
add ecx, eax
mov dword [0x4e547c], ecx
mov ecx, dword [0x4e5488]
cmp ecx, 1
jbe 0x495aaa
xor edx, edx
div ecx
push 0xa01
push 0x4aa062
jmp 0x495b3d
cmp dword [0x4e5480], 0
je 0x495b4b
cmp dword [0x4e52b8], 0
je 0x495b04
mov ecx, dword [0x4e547c]
rdtsc
sub eax, ecx
add ecx, eax
mov dword [0x4e547c], ecx
mov ecx, dword [0x4e5488]
cmp ecx, 1
jbe 0x495af0
xor edx, edx
div ecx
push 0x9e7
push edi
push eax
push 0x4a9642
call fcn.0048dfa4
add esp, 0x10
cmp dword [0x4e5480], 0
je 0x495b4b
cmp dword [0x4e52b8], 0
je 0x495b4b
mov ecx, dword [0x4e547c]
rdtsc
sub eax, ecx
add ecx, eax
mov dword [0x4e547c], ecx
mov ecx, dword [0x4e5488]
cmp ecx, 1
jbe 0x495b37
xor edx, edx
div ecx
push 0x9e8
push edi
push eax
push 0x4a9654
call fcn.0048dfa4
add esp, 0x10
push 2
pop eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret