Function at 0x461474
Capabilities:
Check for software breakpoints

Disassembly:
push ebp
mov ebp, esp
push ecx
push ecx
push ebx
push esi
push edi
mov edi, dword [ebp + 0xc]
mov dword [ebp - 4], edi
cmp edi, 0xd800
jae 0x46149b
mov esi, dword [ebp + 8]
mov ecx, dword [esi + 0x10]
mov eax, edi
sar eax, 5
movzx eax, word [ecx + eax*2]
jmp 0x4614fe
cmp edi, 0xffff
ja 0x4614c3
cmp edi, 0xdbff
jg 0x4614b2
mov eax, 0x140
jmp 0x4614b4
xor eax, eax
mov esi, dword [ebp + 8]
mov ecx, edi
sar ecx, 5
add ecx, eax
mov eax, dword [esi + 0x10]
jmp 0x4614fa
mov esi, dword [ebp + 8]
cmp edi, 0x10ffff
jbe 0x4614d6
mov eax, dword [esi + 0x1c]
sub eax, 0xffffff80
jmp 0x461506
cmp edi, dword [esi + 0x30]
jl 0x4614e0
mov eax, dword [esi + 0x34]
jmp 0x461506
mov eax, dword [esi + 0x10]
mov ecx, edi
sar ecx, 0xb
movzx ecx, word [eax + ecx*2 + 0x1040]
mov edx, edi
sar edx, 5
and edx, 0x3f
add ecx, edx
movzx eax, word [eax + ecx*2]
mov ecx, edi
and ecx, 0x1f
lea eax, [ecx + eax*4]
mov ecx, dword [esi + 0x10]
movzx eax, word [ecx + eax*2]
test al, 8
jne 0x46152d
mov cl, al
and cl, 3
cmp cl, 2
jb 0x46177f
cwde
sar eax, 6
add eax, edi
mov dword [ebp - 4], eax
jmp 0x46177b
mov ecx, dword [esi + 8]
shr eax, 4
lea eax, [ecx + eax*2]
movzx ecx, word [eax]
add eax, 2
mov dword [ebp + 8], ecx
mov dword [ebp - 8], eax
test ecx, 0x4000
je 0x461716
push dword [ebp + 0x20]
push dword [ebp + 0x1c]
call fcn.00461316
mov ebx, dword [ebp + 0x10]
pop ecx
pop ecx
cmp eax, 3
jne 0x46162a
cmp edi, 0x49
je 0x461579
cmp edi, 0x4a
je 0x461579
cmp edi, 0x12e
jne 0x46159f
test ebx, ebx
je 0x46159f
push 1
jmp 0x461594
mov ecx, esi
call fcn.004611f2
cmp eax, 0x20
je 0x4615bb
cmp eax, 0x30
jne 0x46159f
push 0
push dword [ebp + 0x14]
call ebx
pop ecx
pop ecx
test eax, eax
jns 0x461581
cmp edi, 0xcc
je 0x4615bb
cmp edi, 0xcd
je 0x4615bb
cmp edi, 0x128
jne 0x4616cf
mov eax, edi
sub eax, 0x49
je 0x461619
dec eax
je 0x46160e
sub eax, 0x82
je 0x461601
dec eax
je 0x4615f6
sub eax, 0x5b
je 0x4615eb
sub eax, 6
je 0x4615e0
xor eax, eax
jmp 0x461789
mov eax, dword [ebp + 0x18]
mov dword [eax], 0x501ce0
jmp 0x461622
mov eax, dword [ebp + 0x18]
mov dword [eax], 0x501cf8
jmp 0x46160a
mov eax, dword [ebp + 0x18]
mov dword [eax], 0x501cf0
jmp 0x46160a
mov eax, dword [ebp + 0x18]
mov dword [eax], 0x501ce8
push 3
jmp 0x461624
mov eax, dword [ebp + 0x18]
mov dword [eax], 0x501b8c
jmp 0x461622
mov eax, dword [ebp + 0x18]
mov dword [eax], 0x4fc544
push 2
pop eax
jmp 0x461789
cmp eax, 2
jne 0x4616cf
cmp edi, 0x130
jne 0x46163f
push 0x69
jmp 0x461624
mov edi, 0x307
cmp dword [ebp + 0xc], edi
jne 0x461697
test ebx, ebx
je 0x46166f
push 0xffffffffffffffff
jmp 0x461664
cmp eax, 0x49
je 0x4615d9
mov ecx, esi
call fcn.004611f2
cmp eax, 0x30
jne 0x46166f
push 0
push dword [ebp + 0x14]
call ebx
pop ecx
pop ecx
test eax, eax
jns 0x461651
mov edi, dword [ebp + 0xc]
test byte [ebp + 8], 1
je 0x46177f
test dword [ebp + 8], 0x100
jne 0x461766
mov eax, dword [ebp - 8]
movzx eax, word [eax]
mov dword [ebp - 4], eax
jmp 0x461778
cmp dword [ebp + 0xc], 0x49
jne 0x4616cc
test ebx, ebx
je 0x4616c2
push 1
jmp 0x4616b7
cmp eax, edi
je 0x46166f
mov ecx, esi
call fcn.004611f2
cmp eax, 0x30
jne 0x4616c2
push 0
push dword [ebp + 0x14]
call ebx
pop ecx
pop ecx
test eax, eax
jns 0x4616a5
mov eax, 0x131
jmp 0x461789
mov edi, dword [ebp + 0xc]
cmp edi, 0x130
je 0x461619
cmp edi, 0x3a3
jne 0x461672
push 1
push dword [ebp + 0x14]
push ebx
push esi
call fcn.0046143e
add esp, 0x10
test al, al
jne 0x461672
push 0xffffffffffffffff
push dword [ebp + 0x14]
push ebx
push esi
call fcn.0046143e
add esp, 0x10
test al, al
je 0x461672
lea eax, [edi + 0x1f]
jmp 0x461789
test cl, cl
jns 0x461672
test ecx, 0x100
jne 0x461738
and ecx, 0x7f
movzx ecx, byte [ecx + 0x501be0]
lea ecx, [eax + ecx*2]
movzx eax, word [ecx]
jmp 0x461753
and ecx, 0x7f
movzx ecx, byte [ecx + 0x501be0]
lea ecx, [eax + ecx*4]
movzx eax, word [ecx]
add ecx, 2
movzx edx, word [ecx]
shl eax, 0x10
or eax, edx
and eax, 0xf
je 0x461672
mov edx, dword [ebp + 0x18]
add ecx, 2
mov dword [edx], ecx
jmp 0x461789
mov ecx, dword [ebp - 8]
movzx eax, word [ecx]
movzx ecx, word [ecx + 2]
shl eax, 0x10
or ecx, eax
mov dword [ebp - 4], ecx
mov eax, dword [ebp - 4]
cmp eax, edi
jne 0x461786
mov eax, dword [ebp - 4]
not eax
jmp 0x461789
mov eax, dword [ebp - 4]
pop edi
pop esi
pop ebx
leave
ret