Function at 0x4f8940
Capabilities:
Check for software breakpoints

Disassembly:
mov ecx, dword [0x68cca8]
mov dl, byte [ecx + 0xc]
sub esp, 0xc
push ebx
push ebp
mov al, 1
test al, dl
push esi
push edi
je 0x4f8967
mov edx, dword [0x64b9e8]
mov cl, byte [edx + 2]
test cl, cl
mov byte [esp + 0x13], al
jne 0x4f896c
mov byte [esp + 0x13], 0
mov eax, dword [0x653b24]
mov word [eax + 4], 0
lea edx, [eax + 0xc]
lea ebp, [eax + 0x4c]
mov eax, dword [0x6e219c]
movsx eax, word [eax + 0x134]
mov dword [esp + 0x18], eax
movsx eax, ax
add eax, 0x1f
sar eax, 5
shl eax, 2
mov ecx, eax
mov ebx, ecx
shr ecx, 2
mov esi, ebp
mov edi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, ebx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov esi, dword [0x8154d8]
add esi, 0x18
mov ecx, eax
shr ecx, 2
mov edi, ebp
rep movsd dword es:[edi], dword [esi]
mov ecx, ebx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, eax
mov edi, ebp
mov esi, edx
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
mov dword [esp + 0x14], edx
je 0x4f8a9a
mov eax, dword [0x7fb2d0]
mov esi, dword [eax + 0x34]
xor edi, edi
cmp word [eax + 0x2e], di
jle 0x4f8a8b
mov edi, edi
mov dx, word [esi]
test dx, dx
je 0x4f8a74
mov al, byte [esi + 2]
test al, 0x40
je 0x4f8a74
test al, 0x20
je 0x4f8a74
test al, 1
je 0x4f8a48
movsx eax, word [esi + 4]
mov ecx, eax
and ecx, 0x1f
mov ebx, 1
shl ebx, cl
sar eax, 5
test dword [ebp + eax*4], ebx
jne 0x4f8a74
mov ecx, dword [esi + 8]
test dword [ecx + 0x10], 0x80000
je 0x4f8a3e
movsx eax, dx
movsx edx, di
shl eax, 0x10
or eax, edx
call fcn.004f9680
jmp 0x4f8a74
movsx eax, di
call fcn.004f8be0
jmp 0x4f8a74
test al, al
js 0x4f8a74
cmp word [esi + 4], 0xffff
je 0x4f8a74
movsx eax, word [esi + 4]
mov ecx, eax
and ecx, 0x1f
mov edx, 1
shl edx, cl
sar eax, 5
test dword [ebp + eax*4], edx
je 0x4f8a74
movsx eax, di
call fcn.004f8ba0
mov eax, dword [0x7fb2d0]
inc edi
add esi, 0xc
cmp di, word [eax + 0x2e]
jl 0x4f89f0
mov edx, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
push ecx
push ebp
push edx
call fcn.005569c0
add esp, 0xc
mov ebp, dword [0x7fb2d0]
mov esi, dword [ebp + 0x34]
xor edi, edi
cmp word [ebp + 0x2e], di
jle 0x4f8b1b
jmp 0x4f8ab0
mov ax, word [esi]
test ax, ax
je 0x4f8b11
mov cl, byte [esi + 2]
test cl, 1
je 0x4f8b11
test cl, 4
jne 0x4f8b11
mov cl, byte [esp + 0x13]
movsx eax, ax
movsx edx, di
shl eax, 0x10
or eax, edx
test cl, cl
je 0x4f8b02
mov cl, byte [esi + 3]
mov edx, 1
shl edx, cl
test dl, 3
je 0x4f8b11
mov edx, dword [ebp + 0x34]
mov ecx, eax
and ecx, 0xffff
lea ecx, [ecx + ecx*2]
mov ecx, dword [edx + ecx*4 + 8]
cmp dword [ecx + 0x218], 0xffffffff
je 0x4f8b11
push eax
call fcn.004fb9a0
mov ebp, dword [0x7fb2d0]
add esp, 4
inc edi
add esi, 0xc
cmp di, word [ebp + 0x2e]
jl 0x4f8ab0
mov esi, dword [ebp + 0x34]
xor edi, edi
cmp word [ebp + 0x2e], di
jle 0x4f8b87
mov bl, 0xef
mov cx, word [esi]
test cx, cx
je 0x4f8b7d
mov al, byte [esi + 2]
and al, bl
test al, 4
mov byte [esi + 2], al
je 0x4f8b5b
and al, 0xfb
movsx edx, cx
mov byte [esi + 2], al
movsx eax, di
shl edx, 0x10
or edx, eax
push edx
call fcn.004fb9a0
mov ebp, dword [0x7fb2d0]
add esp, 4
test byte [esi + 2], 8
je 0x4f8b7d
movsx ecx, word [esi]
movsx edx, di
shl ecx, 0x10
or ecx, edx
push 0
push ecx
call fcn.004fcae0
mov ebp, dword [0x7fb2d0]
add esp, 8
inc edi
add esi, 0xc
cmp di, word [ebp + 0x2e]
jl 0x4f8b28
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
jmp fcn.004fd710