Function at 0x4b37ce
Capabilities:
Execute anti-debugging instructions

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0xc
cmp dword [0x50aff8], 0
push ebx
push esi
push edi
mov dword [ebp - 8], edx
mov edi, 0x4c876e
mov dword [ebp - 0xc], ecx
je 0x4b382f
cmp dword [0x50ae48], 0
je 0x4b382f
mov esi, dword [0x50b000]
rdtsc
mov ecx, eax
mov eax, dword [0x50aff4]
sub ecx, eax
add eax, ecx
mov dword [0x50aff4], eax
cmp esi, 1
jbe 0x4b381b
mov eax, ecx
xor edx, edx
div esi
mov ecx, eax
push 0x9c6
push edi
push ecx
push 0x4c7d4e
call fcn.004ac34c
add esp, 0x10
movzx ecx, byte [0x50d754]
movzx eax, byte [0x50d755]
and ecx, 0x7f
mov esi, dword [0x50d73c]
and eax, 0xf
shl ecx, 8
or ecx, eax
push ecx
lea eax, [esi + 0x10]
push eax
call dword [0x50aff0]
xor ebx, ebx
lea eax, [esi + 4]
push 0x69
push eax
call dword [0x50aff0]
push esi
call dword [0x50afe4]
cmp eax, 0xffffffff
je 0x4b3e69
and eax, 0xfffeffef
or eax, 0x20
push eax
push esi
call dword [0x50aff0]
cmp dword [0x50aff8], 0
je 0x4b3929
cmp dword [0x50ae48], 0
je 0x4b38da
mov edi, dword [0x50b000]
rdtsc
mov ecx, eax
mov eax, dword [0x50aff4]
sub ecx, eax
add eax, ecx
mov dword [0x50aff4], eax
cmp edi, 1
jbe 0x4b38c2
mov eax, ecx
xor edx, edx
div edi
mov ecx, eax
push 0x9f1
push 0x4c876e
push ecx
push 0x4c7d4e
call fcn.004ac34c
add esp, 0x10
cmp dword [0x50aff8], 0
je 0x4b3929
cmp dword [0x50ae48], 0
je 0x4b3929
mov edi, dword [0x50b000]
rdtsc
mov ecx, eax
mov eax, dword [0x50aff4]
sub ecx, eax
add eax, ecx
mov dword [0x50aff4], eax
cmp edi, 1
jbe 0x4b3911
mov eax, ecx
xor edx, edx
div edi
mov ecx, eax
push 0x9f8
push 0x4c876e
push ecx
push 0x4c7d4e
call fcn.004ac34c
add esp, 0x10
mov edi, dword [0x50ae44]
push esi
call dword [0x50afe4]
mov dword [ebp - 4], eax
cmp eax, 0xffffffff
je 0x4b3dd0
test eax, 0x10000
jne 0x4b396c
mov eax, dword [0x50ae44]
sub eax, edi
cmp eax, 0x7a120
ja 0x4b3ac0
push 5
call dword [0x50afa0]
add dword [0x50ae44], 5
jmp 0x4b392f
cmp dword [0x50aff8], 0
je 0x4b39c1
cmp dword [0x50ae48], 0
je 0x4b39c1
mov edi, dword [0x50b000]
rdtsc
mov ecx, eax
mov eax, dword [0x50aff4]
sub ecx, eax
add eax, ecx
mov dword [0x50aff4], eax
cmp edi, 1
jbe 0x4b39a3
mov eax, ecx
xor edx, edx
div edi
mov ecx, eax
push 0xa0a
mov edi, 0x4c876e
push edi
push ecx
push 0x4c7d4e
call fcn.004ac34c
mov eax, dword [ebp - 4]
add esp, 0x10
jmp 0x4b39c6
mov edi, 0x4c876e
push eax
push esi
call dword [0x50aff0]
test byte [ebp - 4], 0x40
je 0x4b3a2a
cmp dword [0x50aff8], 0
je 0x4b3a66
cmp dword [0x50ae48], 0
je 0x4b3a66
mov edi, dword [0x50b000]
rdtsc
mov ecx, eax
mov eax, dword [0x50aff4]
sub ecx, eax
add eax, ecx
mov dword [0x50aff4], eax
cmp edi, 1
jbe 0x4b3a0f
mov eax, ecx
xor edx, edx
div edi
mov ecx, eax
push 0xa28
mov edi, 0x4c876e
push edi
push ecx
push 0x4c7d4e
call fcn.004ac34c
add esp, 0x10
jmp 0x4b3a66
lea eax, [esi + 4]
push eax
call dword [0x50afe4]
cmp eax, 0xffffffff
je 0x4b3d40
shr eax, 0x10
movzx ecx, al
cmp ecx, 0x5a
je 0x4b3ced
cmp ecx, 0x1e
je 0x4b3ca4
mov dl, byte [0x50d756]
movzx eax, dl
cmp ecx, eax
je 0x4b3b6c
inc ebx
cmp ebx, 3
jb 0x4b385b
cmp dword [0x50aff8], 0
je 0x4b3efb
cmp dword [0x50ae48], 0
je 0x4b3efb
mov esi, dword [0x50b000]
rdtsc
mov ecx, eax
mov eax, dword [0x50aff4]
sub ecx, eax
add eax, ecx
mov dword [0x50aff4], eax
cmp esi, 1
jbe 0x4b3aaf
mov eax, ecx
xor edx, edx
div esi
mov ecx, eax
push 0xa69
push edi
push ecx
push 0x4c7d4e
jmp 0x4b3ef3
cmp dword [0x50aff8], 0
je 0x4b3b62
cmp dword [0x50ae48], 0
je 0x4b3b13
mov esi, dword [0x50b000]
rdtsc
mov ecx, eax
mov eax, dword [0x50aff4]
sub ecx, eax
add eax, ecx
mov dword [0x50aff4], eax
cmp esi, 1
jbe 0x4b3afb
mov eax, ecx
xor edx, edx
div esi
mov ecx, eax
push 0xa15
push 0x4c876e
push ecx
push 0x4c7d4e
call fcn.004ac34c
add esp, 0x10
cmp dword [0x50aff8], 0
je 0x4b3b62
cmp dword [0x50ae48], 0
je 0x4b3b62
mov esi, dword [0x50b000]
rdtsc
mov ecx, eax
mov eax, dword [0x50aff4]
sub ecx, eax
add eax, ecx
mov dword [0x50aff4], eax
cmp esi, 1
jbe 0x4b3b4a
mov eax, ecx
xor edx, edx
div esi
mov ecx, eax
push 0xa16
push 0x4c876e
push ecx
push 0x4c7d60
call fcn.004ac34c
add esp, 0x10
call fcn.004b29e8
jmp 0x4b3efb
cmp dl, 0xc3
setne al
dec al
and al, 0x88
add al, 0xc3
cmp dword [0x50aff8], 0
mov byte [0x50d756], al
je 0x4b3bcd
cmp dword [0x50ae48], 0
je 0x4b3bcd
mov edi, dword [0x50b000]
rdtsc
mov ecx, eax
mov eax, dword [0x50aff4]
sub ecx, eax
add eax, ecx
mov dword [0x50aff4], eax
cmp edi, 1
jbe 0x4b3bb4
mov eax, ecx
xor edx, edx
div edi
mov ecx, eax
push 0xa52
mov edi, 0x4c876e
push edi
push ecx
push 0x4c7d4e
call fcn.004ac34c
add esp, 0x10
push esi
call dword [0x50afe4]
cmp eax, 0xffffffff
jne 0x4b3c77
cmp dword [0x50aff8], 0
je 0x4b3efb
cmp dword [0x50ae48], 0
je 0x4b3c2c
mov esi, dword [0x50b000]
rdtsc
mov ecx, eax
mov eax, dword [0x50aff4]
sub ecx, eax
add eax, ecx
mov dword [0x50aff4], eax
cmp esi, 1
jbe 0x4b3c18
mov eax, ecx
xor edx, edx
div esi
mov ecx, eax
push 0xa58
push edi
push ecx
push 0x4c7d4e
call fcn.004ac34c
add esp, 0x10
cmp dword [0x50aff8], 0
je 0x4b3efb
cmp dword [0x50ae48], 0
je 0x4b3efb
mov esi, dword [0x50b000]
rdtsc
mov ecx, eax
mov eax, dword [0x50aff4]
sub ecx, eax
add eax, ecx
mov dword [0x50aff4], eax
cmp esi, 1
jbe 0x4b3c6b
mov eax, ecx
xor edx, edx
div esi
mov ecx, eax
push 0xa59
push edi
push ecx
jmp 0x4b3eee
mov ecx, dword [ebp - 8]
and eax, 0xf
mov dword [ecx], eax
je 0x4b3c9d
lea eax, [esi + 8]
push eax
call dword [0x50afe4]
mov edi, dword [ebp - 0xc]
mov dword [edi], eax
lea eax, [esi + 0xc]
push eax
call dword [0x50afe4]
mov dword [edi + 4], eax
xor eax, eax
jmp 0x4b3efe
cmp dword [0x50aff8], 0
je 0x4b3efb
cmp dword [0x50ae48], 0
je 0x4b3efb
mov esi, dword [0x50b000]
rdtsc
mov ecx, eax
mov eax, dword [0x50aff4]
sub ecx, eax
add eax, ecx
mov dword [0x50aff4], eax
cmp esi, 1
jbe 0x4b3ce3
mov eax, ecx
xor edx, edx
div esi
mov ecx, eax
push 0xa40
jmp 0x4b3ab4
cmp dword [0x50aff8], 0
je 0x4b3d38
cmp dword [0x50ae48], 0
je 0x4b3d38
mov esi, dword [0x50b000]
rdtsc
mov ecx, eax
mov eax, dword [0x50aff4]
sub ecx, eax
add eax, ecx
mov dword [0x50aff4], eax
cmp esi, 1
jbe 0x4b3d24
mov eax, ecx
xor edx, edx
div esi
mov ecx, eax
push 0xa3a
push edi
push ecx
push 0x4c7d4e
call fcn.004ac34c
add esp, 0x10
xor eax, eax
inc eax
jmp 0x4b3efe
cmp dword [0x50aff8], 0
je 0x4b3efb
cmp dword [0x50ae48], 0
je 0x4b3d8b
mov ecx, dword [0x50aff4]
rdtsc
sub eax, ecx
add ecx, eax
mov dword [0x50aff4], ecx
mov ecx, dword [0x50b000]
cmp ecx, 1
jbe 0x4b3d77
xor edx, edx
div ecx
push 0xa33
push edi
push eax
push 0x4c7d4e
call fcn.004ac34c
add esp, 0x10
cmp dword [0x50aff8], 0
je 0x4b3efb
cmp dword [0x50ae48], 0
je 0x4b3efb
mov ecx, dword [0x50aff4]
rdtsc
sub eax, ecx
add ecx, eax
mov dword [0x50aff4], ecx
mov ecx, dword [0x50b000]
cmp ecx, 1
jbe 0x4b3dc6
xor edx, edx
div ecx
push 0xa34
jmp 0x4b3eec
cmp dword [0x50aff8], 0
je 0x4b3efb
cmp dword [0x50ae48], 0
je 0x4b3e1f
mov ecx, dword [0x50aff4]
rdtsc
sub eax, ecx
add ecx, eax
mov dword [0x50aff4], ecx
mov ecx, dword [0x50b000]
cmp ecx, 1
jbe 0x4b3e07
xor edx, edx
div ecx
push 0xa00
push 0x4c876e
push eax
push 0x4c7d4e
call fcn.004ac34c
add esp, 0x10
cmp dword [0x50aff8], 0
je 0x4b3efb
cmp dword [0x50ae48], 0
je 0x4b3efb
mov ecx, dword [0x50aff4]
rdtsc
sub eax, ecx
add ecx, eax
mov dword [0x50aff4], ecx
mov ecx, dword [0x50b000]
cmp ecx, 1
jbe 0x4b3e5a
xor edx, edx
div ecx
push 0xa01
push 0x4c876e
jmp 0x4b3eed
cmp dword [0x50aff8], 0
je 0x4b3efb
cmp dword [0x50ae48], 0
je 0x4b3eb4
mov ecx, dword [0x50aff4]
rdtsc
sub eax, ecx
add ecx, eax
mov dword [0x50aff4], ecx
mov ecx, dword [0x50b000]
cmp ecx, 1
jbe 0x4b3ea0
xor edx, edx
div ecx
push 0x9e7
push edi
push eax
push 0x4c7d4e
call fcn.004ac34c
add esp, 0x10
cmp dword [0x50aff8], 0
je 0x4b3efb
cmp dword [0x50ae48], 0
je 0x4b3efb
mov ecx, dword [0x50aff4]
rdtsc
sub eax, ecx
add ecx, eax
mov dword [0x50aff4], ecx
mov ecx, dword [0x50b000]
cmp ecx, 1
jbe 0x4b3ee7
xor edx, edx
div ecx
push 0x9e8
push edi
push eax
push 0x4c7d60
call fcn.004ac34c
add esp, 0x10
push 2
pop eax
pop edi
pop esi
pop ebx
leave
ret