Function at 0x4d8510
Capabilities:
Check for software breakpoints

Disassembly:
push ebp
mov ebp, esp
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp + 0x10]
push ebx
push esi
push edi
test eax, eax
js 0x4d864e
cmp eax, 0xcc
jge 0x4d864e
test ecx, ecx
js 0x4d864e
cmp ecx, 0xcc
jge 0x4d864e
mov ebx, dword [ebp + 8]
imul eax, eax, 0x10c
mov edx, dword [ebx + 0x390]
movzx eax, word [eax + edx + 4]
mov esi, eax
test ax, ax
js 0x4d864e
mov eax, 0x2000
cmp si, ax
jge 0x4d864e
imul edi, ecx, 0x10c
add edi, edx
movzx esi, word [edi + 4]
mov eax, esi
test si, si
js 0x4d864e
mov ecx, 0x2000
cmp ax, cx
jge 0x4d864e
cmp byte [edi + 0xba], 0
jne 0x4d864e
xor edx, edx
mov ecx, 0x638708
nop dword [eax]
cmp edx, 0x1f3
ja 0x4d85c4
cmp dword [ecx], edx
jne 0x4d85c4
movsx eax, si
cmp dword [ecx + 4], eax
je 0x4d85d2
add ecx, 8
inc edx
cmp ecx, 0x6396a8
jl 0x4d85b0
jmp 0x4d85db
cmp dword [0x638704], 1
je 0x4d864e
mov eax, 0x1806
mov dword [ebp + 0x10], 0x1832
lea edx, [eax + 0x1e]
lea ecx, [eax + 0x2b]
cmp si, ax
jle 0x4d8657
cmp si, dx
jl 0x4d8601
mov eax, 0x182b
cmp si, ax
jle 0x4d8657
cmp si, cx
je 0x4d8657
cmp si, word [ebp + 0x10]
je 0x4d8657
mov eax, 0x1906
cmp si, ax
jl 0x4d8620
mov eax, 0x1909
cmp si, ax
jle 0x4d8657
mov eax, 0x1a1e
cmp si, ax
je 0x4d8657
xor edx, edx
mov ecx, 0x63d1e4
cmp edx, 0x63
ja 0x4d8642
cmp dword [ecx], edx
jne 0x4d8642
movsx eax, si
cmp dword [ecx + 4], eax
je 0x4d8657
add ecx, 0x78
inc edx
cmp ecx, 0x6400c4
jl 0x4d8631
xor al, al
pop edi
pop esi
pop ebx
pop ebp
ret 0xc
movzx eax, byte [edi + 0x9e]
cmp eax, dword [0xbda8a4]
jge 0x4d864e
call fcn.00526930
cdq
mov ecx, 0x64
idiv ecx
mov eax, dword [ebx + 0x644]
cmp edx, dword [eax*4 + 0xbdad7c]
jge 0x4d8798
cmp byte [edi + 0x9e], 0
jne 0x4d86dc
movzx eax, word [edi + 4]
mov ecx, 0x1803
cmp ax, cx
jl 0x4d86a7
mov ecx, 0x1806
cmp ax, cx
jle 0x4d86bb
mov ecx, 0x182a
cmp ax, cx
je 0x4d86bb
mov ecx, 0x1831
cmp ax, cx
jne 0x4d86dc
and byte [edi + 0x9f], 0xdf
call fcn.00526930
and eax, 0x80000001
jns 0x4d86d3
dec eax
or eax, 0xfffffffe
inc eax
shl eax, 5
or byte [edi + 0x9f], al
cmp byte [edi + 0x9e], 0
mov esi, 3
jne 0x4d8787
movzx eax, word [edi + 4]
mov ecx, 0x1824
cmp ax, cx
jl 0x4d8706
mov ecx, 0x1828
cmp ax, cx
jle 0x4d8716
mov ecx, 0x182b
cmp ax, cx
je 0x4d8716
cmp ax, word [ebp + 0x10]
jne 0x4d872e
and byte [edi + 0x9f], 0xcf
call fcn.00526930
cdq
idiv esi
shl edx, 4
or byte [edi + 0x9f], dl
cmp byte [edi + 0x9e], 0
jne 0x4d8787
xor edx, edx
mov ecx, 0x63d1e4
nop
cmp edx, 0x63
ja 0x4d8752
cmp dword [ecx], edx
jne 0x4d8752
movsx eax, word [edi + 4]
cmp dword [ecx + 4], eax
je 0x4d876f
add ecx, 0x78
inc edx
cmp ecx, 0x6400c4
jl 0x4d8740
inc byte [edi + 0x9e]
mov al, byte [edi + 0x9e]
mov byte [ebp + 0x10], al
jmp 0x4d87a3
and byte [edi + 0x9f], 0xcf
call fcn.00526930
cdq
idiv esi
shl edx, 4
or byte [edi + 0x9f], dl
inc byte [edi + 0x9e]
mov al, byte [edi + 0x9e]
mov byte [ebp + 0x10], al
jmp 0x4d87a3
mov byte [edi + 0x9e], 0
mov byte [ebp + 0x10], 0
mov al, byte [edi + 0xb6]
mov edx, 0
movzx ecx, word [edi + 4]
test al, 3
mov dword [ebp + 0xc], eax
mov eax, 0x1a03
setne dl
cmp cx, ax
je 0x4d87e0
mov eax, 0x1a25
cmp cx, ax
je 0x4d87e0
cmp byte [edi + 0x9f], 0
mov ebx, edi
je 0x4d87e2
mov eax, 1
jmp 0x4d87e4
mov ebx, edi
xor eax, eax
push edx
push eax
movsx eax, word [edi + 6]
movsx esi, cx
push eax
push esi
call fcn.0049cad0
mov ecx, edi
movd xmm0, eax
movzx eax, byte [edi + 0xd8]
cvtdq2ps xmm0, xmm0
push eax
lea eax, [edi + 0xd3]
push eax
movzx eax, byte [edi + 0xd2]
push eax
mulss xmm0, dword [edi + 0x20]
movzx eax, byte [edi + 0xcc]
push eax
push dword [ebp + 0xc]
divss xmm0, dword [edi + 0x24]
mov eax, 0x9f
movzx eax, byte [eax + ebx]
push eax
movzx eax, byte [edi + 0x9d]
push dword [ebp + 0x10]
movss dword [edi + 0x20], xmm0
push eax
movzx eax, byte [edi + 0x9c]
push eax
push esi
call fcn.00493d40
mov eax, dword [ebp + 8]
mov ecx, 0x6509a4
push dword [eax]
call fcn.004d6bf0
pop edi
pop esi
mov al, 1
pop ebx
pop ebp
ret 0xc