Function at 0x4f5030
Capabilities:
Check for software breakpoints

Disassembly:
mov ecx, dword [0x6f1c94]
mov dl, byte [ecx + 0xc]
sub esp, 0xc
push ebx
push ebp
mov al, 1
test al, dl
push esi
push edi
je 0x4f5057
mov edx, dword [0x6b0aa8]
mov cl, byte [edx + 2]
test cl, cl
mov byte [esp + 0x13], al
jne 0x4f505c
mov byte [esp + 0x13], 0
mov eax, dword [0x6b8be4]
mov word [eax + 4], 0
lea edx, [eax + 0xc]
lea ebp, [eax + 0x4c]
mov eax, dword [0x746ebc]
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 [0x87a018]
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 0x4f518a
mov eax, dword [0x85ff50]
mov esi, dword [eax + 0x34]
xor edi, edi
cmp word [eax + 0x2e], di
jle 0x4f517b
mov edi, edi
mov dx, word [esi]
test dx, dx
je 0x4f5164
mov al, byte [esi + 2]
test al, 0x40
je 0x4f5164
test al, 0x20
je 0x4f5164
test al, 1
je 0x4f5138
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 0x4f5164
mov ecx, dword [esi + 8]
test dword [ecx + 0x10], 0x80000
je 0x4f512e
movsx eax, dx
movsx edx, di
shl eax, 0x10
or eax, edx
call fcn.004f5d70
jmp 0x4f5164
movsx eax, di
call fcn.004f52d0
jmp 0x4f5164
test al, al
js 0x4f5164
cmp word [esi + 4], 0xffff
je 0x4f5164
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 0x4f5164
movsx eax, di
call fcn.004f5290
mov eax, dword [0x85ff50]
inc edi
add esi, 0xc
cmp di, word [eax + 0x2e]
jl 0x4f50e0
mov edx, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
push ecx
push ebp
push edx
call fcn.00553500
add esp, 0xc
mov ebp, dword [0x85ff50]
mov esi, dword [ebp + 0x34]
xor edi, edi
cmp word [ebp + 0x2e], di
jle 0x4f520b
jmp 0x4f51a0
mov ax, word [esi]
test ax, ax
je 0x4f5201
mov cl, byte [esi + 2]
test cl, 1
je 0x4f5201
test cl, 4
jne 0x4f5201
mov cl, byte [esp + 0x13]
movsx eax, ax
movsx edx, di
shl eax, 0x10
or eax, edx
test cl, cl
je 0x4f51f2
mov cl, byte [esi + 3]
mov edx, 1
shl edx, cl
test dl, 3
je 0x4f5201
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 0x4f5201
push eax
call fcn.004f8090
mov ebp, dword [0x85ff50]
add esp, 4
inc edi
add esi, 0xc
cmp di, word [ebp + 0x2e]
jl 0x4f51a0
mov esi, dword [ebp + 0x34]
xor edi, edi
cmp word [ebp + 0x2e], di
jle 0x4f5277
mov bl, 0xef
mov cx, word [esi]
test cx, cx
je 0x4f526d
mov al, byte [esi + 2]
and al, bl
test al, 4
mov byte [esi + 2], al
je 0x4f524b
and al, 0xfb
movsx edx, cx
mov byte [esi + 2], al
movsx eax, di
shl edx, 0x10
or edx, eax
push edx
call fcn.004f8090
mov ebp, dword [0x85ff50]
add esp, 4
test byte [esi + 2], 8
je 0x4f526d
movsx ecx, word [esi]
movsx edx, di
shl ecx, 0x10
or ecx, edx
push 0
push ecx
call fcn.004f91d0
mov ebp, dword [0x85ff50]
add esp, 8
inc edi
add esi, 0xc
cmp di, word [ebp + 0x2e]
jl 0x4f5218
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
jmp fcn.004f9e00