Function at 0x47c9fe
Capabilities:
Check for software breakpoints

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x24
push ebx
push esi
push edi
mov edi, ecx
mov byte [ebp - 1], dl
push 0x50
pop eax
xor ecx, ecx
mov dword [ebp - 0x10], eax
mov esi, dword [edi + 0x4bc]
xor ebx, ebx
and dword [ebp - 0x20], ecx
mov edx, esi
and dword [ebp - 0xc], ecx
mov dword [ebp - 0x1c], eax
mov al, byte [ebp - 1]
mov dword [ebp - 0x14], ecx
mov dword [ebp - 0x18], edx
cmp al, 0xcc
jne 0x47ca4f
mov al, byte [ebp + 8]
cmp al, 0x15
je 0x47ca47
cmp al, 0xa9
jbe 0x47ca53
cmp al, 0xab
jbe 0x47ca47
cmp al, 0xad
jne 0x47ca53
xor eax, eax
inc eax
pop edi
pop esi
pop ebx
leave
ret
cmp al, 0xc0
jne 0x47ca47
mov eax, dword [edi + 0x1174]
test eax, eax
je 0x47ca47
cmp dword [eax], 0xa
je 0x47ca69
mov eax, dword [eax + 0x10]
test eax, eax
jne 0x47ca5d
test eax, eax
je 0x47ca47
mov eax, dword [eax + 4]
mov dword [ebp - 0x24], eax
test eax, eax
je 0x47cc18
test ebx, ebx
jne 0x47cc12
movzx eax, word [eax]
cmp eax, 0x1e
ja 0x47cc01
mov edx, dword [edi]
mov ecx, eax
xor eax, eax
inc eax
shl eax, cl
test dword [edx + 0xb8], eax
jne 0x47cc01
sub ecx, 0x15
je 0x47cade
dec ecx
sub ecx, 1
je 0x47cad3
sub ecx, 1
je 0x47cac8
sub ecx, 1
jne 0x47cc01
mov dword [ebp - 8], 0xd3
push 0x42
jmp 0x47cae7
mov dword [ebp - 8], 0xd2
push 0x30
jmp 0x47cae7
mov dword [ebp - 8], 0x20e
push 0x20
jmp 0x47cae7
mov dword [ebp - 8], 0xd1
push 0x1c
cmp dword [ebp - 0x14], 0
pop eax
movzx edx, ax
jne 0x47cb11
cmp word [edi + 0x4d0], ax
ja 0x47cb11
movzx ecx, ax
cmp dword [ebp - 0x10], ecx
jbe 0x47cb11
mov esi, dword [ebp - 8]
mov dword [ebp - 0x14], esi
mov esi, dword [edi + 0x4bc]
mov dword [ebp - 0x10], ecx
mov ecx, dword [ebp - 0x18]
test ecx, ecx
jne 0x47cb26
cmp word [edi + 0x4d0], ax
cmove ecx, dword [ebp - 8]
mov dword [ebp - 0x18], ecx
cmp dword [ebp - 0x20], 0
mov ecx, edx
je 0x47cb33
cmp dword [ebp - 0x1c], ecx
jbe 0x47cb47
mov edx, dword [ebp - 8]
cmp word [edi + 0x4d0], ax
ja 0x47cb4a
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x1c], ecx
jmp 0x47cb4a
mov edx, dword [ebp - 8]
mov cl, byte [ebp - 1]
mov al, byte [ebp + 8]
cmp cl, 0xc0
jne 0x47cbce
cmp al, 0x28
ja 0x47cb91
cmp al, 0x27
jae 0x47cbb6
cmp al, 0x14
ja 0x47cb83
cmp al, 0x11
jae 0x47cbb6
cmp al, 2
jb 0x47cbcb
cmp al, 5
jbe 0x47cba9
cmp al, 6
jbe 0x47cbcb
cmp al, 0xa
jbe 0x47cbb6
cmp al, 0xb
jbe 0x47cbcb
cmp al, 0xf
jbe 0x47cc01
jmp 0x47cbcb
cmp al, 0x23
jb 0x47cbcb
cmp al, 0x24
jbe 0x47cbb6
cmp al, 0x26
jbe 0x47cba9
jmp 0x47cbcb
cmp al, 0x30
ja 0x47cbbf
cmp al, 0x2f
jae 0x47cbb6
cmp al, 0x29
jb 0x47cbcb
cmp al, 0x2a
jbe 0x47cc01
cmp al, 0x2c
jbe 0x47cbb6
cmp al, 0x2e
ja 0x47cbcb
xor ebx, ebx
cmp dword [edi + 0x4d4], edx
sete bl
jmp 0x47cc01
xor ebx, ebx
cmp esi, edx
sete bl
jmp 0x47cbfa
cmp al, 0x32
jbe 0x47cc01
cmp al, 0xad
jbe 0x47cbcb
cmp al, 0xaf
jbe 0x47cbb6
xor ebx, ebx
inc ebx
cmp cl, 0xcc
jne 0x47cc01
movzx eax, al
sub eax, 0x13
je 0x47cbf1
sub eax, 1
je 0x47cbf1
sub eax, 0x94
je 0x47cbf1
sub eax, 1
je 0x47cbf1
xor ebx, ebx
inc ebx
jmp 0x47cc01
xor eax, eax
cmp esi, edx
sete al
or ebx, eax
mov dword [ebp - 0xc], 1
mov eax, dword [ebp - 0x24]
mov eax, dword [eax + 4]
mov dword [ebp - 0x24], eax
test eax, eax
jne 0x47ca7b
mov ecx, dword [ebp - 0x14]
mov edx, dword [ebp - 0x18]
test esi, esi
jne 0x47cc6d
movzx eax, word [edi + 0x4d0]
cmp dword [ebp - 0x10], eax
jne 0x47cc33
xor ebx, ebx
mov dword [edi + 0x4bc], ecx
inc ebx
mov esi, ecx
test esi, esi
jne 0x47cc6d
xor ebx, ebx
mov dword [edi + 0x4bc], edx
mov esi, edx
inc ebx
test esi, esi
jne 0x47cc6d
mov eax, dword [ebp - 0x1c]
cmp dword [ebp - 0x10], eax
jne 0x47cc56
mov dword [edi + 0x4bc], ecx
mov esi, ecx
test esi, esi
jne 0x47cc6d
mov eax, dword [ebp - 0x20]
mov dword [edi + 0x4bc], eax
test eax, eax
jne 0x47cc6d
cmp dword [ebp - 0xc], eax
cmovne ebx, eax
mov eax, ebx
jmp 0x47ca4a