Function at 0x4b32c0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
sub esp, 0x158
push ebx
push ebp
push esi
mov esi, edx
mov ebx, ecx
mov dword [esp + 0x10], esi
mov dword [esp + 0x14], ebx
push edi
test esi, esi
jne 0x4b331e
cmp dword [esp + 0x17c], edx
jne 0x4b3303
push 1
push edx
push edx
push edx
push edx
lea ecx, [esp + 0x190]
call fcn.004b32c0
add esp, 0x14
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x158
ret
lea eax, [esp + 0x17c]
sub eax, ebx
cdq
xor eax, edx
sub eax, edx
neg eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x158
ret
mov ebp, dword [esp + 0x174]
mov dword [esp + 0x40], 0
mov dword [esp + 0x38], 0
mov eax, dword [ebp]
cmp eax, dword [ebp + 4]
jae 0x4b893b
mov dword [esp + 0x68], 0xfc00
mov dword [esp + 0x48], 0xdc00
mov dword [esp + 0x4c], SysReAllocString
mov dword [esp + 0x50], 0xd800
inc eax
mov dword [ebp], eax
mov eax, dword [esp + 0x17c]
cmp eax, dword [ebp + 8]
jae 0x4bacac
cmp dword [ebp + 0x9c], 2
jne 0x4b33af
mov eax, dword [esp + 0x178]
mov dword [esp + 0x6c], eax
lea eax, [esp + 0x6c]
mov dword [esp + 0x70], ebx
mov dword [esp + 0x178], eax
mov dword [ebp + 0x9c], 0
jmp 0x4b33af
mov ebp, dword [esp + 0x174]
mov esi, dword [esp + 0x14]
movzx ecx, word [esi]
mov edx, ecx
mov dword [esp + 0x30], 0
mov dword [esp + 0x28], 0
mov edi, ecx
mov dword [esp + 0x20], edx
cmp edx, 0x9b
ja case.0x4b33dd.98
movzx eax, byte [edx + 0x4bae04]
jmp dword [eax*4 + 0x4bacbc]
cmp dword [ebp + 0x70], 0
movzx ecx, byte [edx + 0x4d3d58]
je 0x4b8a01
movzx eax, word [esi + 2]
add ecx, eax
lea esi, [esi + ecx*2]
mov dword [esp + 0x14], esi
jmp 0x4b33af
mov edx, dword [esp + 0x174]
mov ebp, esi
mov edi, ebx
mov esi, dword [edx + 0xb0]
mov eax, dword [esp + 0x17c]
mov ecx, ebx
inc eax
push eax
push dword [esp + 0x17c]
push edx
mov edx, dword [esp + 0x20]
push dword [esp + 0x17c]
push dword [esp + 0x17c]
lea edx, [edx + 4]
call fcn.004b32c0
add esp, 0x14
cmp eax, 1
je 0x4b3528
cmp eax, 0xfffffc20
jne 0x4b3490
mov edx, dword [esp + 0x14]
movzx ecx, word [edx + 2]
lea ecx, [edx + ecx*2]
mov edx, dword [esp + 0x174]
cmp dword [edx + 0x80], ecx
jae 0x4b8944
mov edx, dword [esp + 0x14]
cmp word [edx], 0x71
mov edx, dword [esp + 0x174]
je 0x4b349f
cmp word [ecx], 0x71
jne 0x4b8944
jmp 0x4b349f
test eax, eax
jne 0x4b8944
mov edx, dword [esp + 0x174]
mov ecx, dword [esp + 0x14]
movzx eax, word [ecx + 2]
mov dword [edx + 0xb0], esi
lea ecx, [ecx + eax*2]
movzx eax, word [ecx]
mov dword [esp + 0x14], ecx
mov ecx, eax
cmp eax, 0x71
je 0x4b3415
mov esi, dword [esp + 0x14]
movzx eax, cx
cmp eax, 0x7c
je 0x4b34e0
cmp eax, 0x71
jne case.default.0x4b4c49
nop word [eax + eax]
movzx eax, word [esi + 2]
lea esi, [esi + eax*2]
movzx eax, word [esi]
mov ecx, eax
cmp eax, 0x71
je 0x4b34e0
mov eax, dword [edx + 0x90]
mov ebx, dword [edx + 0x84]
mov dword [esp + 0x170], eax
mov dword [esp + 0x18], ebx
cmp ecx, 0x72
je 0x4b3515
cmp ebx, edi
jne 0x4b86a5
mov ebp, dword [esp + 0x174]
add esi, 4
mov dword [esp + 0x14], esi
jmp 0x4b33af
mov edx, dword [esp + 0x174]
mov esi, dword [esp + 0x14]
mov eax, dword [edx + 0x80]
movzx ecx, word [esi]
mov dword [esp + 0x16c], eax
jmp 0x4b34c6
xor ebp, ebp
mov dword [esp + 0x34], ebp
jmp 0x4b4009
cmp word [esi + 4], 0x70
movzx edi, word [esi + 2]
jne 0x4b363e
mov esi, dword [0x4eb0c8]
test esi, esi
je 0x4b3633
mov edx, dword [esp + 0x14]
mov dword [esp + 0xb8], 2
movzx eax, word [edx + 6]
mov dword [esp + 0xbc], eax
mov eax, dword [ebp + 0xc]
mov dword [esp + 0xc0], eax
mov ecx, dword [ebp + 0x78]
mov dword [esp + 0xc4], ecx
mov eax, dword [ebp + 0x7c]
sub eax, ecx
sar eax, 1
mov dword [esp + 0xc8], eax
mov eax, dword [esp + 0x16c]
sub eax, ecx
sar eax, 1
mov dword [esp + 0xcc], eax
mov eax, ebx
sub eax, ecx
sar eax, 1
mov dword [esp + 0xd0], eax
movzx eax, word [edx + 8]
mov dword [esp + 0xe0], eax
movzx eax, word [edx + 0xa]
mov dword [esp + 0xe4], eax
mov eax, dword [esp + 0x170]
cdq
sub eax, edx
sar eax, 1
mov dword [esp + 0xd4], eax
mov eax, dword [ebp + 0x94]
mov dword [esp + 0xd8], eax
mov eax, dword [ebp + 0xac]
mov dword [esp + 0xdc], eax
mov eax, dword [ebp + 0xb4]
mov dword [esp + 0xe8], eax
lea eax, [esp + 0xb8]
push eax
call esi
add esp, 4
test eax, eax
jg case.default.0x4b4c49
js 0x4b8944
mov esi, dword [esp + 0x14]
add esi, 0xc
mov dword [esp + 0x14], esi
movzx ecx, word [esi + 4]
lea edx, [esi + 4]
cmp ecx, 0x89
je 0x4b3813
cmp ecx, 0x8a
je 0x4b3813
cmp ecx, 0x87
je 0x4b36cf
cmp ecx, 0x88
je 0x4b36cf
cmp ecx, 0x8b
jne 0x4b3681
movzx eax, word [esi + 2]
lea eax, [esi + eax*2]
jmp 0x4b39b8
mov dword [ebp + 0x9c], 1
mov ecx, ebx
mov eax, dword [esp + 0x17c]
inc eax
push eax
push 0
push ebp
push dword [esp + 0x17c]
push dword [esp + 0x17c]
call fcn.004b32c0
add esp, 0x14
cmp eax, 1
je 0x4b873a
test eax, eax
je 0x4b36c7
cmp eax, 0xfffffc20
jne 0x4b8944
lea eax, [esi + edi*2]
jmp 0x4b39b8
movzx esi, word [esi + 6]
lea edx, [esi + esi]
cmp edx, dword [esp + 0x170]
jge 0x4b36ec
mov eax, dword [ebp + 0xc]
cmp dword [eax + edx*4], 0
jge 0x4b399f
cmp ecx, 0x88
jne 0x4b3804
mov ecx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x28]
mov edi, eax
mov dword [esp + 0x2c], 0
test ecx, ecx
jle 0x4b3804
mov ebp, eax
xor edx, edx
movzx eax, word [edi]
cmp eax, esi
je 0x4b374e
mov eax, dword [esp + 0x174]
mov eax, dword [eax + 0x24]
lea edi, [eax*2]
mov eax, dword [esp + 0x2c]
inc eax
add edi, ebp
mov dword [esp + 0x2c], eax
mov edx, eax
mov ebp, edi
cmp eax, ecx
jl 0x4b3714
mov eax, dword [esp + 0x14]
xor edx, edx
movzx eax, word [eax + 2]
jmp 0x4b39a9
cmp edx, ecx
jge 0x4b3804
mov eax, dword [esp + 0x174]
mov esi, edi
cmp edi, dword [eax + 0x28]
jbe 0x4b37b3
mov eax, dword [eax + 0x24]
lea ecx, [edi + 2]
neg eax
lea esi, [esi + eax*2]
lea edx, [esi + 2]
call fcn.004bc570
test eax, eax
jne 0x4b37ac
movzx eax, word [esi]
lea ecx, [eax + eax]
cmp ecx, dword [esp + 0x170]
jge 0x4b379e
mov eax, dword [esp + 0x174]
mov eax, dword [eax + 0xc]
cmp dword [eax + ecx*4], 0
jge 0x4b399f
mov eax, dword [esp + 0x174]
cmp esi, dword [eax + 0x28]
ja 0x4b3764
jmp 0x4b37b3
mov eax, dword [esp + 0x174]
mov ebp, dword [esp + 0x2c]
inc ebp
cmp ebp, dword [eax + 0x20]
jge 0x4b3804
lea esi, [edi + 2]
mov eax, dword [eax + 0x24]
mov ecx, esi
lea edi, [edi + eax*2]
lea edx, [edi + 2]
call fcn.004bc570
test eax, eax
jne 0x4b3804
movzx eax, word [edi]
lea ecx, [eax + eax]
cmp ecx, dword [esp + 0x170]
jge 0x4b37f7
mov eax, dword [esp + 0x174]
mov eax, dword [eax + 0xc]
cmp dword [eax + ecx*4], 0
jge 0x4b399f
mov eax, dword [esp + 0x174]
inc ebp
cmp ebp, dword [eax + 0x20]
jl 0x4b37c0
mov eax, dword [esp + 0x14]
xor edx, edx
movzx eax, word [eax + 2]
jmp 0x4b39a9
mov eax, dword [ebp + 0xa8]
test eax, eax
jne 0x4b3829
movzx eax, word [esi + 2]
lea eax, [esi + eax*2]
jmp 0x4b39b8
movzx esi, word [esi + 6]
cmp esi, 0xffff
je 0x4b399f
cmp esi, dword [eax + 4]
je 0x4b399f
xor edx, edx
mov dword [esp + 0x30], edx
cmp ecx, 0x8a
jne 0x4b3995
mov ecx, dword [esp + 0x174]
mov eax, dword [ebp + 0x28]
mov edi, eax
xor ebp, ebp
mov dword [esp + 0x3c], edi
mov dword [esp + 0x28], ebp
mov ecx, dword [ecx + 0x20]
test ecx, ecx
jle 0x4b3995
mov dword [esp + 0x2c], eax
xor eax, eax
mov dword [esp + 0x34], eax
nop
movzx eax, word [edi]
cmp eax, esi
je 0x4b38ba
mov eax, dword [esp + 0x174]
inc ebp
mov edi, dword [esp + 0x2c]
mov dword [esp + 0x28], ebp
mov dword [esp + 0x34], ebp
mov eax, dword [eax + 0x24]
lea edi, [edi + eax*2]
mov dword [esp + 0x3c], edi
mov dword [esp + 0x2c], edi
cmp ebp, ecx
jl 0x4b3880
mov eax, dword [esp + 0x14]
movzx eax, word [eax + 2]
jmp 0x4b39a9
cmp dword [esp + 0x34], ecx
jge 0x4b3995
mov eax, dword [esp + 0x174]
mov esi, edi
cmp edi, dword [eax + 0x28]
jbe 0x4b3935
mov ebx, dword [esp + 0x30]
lea eax, [edi + 2]
mov ebp, dword [esp + 0x174]
mov edi, eax
mov dword [esp + 0x2c], eax
mov eax, dword [ebp + 0x24]
mov ecx, edi
neg eax
lea esi, [esi + eax*2]
lea edx, [esi + 2]
call fcn.004bc570
test eax, eax
jne 0x4b3916
mov eax, dword [ebp + 0xa8]
xor ebx, ebx
movzx ecx, word [esi]
mov eax, dword [eax + 4]
cmp ecx, eax
sete bl
je 0x4b3916
cmp esi, dword [ebp + 0x28]
ja 0x4b38e6
mov edi, dword [esp + 0x3c]
test ebx, ebx
mov ebp, dword [esp + 0x28]
mov dword [esp + 0x30], ebx
mov ebx, dword [esp + 0x18]
jne 0x4b398b
mov edx, dword [esp + 0x30]
mov eax, dword [esp + 0x174]
inc ebp
cmp ebp, dword [eax + 0x20]
jge 0x4b3995
mov ebx, dword [esp + 0x30]
lea esi, [edi + 2]
mov eax, dword [eax + 0x24]
mov ecx, esi
lea edi, [edi + eax*2]
lea edx, [edi + 2]
call fcn.004bc570
test eax, eax
jne 0x4b397f
mov eax, dword [esp + 0x174]
xor ebx, ebx
movzx ecx, word [edi]
mov eax, dword [eax + 0xa8]
mov eax, dword [eax + 4]
cmp ecx, eax
sete bl
je 0x4b397f
mov eax, dword [esp + 0x174]
inc ebp
cmp ebp, dword [eax + 0x20]
jl 0x4b3942
mov dword [esp + 0x30], ebx
test ebx, ebx
mov ebx, dword [esp + 0x18]
je 0x4b3991
mov edx, dword [esp + 0x30]
jmp 0x4b39a4
mov edx, dword [esp + 0x30]
mov eax, dword [esp + 0x14]
movzx eax, word [eax + 2]
jmp 0x4b39a9
mov edx, 1
mov eax, 2
mov ecx, dword [esp + 0x14]
lea eax, [ecx + eax*2]
test edx, edx
jne 0x4b8784
cmp word [eax], 0x71
mov ebp, dword [esp + 0x174]
je 0x4b878b
lea esi, [eax + 4]
mov dword [esp + 0x14], esi
jmp 0x4b33af
movzx esi, word [esi + 2]
mov dword [ebp + 0x94], esi
lea edx, [esi + esi]
cmp edx, dword [ebp + 0x14]
jl 0x4b39fe
mov esi, dword [esp + 0x14]
add esi, 4
mov dword [ebp + 0x40], 1
mov dword [esp + 0x14], esi
jmp 0x4b33af
mov eax, dword [ebp + 0x10]
mov ecx, dword [ebp + 0xc]
sub eax, esi
mov eax, dword [ecx + eax*4]
mov dword [ecx + edx*4], eax
mov ecx, ebx
sub ecx, dword [ebp + 0x78]
mov eax, dword [ebp + 0xc]
sar ecx, 1
mov dword [eax + edx*4 + 4], ecx
cmp dword [esp + 0x170], edx
jg 0x4b3a2d
lea eax, [edx + 2]
mov dword [esp + 0x170], eax
mov esi, dword [esp + 0x14]
add esi, 4
mov dword [esp + 0x14], esi
jmp 0x4b33af
cmp dword [ebp + 0x9c], 1
mov esi, dword [ebp + 0xb0]
jne 0x4b3a5d
mov dword [ebp + 0x9c], 0
mov edi, 1
jmp 0x4b3a60
xor edi, edi
nop
mov eax, dword [esp + 0x17c]
mov ecx, ebx
mov edx, dword [esp + 0x14]
inc eax
push eax
push 0
push ebp
push dword [esp + 0x17c]
lea edx, [edx + 4]
push dword [esp + 0x17c]
call fcn.004b32c0
add esp, 0x14
cmp eax, 1
je 0x4b3acb
cmp eax, 0xfffffc19
je 0x4b3acb
test eax, eax
je 0x4b3aa6
cmp eax, 0xfffffc20
jne 0x4b8944
mov ecx, dword [esp + 0x14]
movzx eax, word [ecx + 2]
mov dword [ebp + 0xb0], esi
lea ecx, [ecx + eax*2]
movzx eax, word [ecx]
mov dword [esp + 0x14], ecx
mov ecx, eax
cmp eax, 0x71
je 0x4b3a60
mov esi, dword [esp + 0x14]
jmp 0x4b3adf
mov esi, dword [esp + 0x14]
mov eax, dword [ebp + 0x80]
mov dword [esp + 0x16c], eax
movzx eax, word [esi]
cmp ax, 0x72
je case.default.0x4b4c49
test edi, edi
jne 0x4b8ac7
movzx eax, word [esi + 2]
cmp word [esi + eax*2], 0x71
lea esi, [esi + eax*2]
je 0x4b3af1
mov eax, dword [ebp + 0x90]
add esi, 4
mov dword [esp + 0x14], esi
mov dword [esp + 0x170], eax
jmp 0x4b33af
cmp dword [ebp + 0x9c], 1
mov esi, dword [ebp + 0xb0]
jne 0x4b3b38
mov dword [ebp + 0x9c], 0
mov edi, 1
jmp 0x4b3b3a
xor edi, edi
mov ecx, dword [esp + 0x14]
nop
mov eax, dword [esp + 0x17c]
lea edx, [ecx + 4]
inc eax
mov ecx, ebx
push eax
push 0
push ebp
push dword [esp + 0x17c]
push dword [esp + 0x17c]
call fcn.004b32c0
add esp, 0x14
mov dword [ebp + 0xb0], esi
cmp eax, 1
je case.default.0x4b4c49
cmp eax, 0xfffffc19
je case.default.0x4b4c49
cmp eax, 0xfffffc1e
je 0x4b3bbf
cmp eax, 0xfffffc1d
je 0x4b3bbf
cmp eax, 0xfffffc1a
je 0x4b3bbf
test eax, eax
je 0x4b3ba5
cmp eax, 0xfffffc20
jne 0x4b8944
mov ecx, dword [esp + 0x14]
movzx eax, word [ecx + 2]
cmp word [ecx + eax*2], 0x71
lea ecx, [ecx + eax*2]
mov dword [esp + 0x14], ecx
je 0x4b3b40
mov esi, ecx
jmp 0x4b3bd1
mov esi, dword [esp + 0x14]
movzx eax, word [esi + 2]
cmp word [esi + eax*2], 0x71
lea esi, [esi + eax*2]
je 0x4b3bc3
test edi, edi
jne 0x4b8ac7
add esi, 4
mov dword [esp + 0x14], esi
jmp 0x4b33af
movzx ecx, word [esi + 2]
test ecx, ecx
je 0x4b3c1d
mov edx, dword [ebp + 0x78]
mov edi, 0xfc00
add ebx, 0xfffffffe
dec ecx
mov dword [esp + 0x18], ebx
cmp ebx, edx
jb case.default.0x4b4c49
mov ax, word [ebx]
and ax, di
cmp ax, word [esp + 0x48]
jne 0x4b3c19
add ebx, 0xfffffffe
mov dword [esp + 0x18], ebx
test ecx, ecx
jg 0x4b3bf5
cmp ebx, dword [ebp + 0x88]
jae 0x4b3c2b
mov dword [ebp + 0x88], ebx
add esi, 4
mov dword [esp + 0x14], esi
jmp 0x4b33af
mov esi, dword [0x4eb0c8]
test esi, esi
je 0x4b3d15
mov edi, dword [esp + 0x14]
mov dword [esp + 0x80], 2
movzx eax, word [edi + 2]
mov dword [esp + 0x84], eax
mov eax, dword [ebp + 0xc]
mov dword [esp + 0x88], eax
mov ecx, dword [ebp + 0x78]
mov dword [esp + 0x8c], ecx
mov eax, dword [ebp + 0x7c]
sub eax, ecx
sar eax, 1
mov dword [esp + 0x90], eax
mov eax, dword [esp + 0x16c]
sub eax, ecx
sar eax, 1
mov dword [esp + 0x94], eax
mov eax, ebx
sub eax, ecx
sar eax, 1
mov dword [esp + 0x98], eax
movzx eax, word [edi + 8]
mov dword [esp + 0xa8], eax
movzx eax, word [edi + 0xa]
mov dword [esp + 0xac], eax
mov eax, dword [esp + 0x170]
cdq
sub eax, edx
sar eax, 1
mov dword [esp + 0x9c], eax
mov eax, dword [ebp + 0x94]
mov dword [esp + 0xa0], eax
mov eax, dword [ebp + 0xac]
mov dword [esp + 0xa4], eax
mov eax, dword [ebp + 0xb4]
mov dword [esp + 0xb0], eax
mov eax, dword [edi + 4]
mov dword [esp + 0xb4], eax
lea eax, [esp + 0x80]
push eax
call esi
add esp, 4
test eax, eax
jg case.default.0x4b4c49
js 0x4b8944
mov esi, dword [esp + 0x14]
add esi, 0xc
mov dword [esp + 0x14], esi
jmp 0x4b33af
mov ecx, dword [ebp + 0x74]
movzx eax, word [esi + 2]
lea edi, [ecx + eax*2]
cmp edi, ecx
jne 0x4b3d37
xor ecx, ecx
jmp 0x4b3d3b
movzx ecx, word [edi + 4]
mov edx, dword [ebp + 0xa8]
mov eax, edx
test edx, edx
je 0x4b3d5b
cmp ecx, dword [eax + 4]
jne 0x4b3d55
cmp ebx, dword [eax + 0x10]
je 0x4b8a6a
mov eax, dword [eax]
test eax, eax
jne 0x4b3d47
mov dword [esp + 0x58], ecx
lea eax, [esp + 0x54]
mov dword [esp + 0x64], ebx
add esi, 4
mov dword [esp + 0x54], edx
mov dword [ebp + 0xa8], eax
mov ecx, dword [ebp + 0x10]
mov dword [esp + 0x14], esi
mov dword [esp + 0x60], ecx
cmp ecx, 0x1e
jg 0x4b3d91
lea eax, [esp + 0xf0]
mov dword [esp + 0x5c], eax
jmp 0x4b3db2
lea eax, [ecx*4]
push eax
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
add esp, 4
mov dword [esp + 0x5c], eax
test eax, eax
je 0x4b8aa4
mov ecx, dword [esp + 0x60]
shl ecx, 2
push ecx
push dword [ebp + 0xc]
push eax
call sub.VCRUNTIME140.dll_memcpy
movzx ebp, word [edi]
add esp, 0xc
mov ecx, dword [esp + 0x174]
nop dword [eax]
mov eax, 0x82
cmp bp, ax
jb 0x4b3de4
mov dword [ecx + 0x9c], 2
mov eax, dword [esp + 0x17c]
inc eax
push eax
push dword [esp + 0x17c]
movzx eax, word [edi]
push ecx
push dword [esp + 0x17c]
mov ecx, ebx
movzx eax, byte [eax + 0x4d3d58]
push dword [esp + 0x17c]
lea edx, [edi + eax*2]
call fcn.004b32c0
mov ecx, dword [esp + 0x74]
add esp, 0x14
shl ecx, 2
mov esi, eax
mov eax, dword [esp + 0x174]
push ecx
push dword [esp + 0x60]
push dword [eax + 0xc]
call sub.VCRUNTIME140.dll_memcpy
mov ecx, dword [esp + 0x180]
add esp, 0xc
mov eax, dword [esp + 0x54]
mov dword [ecx + 0xa8], eax
cmp esi, 1
je 0x4b3ebd
cmp esi, 0xfffffc19
je 0x4b3ebd
test esi, esi
je 0x4b3e70
cmp esi, 0xfffffc20
jne 0x4b8a7a
lea eax, [esp + 0x54]
mov dword [ecx + 0xa8], eax
movzx eax, word [edi + 2]
cmp word [edi + eax*2], 0x71
lea edi, [edi + eax*2]
je 0x4b3dd0
mov eax, dword [esp + 0x54]
mov dword [ecx + 0xa8], eax
lea ecx, [esp + 0xf0]
mov eax, dword [esp + 0x5c]
cmp eax, ecx
je case.default.0x4b4c49
push eax
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
add esp, 4
nop
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x158
ret
mov eax, dword [esp + 0x5c]
lea ecx, [esp + 0xf0]
cmp eax, ecx
je 0x4b3ed6
push eax
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
add esp, 4
mov ebp, dword [esp + 0x174]
mov ebx, dword [ebp + 0x84]
mov eax, dword [ebp + 0x80]
mov dword [esp + 0x18], ebx
mov dword [esp + 0x16c], eax
jmp 0x4b33ab
movzx eax, word [esi + 2]
cmp word [esi + eax*2], 0x71
lea esi, [esi + eax*2]
je case.0x4b33dd.113
mov dword [esp + 0x14], esi
jmp 0x4b33af
mov eax, dword [esp + 0x17c]
add esi, 2
inc eax
mov edx, esi
push eax
push dword [esp + 0x17c]
mov ecx, ebx
push ebp
push dword [esp + 0x17c]
push dword [esp + 0x17c]
call fcn.004b32c0
add esp, 0x14
test eax, eax
jne 0x4b8944
nop dword [eax]
movzx eax, word [esi + 2]
cmp word [esi + eax*2], 0x71
lea esi, [esi + eax*2]
je 0x4b3f50
add esi, 4
mov dword [esp + 0x14], esi
jmp 0x4b33af
add esi, 2
mov dword [esp + 0x14], esi
mov edx, esi
movzx eax, word [edx + 2]
cmp word [edx + eax*2], 0x71
lea edx, [edx + eax*2]
je 0x4b3f73
mov eax, dword [esp + 0x17c]
add edx, 4
inc eax
mov ecx, ebx
push eax
push dword [esp + 0x17c]
push ebp
push dword [esp + 0x17c]
push dword [esp + 0x17c]
call fcn.004b32c0
add esp, 0x14
test eax, eax
je 0x4b33af
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x158
ret
lea ecx, [esi + 2]
movzx eax, word [ecx + 2]
cmp word [ecx + eax*2], 0x71
lea ecx, [ecx + eax*2]
je 0x4b3fc3
lea esi, [ecx + 4]
mov dword [esp + 0x14], esi
jmp 0x4b33af
movzx edx, word [esi + 2]
add esi, 2
mov dword [esp + 0x14], esi
mov ebp, 1
mov dword [esp + 0x20], edx
mov dword [esp + 0x34], ebp
cmp edx, 0x80
je 0x4b4009
cmp edx, 0x85
jne 0x4b41ed
movzx edx, word [esi + 4]
mov ecx, dword [esp + 0x174]
mov dword [esp + 0x2c], edx
lea eax, [edx + edx]
cmp eax, dword [ecx + 0x14]
jge 0x4b41e7
shl eax, 2
mov edi, esi
sub edi, dword [ecx + 0x74]
xor ebp, ebp
mov ecx, dword [ecx + 0xc]
mov dword [esp + 0x3c], eax
sar edi, 1
mov esi, dword [ecx + eax]
mov eax, dword [ecx + eax + 4]
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x174]
mov dword [esp + 0x30], esi
mov eax, dword [eax + 0x10]
sub eax, edx
mov eax, dword [ecx + eax*4]
mov ecx, dword [esp + 0x174]
mov dword [esp + 0x24], eax
mov esi, dword [ecx + 0x94]
nop word [eax + eax]
mov eax, dword [esp + 0x174]
mov edx, ebx
sub edx, dword [ecx + 0x78]
mov ecx, dword [ecx + 0x10]
sub ecx, dword [esp + 0x2c]
mov eax, dword [eax + 0xc]
sar edx, 1
cmp dword [esp + 0x20], 0x82
mov dword [eax + ecx*4], edx
jb 0x4b40a6
mov eax, dword [esp + 0x174]
mov dword [eax + 0x9c], 2
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x17c]
inc eax
push eax
movzx eax, word [ecx]
push dword [esp + 0x17c]
push dword [esp + 0x17c]
movzx eax, byte [eax + 0x4d3d58]
push dword [esp + 0x17c]
push dword [esp + 0x17c]
lea edx, [ecx + eax*2]
mov ecx, ebx
call fcn.004b32c0
mov ecx, eax
add esp, 0x14
cmp ecx, 0xfffffc1b
jne 0x4b4122
mov ecx, dword [esp + 0x174]
mov ebp, 1
mov eax, dword [ecx + 0x90]
mov ebx, dword [ecx + 0x84]
mov dword [esp + 0x170], eax
mov eax, dword [ecx + 0x74]
mov dword [esp + 0x18], ebx
lea eax, [eax + edi*2]
mov dword [esp + 0x14], eax
jmp 0x4b4060
cmp ecx, 0xfffffc20
jne 0x4b4161
mov edx, dword [esp + 0x14]
movzx eax, word [edx + 2]
lea eax, [edx + eax*2]
mov edx, dword [esp + 0x174]
cmp dword [edx + 0x80], eax
jae 0x4b4154
mov edx, dword [esp + 0x14]
cmp word [edx], 0x71
je 0x4b4169
cmp word [eax], 0x71
je 0x4b4169
mov eax, ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x158
ret
test ecx, ecx
jne 0x4b4154
mov edx, dword [esp + 0x14]
mov ecx, dword [esp + 0x174]
mov dword [ecx + 0x94], esi
movzx eax, word [edx + 2]
cmp word [edx + eax*2], 0x71
lea edx, [edx + eax*2]
mov dword [esp + 0x14], edx
je 0x4b4070
test ebp, ebp
jne 0x4b41c1
mov eax, dword [ecx + 0xc]
mov ecx, dword [esp + 0x3c]
mov esi, dword [esp + 0x174]
mov edx, dword [esp + 0x30]
mov dword [ecx + eax], edx
mov eax, dword [esi + 0xc]
mov edx, dword [esp + 0x28]
mov dword [ecx + eax + 4], edx
mov ecx, dword [esi + 0x10]
sub ecx, dword [esp + 0x2c]
mov eax, dword [esi + 0xc]
mov edx, dword [esp + 0x24]
mov dword [eax + ecx*4], edx
cmp dword [esp + 0x34], 0
jne 0x4b41d0
test ebp, ebp
je case.default.0x4b4c49
mov esi, dword [esp + 0x14]
mov ebp, dword [esp + 0x174]
add esi, 4
mov dword [esp + 0x14], esi
jmp 0x4b33af
mov edx, dword [esp + 0x20]
xor ebp, ebp
mov ecx, dword [esp + 0x174]
xor edi, edi
sub esi, dword [ecx + 0x74]
sar esi, 1
nop dword [eax + eax]
cmp edx, 0x82
jb 0x4b4212
mov dword [ecx + 0x9c], 2
mov eax, dword [esp + 0x17c]
inc eax
push eax
push dword [esp + 0x17c]
push ecx
mov ecx, dword [esp + 0x20]
push dword [esp + 0x17c]
push dword [esp + 0x17c]
movzx eax, word [ecx]
movzx eax, byte [eax + 0x4d3d58]
lea edx, [ecx + eax*2]
mov ecx, ebx
call fcn.004b32c0
mov ecx, eax
add esp, 0x14
cmp ecx, 0xfffffc1b
jne 0x4b428c
mov ecx, dword [esp + 0x174]
mov edi, 1
mov edx, dword [esp + 0x20]
mov eax, dword [ecx + 0x90]
mov ebx, dword [ecx + 0x84]
mov dword [esp + 0x170], eax
mov eax, dword [ecx + 0x74]
mov dword [esp + 0x18], ebx
lea eax, [eax + esi*2]
mov dword [esp + 0x14], eax
jmp 0x4b4200
cmp ecx, 0xfffffc20
jne 0x4b42c2
mov edx, dword [esp + 0x14]
movzx eax, word [edx + 2]
lea eax, [edx + eax*2]
mov edx, dword [esp + 0x174]
cmp dword [edx + 0x80], eax
jae 0x4b4154
mov edx, dword [esp + 0x14]
cmp word [edx], 0x71
je 0x4b42ca
cmp word [eax], 0x71
jmp 0x4b42c4
test ecx, ecx
jne 0x4b4154
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x20]
movzx eax, word [ecx + 2]
cmp word [ecx + eax*2], 0x71
lea ecx, [ecx + eax*2]
mov dword [esp + 0x14], ecx
mov ecx, dword [esp + 0x174]
je 0x4b4200
test edi, edi
jne 0x4b42fb
test ebp, ebp
je case.default.0x4b4c49
mov esi, dword [esp + 0x14]
mov ebp, ecx
add esi, 4
mov dword [esp + 0x14], esi
jmp 0x4b33af
movzx eax, word [esi + 2]
mov ebp, esi
add eax, eax
sub ebp, eax
mov eax, 0x82
movzx ecx, word [ebp]
cmp cx, ax
jae 0x4b4334
cmp ecx, 0x7b
je 0x4b4334
mov dword [esp + 0x2c], 0
jmp 0x4b434d
mov edx, dword [esp + 0x178]
lea eax, [edx + 4]
mov edx, dword [edx]
mov eax, dword [eax]
mov dword [esp + 0x178], edx
mov dword [esp + 0x2c], eax
cmp ecx, 0x77
jb 0x4b435b
cmp ecx, 0x7a
jbe 0x4b8bb8
cmp ecx, 0x7c
je 0x4b8bb8
cmp ecx, 0x7f
je 0x4b438b
mov eax, 0x84
cmp cx, ax
je 0x4b438b
mov eax, 0x80
cmp cx, ax
je 0x4b438b
mov eax, 0x85
cmp cx, ax
jne 0x4b445e
mov edi, dword [esp + 0x174]
movzx esi, word [ebp + 4]
mov eax, dword [edi + 0xa8]
lea edx, [esi + esi]
test eax, eax
je 0x4b43ac
cmp dword [eax + 4], esi
je 0x4b8ab4
mov dword [edi + 0x94], esi
cmp edx, dword [edi + 0x14]
jl 0x4b43fb
mov dword [edi + 0x40], 1
mov edx, dword [esp + 0x170]
mov esi, dword [esp + 0x14]
movzx eax, word [esi]
mov ecx, eax
cmp eax, 0x72
je 0x4b43dd
cmp ebx, dword [esp + 0x2c]
jne 0x4b87e1
add esi, 4
cmp word [ebp], 0x7b
mov dword [esp + 0x14], esi
je 0x4b8b75
mov ebp, dword [esp + 0x174]
jmp 0x4b33af
mov ecx, dword [esp + 0x170]
cmp edx, ecx
jle 0x4b4426
mov eax, dword [edi + 0xc]
lea edi, [eax + ecx*4]
lea ecx, [eax + edx*4]
cmp edi, ecx
jae 0x4b441f
sub ecx, edi
dec ecx
shr ecx, 2
inc ecx
or eax, 0xffffffff
rep stosd dword es:[edi], eax
mov edi, dword [esp + 0x174]
mov eax, dword [edi + 0x10]
mov ecx, dword [edi + 0xc]
sub eax, esi
mov eax, dword [ecx + eax*4]
mov dword [ecx + edx*4], eax
mov ecx, ebx
sub ecx, dword [edi + 0x78]
mov eax, dword [edi + 0xc]
sar ecx, 1
mov dword [eax + edx*4 + 4], ecx
cmp dword [esp + 0x170], edx
jg 0x4b43be
add edx, 2
mov dword [esp + 0x170], edx
jmp 0x4b43c5
mov edi, dword [esp + 0x174]
mov edx, dword [esp + 0x170]
jmp 0x4b43c9
cmp dword [ebp + 0x44], 0
je case.0x4b33dd.1
cmp ebx, dword [ebp + 0x78]
je case.default.0x4b4c49
cmp ebx, dword [ebp + 0x78]
jne case.default.0x4b4c49
add esi, 2
mov dword [esp + 0x14], esi
jmp 0x4b33af
cmp dword [ebp + 0x44], 0
je 0x4b44a9
cmp ebx, dword [ebp + 0x78]
je case.default.0x4b4c49
mov ecx, dword [ebp + 0x78]
jmp 0x4b44b4
mov ecx, dword [ebp + 0x78]
cmp ebx, ecx
je 0x4b4709
cmp ebx, dword [ebp + 0x7c]
je case.default.0x4b4c49
mov edx, dword [ebp + 0x18]
test edx, edx
je 0x4b44f1
cmp ebx, ecx
jbe case.default.0x4b4c49
push 1
lea eax, [ebp + 0x1c]
push eax
push ecx
mov ecx, ebx
call fcn.004bc6c0
add esp, 0xc
test eax, eax
je case.default.0x4b4c49
add esi, 2
mov dword [esp + 0x14], esi
jmp 0x4b33af
mov esi, dword [ebp + 0x1c]
lea edx, [esi + esi]
lea eax, [edx + ecx]
cmp ebx, eax
jb case.default.0x4b4c49
mov ecx, ebx
sub ecx, edx
mov ax, word [ecx]
cmp ax, word [ebp + 0x2c]
jne case.default.0x4b4c49
cmp esi, 1
je 0x4b4705
mov ax, word [ecx + 2]
cmp ax, word [ebp + 0x2e]
jne case.default.0x4b4c49
mov esi, dword [esp + 0x14]
add esi, 2
mov dword [esp + 0x14], esi
jmp 0x4b33af
mov ecx, dword [ebp + 0x98]
mov eax, dword [ebp + 0x78]
lea eax, [eax + ecx*2]
cmp ebx, eax
jne case.default.0x4b4c49
add esi, 2
mov dword [esp + 0x14], esi
jmp 0x4b33af
add esi, 2
mov dword [esp + 0x16c], ebx
mov dword [esp + 0x14], esi
jmp 0x4b33af
mov ecx, dword [ebp + 0x7c]
cmp ebx, ecx
jae 0x4b45e4
mov edx, dword [ebp + 0x18]
test edx, edx
je 0x4b45a4
push 1
lea eax, [ebp + 0x1c]
push eax
push ecx
mov ecx, ebx
call fcn.004bc600
add esp, 0xc
test eax, eax
je case.default.0x4b4c49
add esi, 2
mov dword [esp + 0x14], esi
jmp 0x4b33af
mov edx, dword [ebp + 0x1c]
lea eax, [edx + edx]
sub ecx, eax
cmp ebx, ecx
ja case.default.0x4b4c49
mov ax, word [ebx]
cmp ax, word [ebp + 0x2c]
jne case.default.0x4b4c49
cmp edx, 1
je 0x4b4709
mov ax, word [ebx + 2]
cmp ax, word [ebp + 0x2e]
jne case.default.0x4b4c49
add esi, 2
mov dword [esp + 0x14], esi
jmp 0x4b33af
cmp dword [ebp + 0x48], 0
jne case.default.0x4b4c49
mov eax, dword [ebp + 0x8c]
test eax, eax
je 0x4b4709
cmp ebx, dword [ebp + 0x88]
jbe 0x4b4709
mov dword [ebp + 0x64], 1
cmp eax, 1
jg 0x4ba6f0
add esi, 2
mov dword [esp + 0x14], esi
jmp 0x4b33af
cmp dword [ebp + 0x48], 0
jne case.default.0x4b4c49
cmp dword [ebp + 0x58], 0
je case.0x4b33dd.23
cmp ebx, dword [ebp + 0x7c]
jb case.default.0x4b4c49
mov eax, dword [ebp + 0x8c]
test eax, eax
je 0x4b4709
cmp ebx, dword [ebp + 0x88]
jbe 0x4b4709
mov dword [ebp + 0x64], 1
cmp eax, 1
jg 0x4ba6f0
add esi, 2
mov dword [esp + 0x14], esi
jmp 0x4b33af
mov esi, dword [ebp + 0x7c]
cmp ebx, esi
jae 0x4b46e3
mov edx, dword [ebp + 0x18]
lea edi, [ebp + 0x1c]
test edx, edx
je 0x4b46a5
push 1
push edi
push esi
mov ecx, ebx
call fcn.004bc600
add esp, 0xc
test eax, eax
je case.default.0x4b4c49
mov edx, dword [edi]
mov esi, dword [ebp + 0x7c]
jmp 0x4b46d6
mov edx, dword [edi]
mov ecx, esi
lea eax, [edx + edx]
sub ecx, eax
cmp ebx, ecx
ja case.default.0x4b4c49
mov ax, word [ebx]
cmp ax, word [ebp + 0x2c]
jne case.default.0x4b4c49
cmp edx, 1
je 0x4b46d6
mov ax, word [ebx + 2]
cmp ax, word [ebp + 0x2e]
jne case.default.0x4b4c49
lea eax, [edx + edx]
sub esi, eax
cmp ebx, esi
jne case.default.0x4b4c49
mov eax, dword [ebp + 0x8c]
test eax, eax
je 0x4b4705
cmp ebx, dword [ebp + 0x88]
jbe 0x4b4705
mov dword [ebp + 0x64], 1
cmp eax, 1
jg 0x4ba6f0
mov esi, dword [esp + 0x14]
add esi, 2
mov dword [esp + 0x14], esi
jmp 0x4b33af
cmp ebx, dword [ebp + 0x78]
je 0x4b47de
mov ax, word [ebx - 2]
lea edx, [ebx - 2]
mov ecx, 0xfc00
and ax, cx
mov ecx, 0xdc00
cmp ax, cx
jne 0x4b473a
add edx, 0xfffffffe
cmp edx, dword [ebp + 0x88]
jae 0x4b4748
mov dword [ebp + 0x88], edx
movzx ecx, word [edx]
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4b4773
movzx eax, word [edx + 2]
and ecx, 0x3ff
and eax, 0x3ff
shl ecx, 0xa
or ecx, eax
add ecx, 0x10000
cmp dword [ebp + 0x54], 0
je 0x4b47c6
cmp ecx, 0x5f
jne 0x4b478a
lea edx, [ecx - 0x5e]
jmp 0x4b47e0
mov eax, ecx
and ecx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x4d1b58]
shl eax, 7
add eax, ecx
movzx eax, word [eax*2 + 0x4c5178]
movzx eax, byte [eax*8 + 0x4d0a79]
mov eax, dword [eax*4 + 0x4d4138]
cmp eax, 1
je 0x4b47bf
cmp eax, 3
jne 0x4b47de
mov edx, 1
jmp 0x4b47e0
cmp ecx, 0x100
jae 0x4b47de
mov eax, dword [ebp + 0x3c]
test byte [ecx + eax], 0x10
je 0x4b47de
mov edx, 1
jmp 0x4b47e0
xor edx, edx
cmp ebx, dword [ebp + 0x7c]
jb 0x4b4836
mov eax, dword [ebp + 0x8c]
test eax, eax
je 0x4b480b
cmp ebx, dword [ebp + 0x88]
jbe 0x4b480b
mov dword [ebp + 0x64], 1
cmp eax, 1
jg 0x4ba6f0
xor ecx, ecx
movzx eax, word [esi]
xor edx, ecx
add esi, 2
mov dword [esp + 0x14], esi
cmp eax, 5
jne 0x4b4821
xor edx, 1
test edx, edx
je 0x4b33af
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x158
ret
movzx ecx, word [ebx]
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4b4861
movzx eax, word [ebx + 2]
and ecx, 0x3ff
and eax, 0x3ff
shl ecx, 0xa
or ecx, eax
add ecx, 0x10000
cmp dword [ebp + 0x54], 0
je 0x4b48ba
cmp ecx, 0x5f
jne 0x4b4877
mov ecx, 1
jmp 0x4b480d
mov eax, ecx
and ecx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x4d1b58]
shl eax, 7
add eax, ecx
movzx eax, word [eax*2 + 0x4c5178]
movzx eax, byte [eax*8 + 0x4d0a79]
mov eax, dword [eax*4 + 0x4d4138]
cmp eax, 1
je 0x4b48b0
cmp eax, 3
jne 0x4b480b
mov ecx, 1
jmp 0x4b480d
cmp ecx, 0x100
jae 0x4b480b
mov eax, dword [ebp + 0x3c]
test byte [ecx + eax], 0x10
je 0x4b480b
mov ecx, 1
jmp 0x4b480d
mov edx, dword [ebp + 0x18]
mov ecx, dword [ebp + 0x7c]
test edx, edx
je 0x4b4906
cmp ebx, ecx
jae case.0x4b33dd.13
push 1
lea eax, [ebp + 0x1c]
push eax
push ecx
mov ecx, ebx
call fcn.004bc600
add esp, 0xc
test eax, eax
jne case.default.0x4b4c49
jmp case.0x4b33dd.13
mov edx, dword [ebp + 0x1c]
lea eax, [edx + edx]
sub ecx, eax
cmp ebx, ecx
ja case.0x4b33dd.13
mov ax, word [ebx]
cmp ax, word [ebp + 0x2c]
jne case.0x4b33dd.13
cmp edx, 1
je case.default.0x4b4c49
mov ax, word [ebx + 2]
cmp ax, word [ebp + 0x2e]
je case.default.0x4b4c49
mov eax, dword [ebp + 0x7c]
cmp ebx, eax
jae 0x4ba6c0
add ebx, 2
mov dword [esp + 0x18], ebx
cmp ebx, eax
jae 0x4b4964
mov ax, word [ebx]
mov ecx, 0xfc00
and ax, cx
mov ecx, 0xdc00
cmp ax, cx
jne 0x4b4964
add ebx, 2
mov dword [esp + 0x18], ebx
add esi, 2
mov dword [esp + 0x14], esi
jmp 0x4b33af
cmp ebx, dword [ebp + 0x7c]
jae 0x4ba6c0
add ebx, 2
add esi, 2
mov dword [esp + 0x18], ebx
mov dword [esp + 0x14], esi
jmp 0x4b33af
cmp ebx, dword [ebp + 0x7c]
jae 0x4ba6c0
movzx ecx, word [ebx]
add ebx, 2
mov eax, ecx
mov dword [esp + 0x18], ebx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4b49cd
movzx eax, word [ebx]
and ecx, 0x3ff
shl ecx, 0xa
and eax, 0x3ff
or ecx, eax
add ecx, 0x10000
add ebx, 2
mov dword [esp + 0x18], ebx
cmp ecx, 0x100
jae 0x4b4709
mov eax, dword [ebp + 0x3c]
test byte [ecx + eax], 4
jne case.default.0x4b4c49
add esi, 2
mov dword [esp + 0x14], esi
jmp 0x4b33af
cmp ebx, dword [ebp + 0x7c]
jae 0x4ba6c0
movzx ecx, word [ebx]
add ebx, 2
mov eax, ecx
mov dword [esp + 0x18], ebx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4b4a33
movzx eax, word [ebx]
and ecx, 0x3ff
shl ecx, 0xa
and eax, 0x3ff
or ecx, eax
add ecx, 0x10000
add ebx, 2
mov dword [esp + 0x18], ebx
cmp ecx, 0xff
ja case.default.0x4b4c49
mov eax, dword [ebp + 0x3c]
test byte [ecx + eax], 4
je case.default.0x4b4c49
add esi, 2
mov dword [esp + 0x14], esi
jmp 0x4b33af
cmp ebx, dword [ebp + 0x7c]
jae 0x4ba6c0
movzx ecx, word [ebx]
add ebx, 2
mov eax, ecx
mov dword [esp + 0x18], ebx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4b4a99
movzx eax, word [ebx]
and ecx, 0x3ff
shl ecx, 0xa
and eax, 0x3ff
or ecx, eax
add ecx, 0x10000
add ebx, 2
mov dword [esp + 0x18], ebx
cmp ecx, 0x100
jae 0x4b4709
mov eax, dword [ebp + 0x3c]
test byte [ecx + eax], 1
jne case.default.0x4b4c49
add esi, 2
mov dword [esp + 0x14], esi
jmp 0x4b33af
cmp ebx, dword [ebp + 0x7c]
jae 0x4ba6c0
movzx ecx, word [ebx]
add ebx, 2
mov eax, ecx
mov dword [esp + 0x18], ebx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4b4aff
movzx eax, word [ebx]
and ecx, 0x3ff
shl ecx, 0xa
and eax, 0x3ff
or ecx, eax
add ecx, 0x10000
add ebx, 2
mov dword [esp + 0x18], ebx
cmp ecx, 0xff
ja case.default.0x4b4c49
mov eax, dword [ebp + 0x3c]
test byte [ecx + eax], 1
je case.default.0x4b4c49
add esi, 2
mov dword [esp + 0x14], esi
jmp 0x4b33af
cmp ebx, dword [ebp + 0x7c]
jae 0x4ba6c0
movzx ecx, word [ebx]
add ebx, 2
mov eax, ecx
mov dword [esp + 0x18], ebx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4b4b65
movzx eax, word [ebx]
and ecx, 0x3ff
shl ecx, 0xa
and eax, 0x3ff
or ecx, eax
add ecx, 0x10000
add ebx, 2
mov dword [esp + 0x18], ebx
cmp ecx, 0x100
jae 0x4b4709
mov eax, dword [ebp + 0x3c]
test byte [ecx + eax], 0x10
jne case.default.0x4b4c49
add esi, 2
mov dword [esp + 0x14], esi
jmp 0x4b33af
cmp ebx, dword [ebp + 0x7c]
jae 0x4ba6c0
movzx ecx, word [ebx]
add ebx, 2
mov eax, ecx
mov dword [esp + 0x18], ebx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4b4bcb
movzx eax, word [ebx]
and ecx, 0x3ff
shl ecx, 0xa
and eax, 0x3ff
or ecx, eax
add ecx, 0x10000
add ebx, 2
mov dword [esp + 0x18], ebx
cmp ecx, 0xff
ja case.default.0x4b4c49
mov eax, dword [ebp + 0x3c]
test byte [ecx + eax], 0x10
je case.default.0x4b4c49
add esi, 2
mov dword [esp + 0x14], esi
jmp 0x4b33af
mov esi, dword [ebp + 0x7c]
cmp ebx, esi
jae 0x4ba6c0
movzx ecx, word [ebx]
lea edx, [ebx + 2]
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4b4c2b
movzx eax, word [edx]
and ecx, 0x3ff
shl ecx, 0xa
and eax, 0x3ff
or ecx, eax
add ecx, 0x10000
add edx, 2
cmp ecx, 0x85
ja 0x4b4c99
je case.0x4b4c49.11
add ecx, 0xfffffff6
cmp ecx, 3
ja case.default.0x4b4c49
jmp dword [ecx*4 + 0x4baea0]
mov ebx, edx
mov dword [esp + 0x18], ebx
cmp edx, esi
jae 0x4b4705
cmp word [edx], 0xa
mov dword [esp + 0x18], ebx
jne 0x4b4705
mov esi, dword [esp + 0x14]
lea ebx, [edx + 2]
add esi, 2
mov dword [esp + 0x18], ebx
mov dword [esp + 0x14], esi
jmp 0x4b33af
mov esi, dword [esp + 0x14]
mov ebx, edx
add esi, 2
mov dword [esp + 0x18], ebx
mov dword [esp + 0x14], esi
jmp 0x4b33af
sub ecx, 0x2028
je case.0x4b4c49.11
sub ecx, 1
jne case.default.0x4b4c49
cmp dword [ebp + 0x68], 0
mov ebx, edx
mov dword [esp + 0x18], ebx
jne case.default.0x4b4c49
mov esi, dword [esp + 0x14]
add esi, 2
mov dword [esp + 0x14], esi
jmp 0x4b33af
cmp ebx, dword [ebp + 0x7c]
jae 0x4ba6c0
movzx ecx, word [ebx]
add ebx, 2
mov eax, ecx
mov dword [esp + 0x18], ebx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4b4d0b
movzx eax, word [ebx]
and ecx, 0x3ff
shl ecx, 0xa
and eax, 0x3ff
or ecx, eax
add ecx, 0x10000
add ebx, 2
mov dword [esp + 0x18], ebx
cmp ecx, 0x2000
ja 0x4b4d69
je case.default.0x4b4c49
cmp ecx, 0xa0
ja 0x4b4d45
je case.default.0x4b4c49
cmp ecx, 9
je case.default.0x4b4c49
cmp ecx, 0x20
je case.default.0x4b4c49
add esi, 2
mov dword [esp + 0x14], esi
jmp 0x4b33af
cmp ecx, 0x1680
je case.default.0x4b4c49
cmp ecx, 0x180e
je case.default.0x4b4c49
add esi, 2
mov dword [esp + 0x14], esi
jmp 0x4b33af
cmp ecx, 0x3000
ja case.0x4b4d91.8203
je case.default.0x4b4c49
add ecx, 0xffffdfff
cmp ecx, 0x5e
ja case.0x4b4d91.8203
movzx eax, byte [ecx + 0x4baeb8]
jmp dword [eax*4 + 0x4baeb0]
cmp ebx, dword [ebp + 0x7c]
jae 0x4ba6c0
movzx ecx, word [ebx]
add ebx, 2
mov eax, ecx
mov dword [esp + 0x18], ebx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4b4dd9
movzx eax, word [ebx]
and ecx, 0x3ff
shl ecx, 0xa
and eax, 0x3ff
or ecx, eax
add ecx, 0x10000
add ebx, 2
mov dword [esp + 0x18], ebx
cmp ecx, 0x2000
ja 0x4b4e1d
je case.0x4b4d91.8203
cmp ecx, 0xa0
ja 0x4b4e06
je case.0x4b4d91.8203
cmp ecx, 9
je case.0x4b4d91.8203
cmp ecx, 0x20
jmp 0x4b4483
cmp ecx, 0x1680
je case.0x4b4d91.8203
cmp ecx, 0x180e
jmp 0x4b4483
cmp ecx, 0x3000
ja case.default.0x4b4c49
je case.0x4b4d91.8203
add ecx, 0xffffdfff
cmp ecx, 0x5e
ja case.default.0x4b4c49
movzx eax, byte [ecx + 0x4baf20]
jmp dword [eax*4 + 0x4baf18]
cmp ebx, dword [ebp + 0x7c]
jae 0x4ba6c0
movzx ecx, word [ebx]
add ebx, 2
mov eax, ecx
mov dword [esp + 0x18], ebx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4b4e8d
movzx eax, word [ebx]
and ecx, 0x3ff
shl ecx, 0xa
and eax, 0x3ff
or ecx, eax
add ecx, 0x10000
add ebx, 2
mov dword [esp + 0x18], ebx
cmp ecx, 0x85
ja 0x4b4eae
je case.default.0x4b4c49
add ecx, 0xfffffff6
cmp ecx, 3
ja case.0x4b4d91.8203
jmp dword [ecx*4 + 0x4baf80]
sub ecx, 0x2028
je case.default.0x4b4c49
sub ecx, 1
je case.default.0x4b4c49
add esi, 2
mov dword [esp + 0x14], esi
jmp 0x4b33af
cmp ebx, dword [ebp + 0x7c]
jae 0x4ba6c0
movzx ecx, word [ebx]
add ebx, 2
mov eax, ecx
mov dword [esp + 0x18], ebx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4b4f10
movzx eax, word [ebx]
and ecx, 0x3ff
shl ecx, 0xa
and eax, 0x3ff
or ecx, eax
add ecx, 0x10000
add ebx, 2
mov dword [esp + 0x18], ebx
cmp ecx, 0x85
ja 0x4b4f31
je case.0x4b4d91.8203
add ecx, 0xfffffff6
cmp ecx, 3
ja case.default.0x4b4c49
jmp dword [ecx*4 + 0x4baf90]
sub ecx, 0x2028
je case.0x4b4d91.8203
sub ecx, 1
jmp 0x4b4483
cmp ebx, dword [ebp + 0x7c]
jae 0x4ba6c0
movzx edx, word [ebx]
add ebx, 2
mov eax, edx
mov dword [esp + 0x18], ebx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4b4f86
movzx eax, word [ebx]
and edx, 0x3ff
and eax, 0x3ff
shl edx, 0xa
add ebx, 2
or edx, eax
mov dword [esp + 0x18], ebx
add edx, 0x10000
mov eax, edx
shr eax, 7
movzx ecx, byte [eax + 0x4d1b58]
mov eax, edx
shl ecx, 7
and eax, 0x7f
add ecx, eax
movzx eax, word [ecx*2 + 0x4c5178]
movzx ecx, word [esi + 2]
cmp ecx, 8
ja case.default.0x4b4fb1
jmp dword [ecx*4 + 0x4bafa0]
cmp dword [esp + 0x20], 0xf
jmp 0x4b5108
mov al, byte [eax*8 + 0x4d0a79]
cmp al, 9
je 0x4b50f7
cmp al, 5
je 0x4b50f7
cmp al, 8
je 0x4b50f7
xor ecx, ecx
jmp 0x4b50fc
movzx ecx, byte [eax*8 + 0x4d0a79]
xor edx, edx
movzx eax, word [esi + 4]
cmp eax, dword [ecx*4 + 0x4d4138]
setne dl
xor eax, eax
cmp dword [esp + 0x20], 0x10
sete al
cmp edx, eax
jmp 0x4b5108
movzx eax, byte [eax*8 + 0x4d0a79]
xor ecx, ecx
cmp word [esi + 4], ax
setne cl
xor eax, eax
cmp dword [esp + 0x20], 0x10
jmp 0x4b5103
movzx eax, byte [eax*8 + 0x4d0a78]
xor ecx, ecx
cmp word [esi + 4], ax
setne cl
xor eax, eax
cmp dword [esp + 0x20], 0x10
jmp 0x4b5103
movzx eax, byte [eax*8 + 0x4d0a79]
mov eax, dword [eax*4 + 0x4d4138]
cmp eax, 1
je 0x4b50f7
cmp eax, 3
je 0x4b50f7
xor ecx, ecx
jmp 0x4b50fc
movzx eax, byte [eax*8 + 0x4d0a79]
cmp dword [eax*4 + 0x4d4138], 6
je 0x4b50f7
cmp edx, 9
je 0x4b50f7
cmp edx, 0xa
je 0x4b50f7
cmp edx, 0xc
je 0x4b50f7
cmp edx, 0xd
je 0x4b50f7
xor ecx, ecx
jmp 0x4b50fc
movzx eax, byte [eax*8 + 0x4d0a79]
cmp dword [eax*4 + 0x4d4138], 6
je 0x4b50f7
cmp edx, 9
je 0x4b50f7
cmp edx, 0xa
je 0x4b50f7
cmp edx, 0xb
jmp 0x4b5095
movzx eax, byte [eax*8 + 0x4d0a79]
mov eax, dword [eax*4 + 0x4d4138]
cmp eax, 1
je 0x4b50f7
cmp eax, 3
je 0x4b50f7
cmp edx, 0x5f
je 0x4b50f7
xor ecx, ecx
jmp 0x4b50fc
mov ecx, 1
xor eax, eax
cmp dword [esp + 0x20], 0xf
sete al
cmp ecx, eax
je case.default.0x4b4c49
add esi, 6
mov dword [esp + 0x14], esi
jmp 0x4b33af
mov edi, dword [ebp + 0x7c]
cmp ebx, edi
jae 0x4ba6c0
movzx ecx, word [ebx]
add ebx, 2
mov eax, ecx
mov dword [esp + 0x18], ebx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4b515d
movzx eax, word [ebx]
and ecx, 0x3ff
shl ecx, 0xa
and eax, 0x3ff
or ecx, eax
add ecx, 0x10000
add ebx, 2
mov dword [esp + 0x18], ebx
mov eax, ecx
and ecx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x4d1b58]
shl eax, 7
add eax, ecx
movzx eax, word [eax*2 + 0x4c5178]
movzx eax, byte [eax*8 + 0x4d0a79]
cmp dword [eax*4 + 0x4d4138], 2
je case.default.0x4b4c49
cmp ebx, edi
jae case.0x4b4d91.8203
mov esi, ebx
mov dword [esp + 0x18], ebx
nop dword [eax]
movzx ecx, word [ebx]
mov edx, 1
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4b51d5
movzx eax, word [ebx + 2]
and ecx, 0x3ff
and eax, 0x3ff
shl ecx, 0xa
or ecx, eax
mov edx, 2
add ecx, 0x10000
mov eax, ecx
and ecx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x4d1b58]
shl eax, 7
add eax, ecx
movzx eax, word [eax*2 + 0x4c5178]
movzx eax, byte [eax*8 + 0x4d0a79]
cmp dword [eax*4 + 0x4d4138], 2
jne 0x4b520c
lea ebx, [esi + edx*2]
mov esi, ebx
cmp ebx, edi
jb 0x4b51a0
mov esi, dword [esp + 0x14]
add esi, 2
mov dword [esp + 0x18], ebx
mov dword [esp + 0x14], esi
jmp 0x4b33af
movzx eax, word [esi + 2]
xor edx, edx
cmp dword [esp + 0x20], 0x6e
sete dl
add esi, 4
lea ecx, [eax + eax]
mov dword [esp + 0x3c], edx
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x14], esi
cmp ecx, dword [esp + 0x170]
jge 0x4b525b
mov eax, dword [ebp + 0xc]
mov esi, dword [eax + ecx*4]
test esi, esi
js 0x4b525b
mov ebp, dword [eax + ecx*4 + 4]
sub ebp, esi
jmp 0x4b5265
mov ebp, dword [ebp + 0x50]
neg ebp
sbb ebp, ebp
neg ebp
dec ebp
mov eax, dword [esp + 0x14]
movzx esi, word [eax]
mov edi, esi
lea eax, [edi - 0x62]
cmp eax, 7
ja case.default.0x4b5281
movzx eax, byte [eax + 0x4bafcc]
jmp dword [eax*4 + 0x4bafc4]
add dword [esp + 0x14], 2
mov eax, edi
movsx esi, byte [edi + str.space]
and eax, 1
mov dword [esp + 0x30], eax
movsx eax, byte [edi + 0x4c4cc2]
mov dword [esp + 0x34], eax
test eax, eax
jne 0x4b52e0
mov dword [esp + 0x34], SysReAllocString
jmp 0x4b52e0
mov edi, dword [esp + 0x14]
xor eax, eax
cmp esi, 0x69
sete al
movzx esi, word [edi + 2]
mov dword [esp + 0x30], eax
movzx eax, word [edi + 4]
test eax, eax
cmove eax, dword [esp + 0x4c]
add edi, 6
mov dword [esp + 0x34], eax
mov dword [esp + 0x14], edi
test ebp, ebp
je 0x4b33a4
jns 0x4b52f2
test esi, esi
je 0x4b33a4
mov edi, 1
cmp esi, edi
jl 0x4b532f
nop dword [eax + eax]
push edx
push dword [esp + 0x178]
mov edx, ebx
push ebp
call fcn.004b3110
add esp, 0xc
test eax, eax
js 0x4b8bef
mov ecx, dword [esp + 0x2c]
lea ebx, [ebx + eax*2]
mov edx, dword [esp + 0x3c]
inc edi
mov dword [esp + 0x18], ebx
cmp edi, esi
jle 0x4b5300
mov eax, dword [esp + 0x34]
cmp esi, eax
je 0x4b33a4
cmp dword [esp + 0x30], 0
je 0x4b8c25
mov eax, dword [esp + 0x17c]
mov ecx, ebx
mov edx, dword [esp + 0x14]
inc eax
push eax
push dword [esp + 0x17c]
push dword [esp + 0x17c]
push dword [esp + 0x17c]
push dword [esp + 0x17c]
call fcn.004b32c0
add esp, 0x14
test eax, eax
jne 0x4b8944
mov edi, dword [esp + 0x2c]
cmp esi, dword [esp + 0x34]
jge case.default.0x4b4c49
push dword [esp + 0x3c]
mov edx, ebx
mov ecx, edi
push dword [esp + 0x178]
push ebp
call fcn.004b3110
add esp, 0xc
test eax, eax
js 0x4b8bef
mov edx, dword [esp + 0x14]
lea ebx, [ebx + eax*2]
mov eax, dword [esp + 0x17c]
mov ecx, ebx
inc eax
inc esi
push eax
push dword [esp + 0x17c]
push dword [esp + 0x17c]
push dword [esp + 0x17c]
push dword [esp + 0x17c]
call fcn.004b32c0
add esp, 0x14
test eax, eax
je 0x4b5385
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x158
ret
mov esi, dword [esp + 0x174]
push edx
push esi
push ebp
mov edx, ebx
call fcn.004b3110
add esp, 0xc
test eax, eax
js 0x4b8d03
lea ebx, [ebx + eax*2]
mov ebp, esi
mov dword [esp + 0x18], ebx
jmp 0x4b33ab
movzx edx, word [esi + 0x22]
lea ebp, [esi + 2]
add esi, 0x22
mov dword [esp + 0x34], ebp
mov ecx, edx
mov dword [esp + 0x14], esi
lea eax, [ecx - 0x62]
cmp eax, 7
ja case.default.0x4b5446
movzx eax, byte [eax + 0x4bafdc]
jmp dword [eax*4 + 0x4bafd4]
movsx eax, byte [ecx + 0x4c4cc2]
add esi, 2
mov edx, ecx
mov dword [esp + 0x14], esi
movsx esi, byte [ecx + str.space]
and edx, 1
mov dword [esp + 0x28], edx
mov dword [esp + 0x2c], esi
mov dword [esp + 0x30], eax
test eax, eax
jne 0x4b54b2
mov dword [esp + 0x30], SysReAllocString
jmp 0x4b54b2
mov ecx, dword [esp + 0x14]
xor eax, eax
movzx esi, word [esi + 2]
cmp edx, 0x69
mov edx, SysReAllocString
mov dword [esp + 0x2c], esi
sete al
mov dword [esp + 0x28], eax
movzx eax, word [ecx + 4]
test eax, eax
cmove eax, edx
add ecx, 6
mov dword [esp + 0x30], eax
mov dword [esp + 0x14], ecx
cmp esi, 1
jl 0x4b5554
jmp 0x4b54ce
mov esi, 1
mov dword [esp + 0x30], 1
mov dword [esp + 0x2c], esi
mov ecx, dword [esp + 0x174]
mov edi, 1
mov ebp, dword [ecx + 0x7c]
nop dword [eax]
cmp ebx, ebp
jae 0x4b8f14
movzx edx, word [ebx]
add ebx, 2
mov eax, edx
mov dword [esp + 0x18], ebx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4b5520
movzx eax, word [ebx]
and edx, 0x3ff
shl edx, 0xa
and eax, 0x3ff
or edx, eax
add edx, 0x10000
add ebx, 2
mov dword [esp + 0x18], ebx
cmp edx, 0xff
jbe 0x4b552f
cmp dword [esp + 0x20], 0x6a
jmp 0x4b5545
mov ecx, edx
mov eax, 1
and ecx, 7
shr edx, 3
shl eax, cl
mov ecx, dword [esp + 0x34]
test byte [edx + ecx], al
je case.default.0x4b4c49
inc edi
cmp edi, esi
jle 0x4b54e0
mov ebp, dword [esp + 0x34]
mov edi, dword [esp + 0x30]
cmp esi, edi
je 0x4b33a4
cmp dword [esp + 0x28], 0
je 0x4b8d92
mov eax, dword [esp + 0x17c]
mov ecx, ebx
mov edx, dword [esp + 0x14]
inc eax
push eax
push dword [esp + 0x17c]
push dword [esp + 0x17c]
push dword [esp + 0x17c]
push dword [esp + 0x17c]
call fcn.004b32c0
add esp, 0x14
test eax, eax
jne 0x4b8944
cmp esi, edi
jge case.default.0x4b4c49
mov ecx, dword [esp + 0x174]
cmp ebx, dword [ecx + 0x7c]
jae 0x4b8f1b
movzx edx, word [ebx]
add ebx, 2
mov eax, edx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4b55ee
movzx eax, word [ebx]
and edx, 0x3ff
shl edx, 0xa
and eax, 0x3ff
or edx, eax
add edx, 0x10000
add ebx, 2
cmp edx, 0xff
jbe 0x4b8d32
cmp dword [esp + 0x20], 0x6a
je case.default.0x4b4c49
jmp 0x4b8d51
movzx eax, word [esi + 2]
lea ebp, [esi + 4]
movzx edx, word [esi + eax*2]
lea esi, [esi + eax*2]
mov ecx, edx
mov dword [esp + 0x44], ebp
mov dword [esp + 0x14], esi
lea eax, [ecx - 0x62]
cmp eax, 7
ja case.default.0x4b5635
movzx eax, byte [eax + 0x4bafec]
jmp dword [eax*4 + 0x4bafe4]
movsx eax, byte [ecx + 0x4c4cc2]
mov edx, ecx
movsx edi, byte [ecx + str.space]
add esi, 2
and edx, 1
mov dword [esp + 0x14], esi
mov dword [esp + 0x28], edx
mov dword [esp + 0x34], eax
test eax, eax
jne 0x4b5695
mov dword [esp + 0x34], SysReAllocString
jmp 0x4b5695
movzx edi, word [esi + 2]
xor eax, eax
cmp edx, 0x69
mov ecx, SysReAllocString
sete al
mov dword [esp + 0x28], eax
movzx eax, word [esi + 4]
test eax, eax
cmove eax, ecx
add esi, 6
mov dword [esp + 0x34], eax
mov dword [esp + 0x14], esi
cmp edi, 1
jl 0x4b5721
jmp 0x4b56ad
mov dword [esp + 0x34], 1
mov edi, 1
mov esi, 1
nop dword [eax]
nop word [eax + eax]
mov ecx, dword [esp + 0x174]
cmp ebx, dword [ecx + 0x7c]
jae 0x4b8f1b
movzx ecx, word [ebx]
add ebx, 2
mov eax, ecx
mov dword [esp + 0x18], ebx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4b5708
movzx eax, word [ebx]
and ecx, 0x3ff
shl ecx, 0xa
and eax, 0x3ff
or ecx, eax
add ecx, 0x10000
add ebx, 2
mov dword [esp + 0x18], ebx
push 1
mov edx, ebp
call fcn.004bc7b0
add esp, 4
test eax, eax
je case.default.0x4b4c49
inc esi
cmp esi, edi
jle 0x4b56c0
mov esi, dword [esp + 0x34]
cmp edi, esi
je 0x4b33a4
cmp dword [esp + 0x28], 0
je 0x4b8f2e
mov eax, dword [esp + 0x17c]
mov ecx, ebx
mov edx, dword [esp + 0x14]
inc eax
push eax
push dword [esp + 0x17c]
push dword [esp + 0x17c]
push dword [esp + 0x17c]
push dword [esp + 0x17c]
call fcn.004b32c0
add esp, 0x14
test eax, eax
jne 0x4b8944
cmp edi, esi
jge case.default.0x4b4c49
mov ecx, dword [esp + 0x174]
cmp ebx, dword [ecx + 0x7c]
jae 0x4b8f1b
movzx ecx, word [ebx]
add ebx, 2
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4b57bb
movzx eax, word [ebx]
and ecx, 0x3ff
shl ecx, 0xa
and eax, 0x3ff
or ecx, eax
add ecx, 0x10000
add ebx, 2
push 1
mov edx, ebp
call fcn.004bc7b0
add esp, 4
test eax, eax
je case.default.0x4b4c49
mov eax, dword [esp + 0x17c]
mov ecx, ebx
mov edx, dword [esp + 0x14]
inc eax
push eax
push dword [esp + 0x17c]
inc edi
push dword [esp + 0x17c]
push dword [esp + 0x17c]
push dword [esp + 0x17c]
call fcn.004b32c0
add esp, 0x14
test eax, eax
je 0x4b5773
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x158
ret
mov ax, word [esi + 2]
add esi, 2
mov ecx, 0xfc00
xor edx, edx
and ax, cx
mov ecx, 0xd800
cmp ax, cx
mov ecx, dword [ebp + 0x7c]
mov eax, ecx
sete dl
sub eax, ebx
inc edx
sar eax, 1
cmp edx, eax
jg 0x4b9071
movzx ecx, word [esi]
dec edx
movzx eax, word [ebx]
add esi, 2
add ebx, 2
mov dword [esp + 0x14], esi
mov dword [esp + 0x18], ebx
cmp cx, ax
jne case.default.0x4b4c49
test edx, edx
jg 0x4b5844
jmp 0x4b33af
cmp ebx, dword [ebp + 0x7c]
jae 0x4ba6c0
movzx edx, word [esi + 2]
lea ecx, [esi + 2]
mov eax, edx
lea esi, [ecx + 2]
and eax, 0xfc00
mov dword [esp + 0x14], esi
cmp eax, 0xd800
jne 0x4b58b0
movzx eax, word [esi]
and edx, 0x3ff
shl edx, 0xa
and eax, 0x3ff
or edx, eax
mov edi, 4
add edx, 0x10000
jmp 0x4b58b5
mov edi, 2
movzx eax, word [ebx]
cmp edx, 0x80
jae 0x4b58eb
mov edi, 0xff
mov ecx, eax
cmp ax, di
mov eax, dword [ebp + 0x34]
ja 0x4b58d3
movzx ecx, byte [ecx + eax]
movzx eax, byte [eax + edx]
cmp eax, ecx
jne case.default.0x4b4c49
add ebx, 2
mov dword [esp + 0x18], ebx
jmp 0x4b33af
mov esi, eax
add ebx, 2
and eax, 0xfc00
mov dword [esp + 0x18], ebx
cmp eax, 0xd800
jne 0x4b5920
movzx eax, word [ebx]
and esi, 0x3ff
shl esi, 0xa
and eax, 0x3ff
add ebx, 2
or esi, eax
mov dword [esp + 0x18], ebx
add esi, 0x10000
lea eax, [edi + ecx]
mov dword [esp + 0x14], eax
cmp edx, esi
je 0x4b33ab
mov eax, edx
shr eax, 7
movzx ecx, byte [eax + 0x4d1b58]
mov eax, edx
and eax, 0x7f
shl ecx, 7
add ecx, eax
movzx eax, word [ecx*2 + 0x4c5178]
mov eax, dword [eax*8 + 0x4d0a7c]
add eax, edx
cmp esi, eax
jne case.default.0x4b4c49
jmp 0x4b33ab
movzx edi, word [esi + 2]
lea ecx, [esi + 4]
mov ebp, edi
jmp 0x4b5a28
mov dword [esp + 0x30], 1
movzx edi, word [esi + 2]
xor ebp, ebp
mov dword [esp + 0x24], ebp
mov dword [esp + 0x20], edi
cmp ecx, 0x28
je 0x4b5995
mov dword [esp + 0x28], ebp
cmp ecx, 0x35
jne 0x4b599d
mov dword [esp + 0x28], 1
lea ecx, [esi + 4]
jmp 0x4b5a30
mov dword [esp + 0x30], 1
lea ecx, [esi + 2]
xor ebp, ebp
mov dword [esp + 0x20], SysReAllocString
jmp 0x4b5a2c
mov dword [esp + 0x30], 1
lea ecx, [esi + 2]
mov ebp, 1
mov dword [esp + 0x20], SysReAllocString
jmp 0x4b5a2c
mov dword [esp + 0x30], 1
lea ecx, [esi + 2]
xor ebp, ebp
mov dword [esp + 0x20], 1
jmp 0x4b5a2c
cmp edx, 0x2e
mov ecx, edx
sbb eax, eax
and eax, 0xfffffff3
add eax, 0x2e
sub ecx, eax
mov eax, ecx
mov dword [esp + 0x28], ecx
and dword [esp + 0x28], 1
lea ecx, [esi + 2]
movsx edi, byte [eax + 0x4c4d24]
movsx ebp, byte [eax + 0x4c4d2c]
test edi, edi
mov eax, SysReAllocString
cmove edi, eax
mov dword [esp + 0x20], edi
mov dword [esp + 0x24], ebp
movzx esi, word [ecx]
lea edi, [ecx + 2]
mov eax, esi
mov dword [esp + 0x1c], ecx
and eax, 0xfc00
mov dword [esp + 0x14], edi
cmp eax, 0xd800
jne 0x4b5e3a
movzx eax, word [edi]
and esi, 0x3ff
shl esi, 0xa
and eax, 0x3ff
or esi, eax
mov dword [esp + 0x3c], 2
add esi, 0x10000
lea eax, [ecx + 4]
mov dword [esp + 0x14], eax
cmp edx, 0x2e
jb 0x4b5ab9
mov eax, esi
shr eax, 7
movzx ecx, byte [eax + 0x4d1b58]
mov eax, esi
shl ecx, 7
and eax, 0x7f
add ecx, eax
movzx eax, word [ecx*2 + 0x4c5178]
mov ecx, dword [eax*8 + 0x4d0a7c]
add ecx, esi
cmp ecx, esi
je 0x4b5ab9
lea edx, [esp + 0x74]
call fcn.004bc5a0
mov edi, eax
mov dword [esp + 0x2c], eax
jmp 0x4b5abf
xor edi, edi
mov dword [esp + 0x2c], edi
mov esi, dword [esp + 0x24]
mov ebp, 1
cmp esi, ebp
jl 0x4b5c08
mov eax, dword [esp + 0x174]
mov edx, dword [esp + 0x3c]
mov esi, dword [esp + 0x14]
mov dword [esp + 0x3c], edx
mov ecx, dword [eax + 0x7c]
mov dword [esp + 0x34], ecx
mov dword [esp + 0x14], esi
lea eax, [ecx - 4]
mov dword [esp + 0x44], eax
jmp 0x4b5b04
mov edi, dword [esp + 0x2c]
cmp ebx, eax
ja 0x4b5b6f
lea esi, [edx + edx]
mov ecx, ebx
mov edx, dword [esp + 0x1c]
sub esi, 4
jb 0x4b5b31
nop word [eax + eax]
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x4b5b36
add ecx, 4
add edx, 4
sub esi, 4
jae 0x4b5b20
cmp esi, 0xfffffffc
je 0x4b5b63
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x4b5b6b
cmp esi, 0xfffffffd
je 0x4b5b63
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x4b5b6b
cmp esi, 0xfffffffe
je 0x4b5b63
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x4b5b6b
cmp esi, 0xffffffff
je 0x4b5b63
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x4b5b6b
add ebx, 4
jmp 0x4b5beb
mov ecx, dword [esp + 0x34]
test edi, edi
jle 0x4b8bef
add edi, edi
mov eax, ecx
sub eax, edi
cmp ebx, eax
ja 0x4b8bef
mov esi, dword [esp + 0x2c]
lea edx, [esp + 0x74]
add esi, esi
mov ecx, ebx
sub esi, 4
jb 0x4b5ba7
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x4b5bac
add ecx, 4
add edx, 4
sub esi, 4
jae 0x4b5b96
cmp esi, 0xfffffffc
je 0x4b5be9
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x4b8bef
cmp esi, 0xfffffffd
je 0x4b5be9
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x4b8bef
cmp esi, 0xfffffffe
je 0x4b5be9
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x4b8bef
cmp esi, 0xffffffff
je 0x4b5be9
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x4b8bef
add ebx, edi
mov esi, dword [esp + 0x24]
inc ebp
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0x34]
mov edx, dword [esp + 0x3c]
mov dword [esp + 0x18], ebx
cmp ebp, esi
jle 0x4b5b00
mov edi, dword [esp + 0x20]
cmp esi, edi
je 0x4b33a4
cmp dword [esp + 0x28], 0
jne 0x4b908c
mov ebp, ebx
mov dword [esp + 0x28], ebp
cmp esi, edi
jge 0x4b5d5c
mov eax, dword [esp + 0x174]
mov ecx, dword [esp + 0x3c]
mov eax, dword [eax + 0x7c]
mov ebp, eax
lea edi, [ecx + ecx]
mov dword [esp + 0x34], eax
mov dword [esp + 0x44], edi
sub ebp, edi
nop word [eax + eax]
cmp ebx, ebp
ja 0x4b5cb4
mov edx, dword [esp + 0x1c]
lea esi, [ecx + ecx]
mov ecx, ebx
sub esi, 4
jb 0x4b5c77
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x4b5c7c
add ecx, 4
add edx, 4
sub esi, 4
jae 0x4b5c66
cmp esi, 0xfffffffc
je 0x4b5ca9
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x4b5cb0
cmp esi, 0xfffffffd
je 0x4b5ca9
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x4b5cb0
cmp esi, 0xfffffffe
je 0x4b5ca9
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x4b5cb0
cmp esi, 0xffffffff
je 0x4b5ca9
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x4b5cb0
add ebx, edi
jmp 0x4b5d39
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x2c]
test ecx, ecx
jle 0x4b5e03
lea edi, [ecx + ecx]
sub eax, edi
cmp ebx, eax
ja 0x4b5e03
lea esi, [ecx + ecx]
mov ecx, ebx
lea edx, [esp + 0x74]
sub esi, 4
jb 0x4b5cf1
nop dword [eax + eax]
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x4b5cf6
add ecx, 4
add edx, 4
sub esi, 4
jae 0x4b5ce0
cmp esi, 0xfffffffc
je 0x4b5d33
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x4b5e03
cmp esi, 0xfffffffd
je 0x4b5d33
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x4b5e03
cmp esi, 0xfffffffe
je 0x4b5d33
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x4b5e03
cmp esi, 0xffffffff
je 0x4b5d33
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x4b5e03
add ebx, edi
mov edi, dword [esp + 0x44]
mov esi, dword [esp + 0x24]
mov eax, dword [esp + 0x34]
inc esi
mov ecx, dword [esp + 0x3c]
mov dword [esp + 0x18], ebx
mov dword [esp + 0x24], esi
cmp esi, dword [esp + 0x20]
jl 0x4b5c50
mov ebp, dword [esp + 0x28]
mov esi, dword [esp + 0x174]
cmp dword [esp + 0x30], 0
jne 0x4b33a4
mov eax, dword [esp + 0x17c]
mov ecx, ebx
mov edi, dword [esp + 0x14]
inc eax
push eax
push dword [esp + 0x17c]
mov edx, edi
push esi
push dword [esp + 0x17c]
push dword [esp + 0x17c]
call fcn.004b32c0
add esp, 0x14
test eax, eax
jne 0x4b8944
cmp ebx, ebp
je case.default.0x4b4c49
mov ax, word [ebx - 2]
add ebx, 0xfffffffe
mov ecx, 0xfc00
and ax, cx
mov ecx, 0xdc00
cmp ax, cx
jne 0x4b5dc9
add ebx, 0xfffffffe
mov eax, dword [esp + 0x17c]
mov edx, edi
inc eax
mov ecx, ebx
push eax
push dword [esp + 0x17c]
push esi
push dword [esp + 0x17c]
push dword [esp + 0x17c]
call fcn.004b32c0
add esp, 0x14
test eax, eax
je 0x4b5da5
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x158
ret
mov esi, dword [esp + 0x174]
mov eax, dword [esi + 0x8c]
test eax, eax
je 0x4b5e31
cmp ebx, dword [esi + 0x7c]
jb 0x4b5e31
cmp ebx, dword [esi + 0x88]
jbe 0x4b5e31
mov dword [esi + 0x64], 1
cmp eax, 1
jg 0x4ba6f0
mov ebp, dword [esp + 0x28]
jmp 0x4b5d63
cmp edx, 0x2e
jb 0x4b5f9d
mov edx, dword [esp + 0x174]
cmp esi, 0x7f
jbe 0x4b5e78
mov eax, esi
shr eax, 7
movzx ecx, byte [eax + 0x4d1b58]
mov eax, esi
and eax, 0x7f
shl ecx, 7
add ecx, eax
movzx eax, word [ecx*2 + 0x4c5178]
mov edi, dword [eax*8 + 0x4d0a7c]
add edi, esi
jmp 0x4b5e7f
mov eax, dword [edx + 0x38]
movzx edi, byte [eax + esi]
mov ecx, 1
cmp ebp, ecx
jl 0x4b5ebb
mov edx, dword [edx + 0x7c]
nop dword [eax + eax]
mov eax, dword [esp + 0x14]
mov dword [esp + 0x14], eax
cmp ebx, edx
jae 0x4b8f14
movzx eax, word [ebx]
cmp esi, eax
je 0x4b5eaf
cmp edi, eax
jne case.default.0x4b4c49
add ebx, 2
inc ecx
mov dword [esp + 0x18], ebx
cmp ecx, ebp
jle 0x4b5e90
mov eax, dword [esp + 0x20]
cmp ebp, eax
je 0x4b33a4
cmp dword [esp + 0x28], 0
jne 0x4b9269
mov edx, dword [esp + 0x24]
mov ebp, ebx
cmp edx, eax
jge 0x4b5f07
mov eax, dword [esp + 0x174]
mov ecx, dword [eax + 0x7c]
cmp ebx, ecx
jae 0x4b5f6f
movzx eax, word [ebx]
cmp esi, eax
je 0x4b5ef9
cmp edi, eax
jne 0x4b5f07
add ebx, 2
inc edx
mov dword [esp + 0x18], ebx
cmp edx, dword [esp + 0x20]
jl 0x4b5ee6
mov ecx, dword [esp + 0x174]
cmp dword [esp + 0x30], 0
jne 0x4b33a4
cmp ebx, ebp
jb case.default.0x4b4c49
mov eax, dword [esp + 0x17c]
mov edx, dword [esp + 0x14]
inc eax
push eax
push dword [esp + 0x17c]
push ecx
push dword [esp + 0x17c]
mov ecx, ebx
push dword [esp + 0x17c]
call fcn.004b32c0
add esp, 0x14
sub ebx, 2
test eax, eax
jne 0x4b8944
mov ecx, dword [esp + 0x174]
cmp ebx, ebp
jae 0x4b5f21
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x158
ret
mov ecx, dword [esp + 0x174]
mov eax, dword [ecx + 0x8c]
test eax, eax
je 0x4b5f0e
cmp ebx, dword [ecx + 0x88]
jbe 0x4b5f0e
mov dword [ecx + 0x64], 1
cmp eax, 1
jg 0x4ba6f0
jmp 0x4b5f0e
mov edi, dword [esp + 0x174]
mov ecx, 1
cmp ebp, ecx
jl 0x4b5fcf
mov edx, dword [edi + 0x7c]
cmp ebx, edx
jae 0x4b930d
movzx eax, word [ebx]
add ebx, 2
mov dword [esp + 0x18], ebx
cmp esi, eax
jne case.default.0x4b4c49
inc ecx
cmp ecx, ebp
jle 0x4b5fb0
mov edx, dword [esp + 0x20]
cmp ebp, edx
je 0x4b33a4
cmp dword [esp + 0x28], 0
jne 0x4b9333
mov edi, ebx
cmp ebp, edx
jge 0x4b6011
mov eax, dword [esp + 0x174]
mov ecx, dword [eax + 0x7c]
cmp ebx, ecx
jae 0x4b6077
movzx eax, word [ebx]
cmp esi, eax
jne 0x4b6011
add ebx, 2
inc ebp
mov dword [esp + 0x18], ebx
cmp ebp, edx
jl 0x4b5ff6
mov ebp, dword [esp + 0x174]
cmp dword [esp + 0x30], 0
jne 0x4b33ab
cmp ebx, edi
jb case.default.0x4b4c49
nop dword [eax + eax]
mov eax, dword [esp + 0x17c]
mov ecx, ebx
mov edx, dword [esp + 0x14]
inc eax
push eax
push dword [esp + 0x17c]
push ebp
push dword [esp + 0x17c]
push dword [esp + 0x17c]
call fcn.004b32c0
add esp, 0x14
sub ebx, 2
test eax, eax
jne 0x4b8944
cmp ebx, edi
jae 0x4b6030
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x158
ret
mov ebp, dword [esp + 0x174]
mov eax, dword [ebp + 0x8c]
test eax, eax
je 0x4b6018
cmp ebx, dword [ebp + 0x88]
jbe 0x4b6018
mov dword [ebp + 0x64], 1
cmp eax, 1
jg 0x4ba6f0
jmp 0x4b6018
cmp ebx, dword [ebp + 0x7c]
jae 0x4ba6c0
movzx edx, word [ebx]
lea ecx, [esi + 2]
mov eax, edx
add ebx, 2
and eax, 0xfc00
mov dword [esp + 0x18], ebx
cmp eax, 0xd800
jne 0x4b60e9
movzx eax, word [ebx]
and edx, 0x3ff
shl edx, 0xa
and eax, 0x3ff
add ebx, 2
or edx, eax
mov dword [esp + 0x18], ebx
add edx, 0x10000
movzx esi, word [ecx]
lea eax, [ecx + 2]
mov dword [esp + 0x14], eax
cmp edi, 0x20
jne 0x4b6146
cmp esi, 0x7f
jbe 0x4b612a
mov eax, esi
shr eax, 7
movzx ecx, byte [eax + 0x4d1b58]
mov eax, esi
and eax, 0x7f
shl ecx, 7
add ecx, eax
movzx eax, word [ecx*2 + 0x4c5178]
mov eax, dword [eax*8 + 0x4d0a7c]
add eax, esi
jmp 0x4b6131
mov eax, dword [ebp + 0x38]
movzx eax, byte [eax + esi]
cmp esi, edx
je case.default.0x4b4c49
cmp eax, edx
je case.default.0x4b4c49
jmp 0x4b33ab
mov dword [esp + 0x14], eax
cmp esi, edx
je case.default.0x4b4c49
jmp 0x4b33ab
movzx eax, word [esi + 2]
lea ecx, [esi + 4]
mov dword [esp + 0x20], eax
mov edi, eax
jmp 0x4b6227
movzx eax, word [esi + 2]
xor edi, edi
mov dword [esp + 0x20], eax
cmp ecx, 0x42
je 0x4b6181
mov dword [esp + 0x28], edi
cmp ecx, 0x4f
jne 0x4b6189
mov dword [esp + 0x28], 1
lea ecx, [esi + 4]
jmp 0x4b6227
mov dword [esp + 0x30], 1
lea ecx, [esi + 2]
xor edi, edi
jmp 0x4b621f
mov dword [esp + 0x30], 1
lea ecx, [esi + 2]
mov edi, 1
jmp 0x4b621f
mov dword [esp + 0x30], 1
lea ecx, [esi + 2]
xor edi, edi
mov dword [esp + 0x20], 1
jmp 0x4b6227
movzx eax, word [esi + 2]
lea ecx, [esi + 4]
mov dword [esp + 0x30], 1
xor edi, edi
mov dword [esp + 0x20], eax
jmp 0x4b6227
cmp edx, 0x48
mov ecx, edx
sbb eax, eax
and eax, 0xfffffff3
add eax, 0x48
sub ecx, eax
mov eax, ecx
mov dword [esp + 0x28], ecx
and dword [esp + 0x28], 1
lea ecx, [esi + 2]
movsx edi, byte [eax + 0x4c4d2c]
movsx eax, byte [eax + 0x4c4d24]
mov dword [esp + 0x20], eax
test eax, eax
jne 0x4b6227
mov dword [esp + 0x20], SysReAllocString
movzx ebp, word [ecx]
add ecx, 2
mov dword [esp + 0x2c], ebp
mov dword [esp + 0x14], ecx
cmp edx, 0x48
jb 0x4b63d0
cmp ebp, 0x7f
jbe 0x4b6279
mov eax, ebp
shr eax, 7
movzx ecx, byte [eax + 0x4d1b58]
mov eax, ebp
shl ecx, 7
and eax, 0x7f
add ecx, eax
movzx eax, word [ecx*2 + 0x4c5178]
mov ecx, dword [esp + 0x174]
mov ebp, dword [eax*8 + 0x4d0a7c]
add ebp, dword [esp + 0x2c]
jmp 0x4b6287
mov ecx, dword [esp + 0x174]
mov eax, dword [ecx + 0x38]
movzx ebp, byte [eax + ebp]
mov dword [esp + 0x34], ebp
cmp edi, 1
jl 0x4b62f7
mov esi, dword [ecx + 0x7c]
mov edx, 1
nop dword [eax]
cmp ebx, esi
jae 0x4b8f14
movzx ecx, word [ebx]
add ebx, 2
mov eax, ecx
mov dword [esp + 0x18], ebx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4b62e0
movzx eax, word [ebx]
and ecx, 0x3ff
shl ecx, 0xa
and eax, 0x3ff
or ecx, eax
add ecx, 0x10000
add ebx, 2
mov dword [esp + 0x18], ebx
cmp dword [esp + 0x2c], ecx
je case.default.0x4b4c49
cmp ebp, ecx
je case.default.0x4b4c49
inc edx
cmp edx, edi
jle 0x4b62a0
mov esi, dword [esp + 0x20]
cmp edi, esi
je 0x4b33a4
cmp dword [esp + 0x28], 0
jne 0x4b9463
mov ecx, dword [esp + 0x174]
mov ebp, ebx
cmp edi, esi
jge 0x4b6380
mov esi, dword [ecx + 0x7c]
cmp ebx, esi
jae 0x4b639b
movzx ecx, word [ebx]
mov edx, 1
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4b635f
movzx eax, word [ebx + 2]
and ecx, 0x3ff
and eax, 0x3ff
shl ecx, 0xa
or ecx, eax
mov edx, 2
add ecx, 0x10000
cmp dword [esp + 0x2c], ecx
je 0x4b6379
cmp dword [esp + 0x34], ecx
je 0x4b6379
inc edi
lea ebx, [ebx + edx*2]
mov dword [esp + 0x18], ebx
cmp edi, dword [esp + 0x20]
jl 0x4b6322
mov ecx, dword [esp + 0x174]
cmp dword [esp + 0x30], 0
mov esi, dword [esp + 0x14]
je 0x4b93ca
mov ebp, dword [esp + 0x174]
jmp 0x4b33af
mov ecx, dword [esp + 0x174]
mov eax, dword [ecx + 0x8c]
test eax, eax
je 0x4b6380
cmp ebx, dword [ecx + 0x88]
jbe 0x4b6380
mov dword [ecx + 0x64], 1
cmp eax, 1
jg 0x4ba6f0
jmp 0x4b6380
mov edx, 1
cmp edi, edx
jl 0x4b6438
mov ecx, dword [esp + 0x174]
mov esi, dword [ecx + 0x7c]
cmp ebx, esi
jae 0x4b8f14
movzx ecx, word [ebx]
add ebx, 2
mov eax, ecx
mov dword [esp + 0x18], ebx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4b6427
movzx eax, word [ebx]
and ecx, 0x3ff
shl ecx, 0xa
and eax, 0x3ff
or ecx, eax
add ecx, 0x10000
add ebx, 2
mov dword [esp + 0x18], ebx
cmp ebp, ecx
je case.default.0x4b4c49
inc edx
cmp edx, edi
jle 0x4b63e7
mov ecx, dword [esp + 0x14]
mov esi, dword [esp + 0x20]
cmp edi, esi
je 0x4b33a4
cmp dword [esp + 0x28], 0
jne 0x4b95ff
mov ecx, dword [esp + 0x174]
mov ebp, ebx
cmp edi, esi
jge 0x4b64bb
mov esi, dword [ecx + 0x7c]
cmp ebx, esi
jae 0x4b64d6
movzx ecx, word [ebx]
mov edx, 1
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4b64a0
movzx eax, word [ebx + 2]
and ecx, 0x3ff
and eax, 0x3ff
shl ecx, 0xa
or ecx, eax
mov edx, 2
add ecx, 0x10000
cmp dword [esp + 0x2c], ecx
je 0x4b64b4
inc edi
lea ebx, [ebx + edx*2]
mov dword [esp + 0x18], ebx
cmp edi, dword [esp + 0x20]
jl 0x4b6463
mov ecx, dword [esp + 0x174]
cmp dword [esp + 0x30], 0
mov esi, dword [esp + 0x14]
je 0x4b9565
mov ebp, dword [esp + 0x174]
jmp 0x4b33af
mov ecx, dword [esp + 0x174]
mov eax, dword [ecx + 0x8c]
test eax, eax
je 0x4b64bb
cmp ebx, dword [ecx + 0x88]
jbe 0x4b64bb
mov dword [ecx + 0x64], 1
cmp eax, 1
jg 0x4ba6f0
jmp 0x4b64bb
movzx eax, word [esi + 2]
mov edi, eax
mov dword [esp + 0x24], eax
mov dword [esp + 0x20], edi
lea eax, [esi + 4]
mov dword [esp + 0x28], 1
jmp 0x4b65db
movzx eax, word [esi + 2]
xor edx, edx
xor edi, edi
mov dword [esp + 0x24], eax
cmp ecx, 0x5c
mov dword [esp + 0x20], edi
lea eax, [esi + 4]
sete dl
mov dword [esp + 0x28], edx
jmp 0x4b65db
xor edi, edi
mov dword [esp + 0x30], 1
mov dword [esp + 0x20], edi
lea eax, [esi + 2]
jmp 0x4b65d3
mov edi, 1
mov dword [esp + 0x30], 1
mov dword [esp + 0x20], edi
lea eax, [esi + 2]
jmp 0x4b65d3
xor edi, edi
mov dword [esp + 0x30], 1
mov dword [esp + 0x20], edi
lea eax, [esi + 2]
mov dword [esp + 0x24], 1
jmp 0x4b65db
movzx eax, word [esi + 2]
xor edi, edi
mov dword [esp + 0x24], eax
lea eax, [esi + 4]
mov dword [esp + 0x30], 1
mov dword [esp + 0x20], edi
jmp 0x4b65db
movsx edi, byte [edx + 0x4c4cd7]
lea ecx, [edx - 1]
and ecx, 1
mov dword [esp + 0x20], edi
mov dword [esp + 0x28], ecx
lea eax, [esi + 2]
movsx ecx, byte [edx + 0x4c4ccf]
mov dword [esp + 0x24], ecx
test ecx, ecx
jne 0x4b65db
mov dword [esp + 0x24], SysReAllocString
movzx esi, word [eax]
lea edx, [eax + 2]
mov dword [esp + 0x1c], esi
mov dword [esp + 0x14], edx
cmp esi, 0x10
je 0x4b65fc
cmp esi, 0xf
je 0x4b65fc
or eax, 0xffffffff
mov dword [esp + 0x2c], eax
jmp 0x4b6622
movzx ecx, word [edx]
xor eax, eax
cmp esi, 0xf
mov dword [esp + 0x2c], ecx
sete al
mov dword [esp + 0x38], eax
lea eax, [edx + 2]
movzx edx, word [eax]
add eax, 2
mov dword [esp + 0x14], eax
mov eax, ecx
mov dword [esp + 0x40], edx
test edi, edi
jle 0x4b72d0
test eax, eax
js 0x4b6b88
cmp eax, 8
ja case.default.0x4b4fb1
jmp dword [eax*4 + 0x4baff4]
cmp dword [esp + 0x38], 0
jne case.default.0x4b4c49
mov esi, dword [ebp + 0x7c]
mov edx, 1
mov ecx, ebx
cmp ebx, esi
jae 0x4ba6c0
mov ax, word [ebx]
mov ebx, 0xfc00
and ax, bx
xor ebx, ebx
cmp ax, word [esp + 0x50]
sete bl
inc edx
lea ebx, [ebx*2 + 2]
add ebx, ecx
cmp edx, edi
jle 0x4b6655
mov dword [esp + 0x18], ebx
jmp 0x4b72c4
mov esi, dword [ebp + 0x7c]
mov edx, 1
cmp ebx, esi
jae 0x4ba6c0
movzx ecx, word [ebx]
add ebx, 2
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4b66cb
movzx eax, word [ebx]
and ecx, 0x3ff
and eax, 0x3ff
shl ecx, 0xa
or ecx, eax
add ebx, 2
add ecx, 0x10000
mov eax, ecx
and ecx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x4d1b58]
shl eax, 7
add eax, ecx
movzx eax, word [eax*2 + 0x4c5178]
mov al, byte [eax*8 + 0x4d0a79]
cmp al, 9
je 0x4b66fe
cmp al, 5
je 0x4b66fe
cmp al, 8
je 0x4b66fe
xor eax, eax
jmp 0x4b6703
mov eax, 1
cmp eax, dword [esp + 0x38]
je case.default.0x4b4c49
inc edx
cmp edx, edi
jle 0x4b6693
mov dword [esp + 0x18], ebx
jmp 0x4b72c4
mov esi, dword [ebp + 0x7c]
mov edx, 1
cmp ebx, esi
jae 0x4ba6c0
movzx ecx, word [ebx]
add ebx, 2
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4b675b
movzx eax, word [ebx]
and ecx, 0x3ff
and eax, 0x3ff
shl ecx, 0xa
or ecx, eax
add ebx, 2
add ecx, 0x10000
mov ebp, dword [esp + 0x40]
mov eax, ecx
shr eax, 7
and ecx, 0x7f
movzx eax, byte [eax + 0x4d1b58]
shl eax, 7
add eax, ecx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4c5178]
movzx eax, byte [eax*8 + 0x4d0a79]
cmp dword [eax*4 + 0x4d4138], ebp
mov ebp, dword [esp + 0x174]
sete cl
cmp ecx, dword [esp + 0x38]
je case.default.0x4b4c49
inc edx
cmp edx, edi
jle 0x4b6723
mov dword [esp + 0x18], ebx
jmp 0x4b72c4
mov esi, dword [ebp + 0x7c]
mov edx, 1
nop word [eax + eax]
cmp ebx, esi
jae 0x4ba6c0
movzx ecx, word [ebx]
add ebx, 2
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4b67f8
movzx eax, word [ebx]
and ecx, 0x3ff
and eax, 0x3ff
shl ecx, 0xa
or ecx, eax
add ebx, 2
add ecx, 0x10000
mov eax, ecx
mov ebp, dword [esp + 0x174]
shr eax, 7
and ecx, 0x7f
movzx eax, byte [eax + 0x4d1b58]
shl eax, 7
add eax, ecx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4c5178]
movzx eax, byte [eax*8 + 0x4d0a79]
cmp eax, dword [esp + 0x40]
sete cl
cmp ecx, dword [esp + 0x38]
je case.default.0x4b4c49
inc edx
cmp edx, edi
jle 0x4b67c0
mov dword [esp + 0x18], ebx
jmp 0x4b72c4
mov esi, dword [ebp + 0x7c]
mov edx, 1
nop dword [eax]
cmp ebx, esi
jae 0x4ba6c0
movzx ecx, word [ebx]
add ebx, 2
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4b6888
movzx eax, word [ebx]
and ecx, 0x3ff
and eax, 0x3ff
shl ecx, 0xa
or ecx, eax
add ebx, 2
add ecx, 0x10000
mov eax, ecx
mov ebp, dword [esp + 0x174]
shr eax, 7
and ecx, 0x7f
movzx eax, byte [eax + 0x4d1b58]
shl eax, 7
add eax, ecx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4c5178]
movzx eax, byte [eax*8 + 0x4d0a78]
cmp eax, dword [esp + 0x40]
sete cl
cmp ecx, dword [esp + 0x38]
je case.default.0x4b4c49
inc edx
cmp edx, edi
jle 0x4b6850
mov dword [esp + 0x18], ebx
jmp 0x4b72c4
mov esi, dword [ebp + 0x7c]
mov edx, 1
nop dword [eax]
cmp ebx, esi
jae 0x4ba6c0
movzx ecx, word [ebx]
add ebx, 2
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4b6918
movzx eax, word [ebx]
and ecx, 0x3ff
and eax, 0x3ff
shl ecx, 0xa
or ecx, eax
add ebx, 2
add ecx, 0x10000
mov eax, ecx
and ecx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x4d1b58]
shl eax, 7
add eax, ecx
movzx eax, word [eax*2 + 0x4c5178]
movzx eax, byte [eax*8 + 0x4d0a79]
mov eax, dword [eax*4 + 0x4d4138]
cmp eax, 1
je 0x4b6951
cmp eax, 3
je 0x4b6951
xor eax, eax
jmp 0x4b6956
mov eax, 1
cmp eax, dword [esp + 0x38]
je case.default.0x4b4c49
inc edx
cmp edx, edi
jle 0x4b68e0
mov dword [esp + 0x18], ebx
jmp 0x4b72c4
mov edi, dword [ebp + 0x7c]
mov esi, 1
mov ebp, dword [esp + 0x20]
nop
cmp ebx, edi
jae 0x4b8f14
movzx edx, word [ebx]
add ebx, 2
mov eax, edx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4b69b8
movzx eax, word [ebx]
and edx, 0x3ff
and eax, 0x3ff
shl edx, 0xa
or edx, eax
add ebx, 2
add edx, 0x10000
mov eax, edx
shr eax, 7
movzx ecx, byte [eax + 0x4d1b58]
mov eax, edx
and eax, 0x7f
shl ecx, 7
add ecx, eax
movzx eax, word [ecx*2 + 0x4c5178]
movzx eax, byte [eax*8 + 0x4d0a79]
cmp dword [eax*4 + 0x4d4138], 6
je 0x4b6a00
cmp edx, 9
je 0x4b6a00
cmp edx, 0xa
je 0x4b6a00
cmp edx, 0xc
je 0x4b6a00
cmp edx, 0xd
je 0x4b6a00
xor eax, eax
jmp 0x4b6a05
mov eax, 1
cmp eax, dword [esp + 0x38]
je case.default.0x4b4c49
inc esi
cmp esi, ebp
jle 0x4b6980
mov edi, dword [esp + 0x20]
mov dword [esp + 0x18], ebx
jmp 0x4b72c4
mov edi, dword [ebp + 0x7c]
mov esi, 1
mov ebp, dword [esp + 0x20]
cmp ebx, edi
jae 0x4b8f14
movzx edx, word [ebx]
add ebx, 2
mov eax, edx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4b6a69
movzx eax, word [ebx]
and edx, 0x3ff
shl edx, 0xa
and eax, 0x3ff
or edx, eax
add ebx, 2
add edx, 0x10000
mov eax, edx
shr eax, 7
movzx ecx, byte [eax + 0x4d1b58]
mov eax, edx
and eax, 0x7f
shl ecx, 7
add ecx, eax
movzx eax, word [ecx*2 + 0x4c5178]
movzx eax, byte [eax*8 + 0x4d0a79]
cmp dword [eax*4 + 0x4d4138], 6
je 0x4b6ab6
cmp edx, 9
je 0x4b6ab6
cmp edx, 0xa
je 0x4b6ab6
cmp edx, 0xb
je 0x4b6ab6
cmp edx, 0xc
je 0x4b6ab6
cmp edx, 0xd
je 0x4b6ab6
xor eax, eax
jmp 0x4b6abb
mov eax, 1
cmp eax, dword [esp + 0x38]
je case.default.0x4b4c49
inc esi
cmp esi, ebp
jle 0x4b6a31
mov edi, dword [esp + 0x20]
mov dword [esp + 0x18], ebx
jmp 0x4b72c4
mov edi, dword [ebp + 0x7c]
mov esi, 1
mov ebp, dword [esp + 0x20]
cmp ebx, edi
jae 0x4b8f14
movzx edx, word [ebx]
add ebx, 2
mov eax, edx
mov dword [esp + 0x18], ebx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4b6b27
movzx eax, word [ebx]
and edx, 0x3ff
and eax, 0x3ff
shl edx, 0xa
add ebx, 2
or edx, eax
mov dword [esp + 0x18], ebx
add edx, 0x10000
mov eax, edx
shr eax, 7
movzx ecx, byte [eax + 0x4d1b58]
mov eax, edx
and eax, 0x7f
shl ecx, 7
add ecx, eax
movzx eax, word [ecx*2 + 0x4c5178]
movzx eax, byte [eax*8 + 0x4d0a79]
mov eax, dword [eax*4 + 0x4d4138]
cmp eax, 1
je 0x4b6b67
cmp eax, 3
je 0x4b6b67
cmp edx, 0x5f
je 0x4b6b67
xor eax, eax
jmp 0x4b6b6c
mov eax, 1
cmp eax, dword [esp + 0x38]
je case.default.0x4b4c49
inc esi
cmp esi, ebp
jle 0x4b6ae7
mov edi, dword [esp + 0x20]
jmp 0x4b72c4
cmp esi, 0x16
jne 0x4b6ca3
lea ebp, [esi - 0x15]
nop dword [eax]
nop dword [eax + eax]
mov esi, dword [esp + 0x174]
cmp ebx, dword [esi + 0x7c]
jae 0x4b96cd
movzx ecx, word [ebx]
lea edx, [ebx + 2]
mov eax, ecx
mov ebx, edx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4b6be2
movzx eax, word [edx]
and ecx, 0x3ff
and eax, 0x3ff
shl ecx, 0xa
or ecx, eax
add ebx, 2
add ecx, 0x10000
mov eax, ecx
and ecx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x4d1b58]
shl eax, 7
add eax, ecx
movzx eax, word [eax*2 + 0x4c5178]
movzx eax, byte [eax*8 + 0x4d0a79]
cmp dword [eax*4 + 0x4d4138], 2
je case.default.0x4b4c49
mov esi, dword [esi + 0x7c]
cmp ebx, esi
jae 0x4b6c91
mov edi, ebx
movzx ecx, word [ebx]
mov edx, 1
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4b6c56
movzx eax, word [ebx + 2]
and ecx, 0x3ff
and eax, 0x3ff
shl ecx, 0xa
or ecx, eax
mov edx, 2
add ecx, 0x10000
mov eax, ecx
and ecx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x4d1b58]
shl eax, 7
add eax, ecx
movzx eax, word [eax*2 + 0x4c5178]
movzx eax, byte [eax*8 + 0x4d0a79]
cmp dword [eax*4 + 0x4d4138], 2
jne 0x4b6c8d
lea ebx, [edi + edx*2]
mov edi, ebx
cmp ebx, esi
jb 0x4b6c21
mov edi, dword [esp + 0x20]
inc ebp
cmp ebp, edi
jle 0x4b6ba0
mov dword [esp + 0x18], ebx
jmp 0x4b72c4
lea eax, [esi - 6]
cmp eax, 0xf
ja case.default.0x4b4fb1
jmp dword [eax*4 + 0x4bb018]
mov ecx, dword [ebp + 0x7c]
mov esi, 1
nop
cmp ebx, ecx
jae 0x4ba6c0
mov edx, dword [ebp + 0x18]
lea eax, [ebp + 0x1c]
test edx, edx
je 0x4b6cea
push 1
push eax
push ecx
mov ecx, ebx
call fcn.004bc600
add esp, 0xc
test eax, eax
jne case.default.0x4b4c49
jmp 0x4b6d15
mov edx, dword [eax]
lea eax, [edx + edx]
sub ecx, eax
cmp ebx, ecx
ja 0x4b6d15
mov ax, word [ebx]
cmp ax, word [ebp + 0x2c]
jne 0x4b6d15
cmp edx, 1
je case.default.0x4b4c49
mov ax, word [ebx + 2]
cmp ax, word [ebp + 0x2e]
je case.default.0x4b4c49
mov ecx, dword [ebp + 0x7c]
add ebx, 2
cmp ebx, ecx
jae 0x4b6d37
mov ax, word [ebx]
mov edx, 0xfc00
and ax, dx
mov edx, 0xdc00
cmp ax, dx
jne 0x4b6d37
add ebx, 2
inc esi
cmp esi, edi
jle 0x4b6cc0
mov dword [esp + 0x18], ebx
jmp 0x4b72c4
mov edx, dword [ebp + 0x7c]
mov ecx, 1
nop dword [eax]
cmp ebx, edx
jae 0x4ba6c0
add ebx, 2
cmp ebx, edx
jae 0x4b6d71
mov ax, word [ebx]
and ax, word [esp + 0x68]
cmp ax, word [esp + 0x48]
jne 0x4b6d71
add ebx, 2
inc ecx
cmp ecx, edi
jle 0x4b6d50
mov dword [esp + 0x18], ebx
jmp 0x4b72d0
mov eax, dword [ebp + 0x7c]
lea ecx, [edi + edi]
sub eax, ecx
cmp ebx, eax
ja case.default.0x4b4c49
add ebx, ecx
mov dword [esp + 0x18], ebx
jmp 0x4b72d0
mov edi, dword [ebp + 0x7c]
mov esi, 1
mov ebp, dword [esp + 0x20]
cmp ebx, edi
jae 0x4b8f14
movzx ecx, word [ebx]
lea edx, [ebx + 2]
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4b6dde
movzx eax, word [edx]
and ecx, 0x3ff
shl ecx, 0xa
and eax, 0x3ff
or ecx, eax
add ecx, 0x10000
add edx, 2
cmp ecx, 0x85
ja 0x4b6e23
je case.0x4b6dfc.11
add ecx, 0xfffffff6
cmp ecx, 3
ja case.default.0x4b4c49
jmp dword [ecx*4 + 0x4bb058]
mov ebx, edx
cmp edx, edi
jae 0x4b6e47
cmp word [edx], 0xa
jne 0x4b6e47
lea ebx, [edx + 2]
jmp 0x4b6e47
mov ebx, edx
jmp 0x4b6e47
sub ecx, 0x2028
je case.0x4b6dfc.11
sub ecx, 1
jne case.default.0x4b4c49
mov eax, dword [esp + 0x174]
mov ebx, edx
cmp dword [eax + 0x68], 0
jne case.default.0x4b4c49
inc esi
cmp esi, ebp
jle 0x4b6da6
mov edi, dword [esp + 0x20]
mov dword [esp + 0x18], ebx
jmp 0x4b72c4
mov esi, dword [ebp + 0x7c]
mov edx, 1
cmp ebx, esi
jae 0x4ba6c0
movzx ecx, word [ebx]
add ebx, 2
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4b6e9d
movzx eax, word [ebx]
and ecx, 0x3ff
shl ecx, 0xa
and eax, 0x3ff
or ecx, eax
add ecx, 0x10000
add ebx, 2
cmp ecx, 0x2000
ja 0x4b6ef7
je case.default.0x4b4c49
cmp ecx, 0xa0
ja 0x4b6edd
je case.default.0x4b4c49
cmp ecx, 9
je case.default.0x4b4c49
cmp ecx, 0x20
je case.default.0x4b4c49
inc edx
cmp edx, edi
jle 0x4b6e65
mov dword [esp + 0x18], ebx
jmp 0x4b72c4
cmp ecx, 0x1680
je case.default.0x4b4c49
cmp ecx, 0x180e
je case.default.0x4b4c49
jmp case.0x4b6f17.8203
cmp ecx, 0x3000
ja case.0x4b6f17.8203
je case.default.0x4b4c49
add ecx, 0xffffdfff
cmp ecx, 0x5e
ja case.0x4b6f17.8203
movzx eax, byte [ecx + 0x4bb070]
jmp dword [eax*4 + 0x4bb068]
mov esi, dword [ebp + 0x7c]
mov edx, 1
cmp ebx, esi
jae 0x4ba6c0
movzx ecx, word [ebx]
add ebx, 2
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4b6f5e
movzx eax, word [ebx]
and ecx, 0x3ff
shl ecx, 0xa
and eax, 0x3ff
or ecx, eax
add ecx, 0x10000
add ebx, 2
cmp ecx, 0x2000
ja 0x4b6fa8
je case.0x4b6fcc.8193
cmp ecx, 0xa0
ja 0x4b6f92
je case.0x4b6fcc.8193
cmp ecx, 9
je case.0x4b6fcc.8193
cmp ecx, 0x20
jne case.default.0x4b4c49
inc edx
cmp edx, edi
jle 0x4b6f26
mov dword [esp + 0x18], ebx
jmp 0x4b72c4
cmp ecx, 0x1680
je case.0x4b6fcc.8193
cmp ecx, 0x180e
jne case.default.0x4b4c49
jmp case.0x4b6fcc.8193
cmp ecx, 0x3000
ja case.default.0x4b4c49
je case.0x4b6fcc.8193
add ecx, 0xffffdfff
cmp ecx, 0x5e
ja case.default.0x4b4c49
movzx eax, byte [ecx + 0x4bb0d8]
jmp dword [eax*4 + 0x4bb0d0]
mov esi, dword [ebp + 0x7c]
mov edx, 1
nop dword [eax + eax]
cmp ebx, esi
jae 0x4ba6c0
movzx ecx, word [ebx]
add ebx, 2
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4b701c
movzx eax, word [ebx]
and ecx, 0x3ff
shl ecx, 0xa
and eax, 0x3ff
or ecx, eax
add ecx, 0x10000
add ebx, 2
cmp ecx, 0x85
ja 0x4b7039
je case.default.0x4b4c49
add ecx, 0xfffffff6
cmp ecx, 3
ja case.default.0x4b7032
jmp dword [ecx*4 + 0x4bb138]
sub ecx, 0x2028
je case.default.0x4b4c49
sub ecx, 1
je case.default.0x4b4c49
inc edx
cmp edx, edi
jle 0x4b6fe0
mov dword [esp + 0x18], ebx
jmp 0x4b72c4
mov esi, dword [ebp + 0x7c]
mov edx, 1
cmp ebx, esi
jae 0x4ba6c0
movzx ecx, word [ebx]
add ebx, 2
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4b70a0
movzx eax, word [ebx]
and ecx, 0x3ff
shl ecx, 0xa
and eax, 0x3ff
or ecx, eax
add ecx, 0x10000
add ebx, 2
cmp ecx, 0x85
ja 0x4b70c1
je case.0x4b70ba.10
add ecx, 0xfffffff6
cmp ecx, 3
ja case.default.0x4b4c49
jmp dword [ecx*4 + 0x4bb148]
sub ecx, 0x2028
je case.0x4b70ba.10
sub ecx, 1
jne case.default.0x4b4c49
inc edx
cmp edx, edi
jle 0x4b7064
mov dword [esp + 0x18], ebx
jmp 0x4b72c4
mov esi, dword [ebp + 0x7c]
mov edx, 1
cmp ebx, esi
jae 0x4ba6c0
movzx ecx, word [ebx]
add ebx, 2
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4b7124
movzx eax, word [ebx]
and ecx, 0x3ff
shl ecx, 0xa
and eax, 0x3ff
or ecx, eax
add ecx, 0x10000
add ebx, 2
cmp ecx, 0x80
jae 0x4b7139
mov eax, dword [ebp + 0x3c]
test byte [ecx + eax], 4
jne case.default.0x4b4c49
inc edx
cmp edx, edi
jle 0x4b70e8
mov dword [esp + 0x18], ebx
jmp 0x4b72c4
mov esi, dword [ebp + 0x7c]
mov edx, 1
nop
cmp ebx, esi
jae 0x4ba6c0
movzx eax, word [ebx]
mov ecx, 0x80
cmp ax, cx
jae case.default.0x4b4c49
mov ecx, eax
mov eax, dword [ebp + 0x3c]
test byte [ecx + eax], 4
je case.default.0x4b4c49
inc edx
add ebx, 2
cmp edx, edi
jle 0x4b7150
mov dword [esp + 0x18], ebx
jmp 0x4b72c4
mov esi, dword [ebp + 0x7c]
mov edx, 1
cmp ebx, esi
jae 0x4ba6c0
movzx eax, word [ebx]
mov ecx, 0x80
cmp ax, cx
jae 0x4b71b5
mov ecx, eax
mov eax, dword [ebp + 0x3c]
test byte [ecx + eax], 1
jne case.default.0x4b4c49
add ebx, 2
cmp ebx, esi
jae 0x4b71d8
mov ax, word [ebx]
mov ecx, 0xfc00
and ax, cx
mov ecx, 0xdc00
cmp ax, cx
jne 0x4b71d8
add ebx, 2
inc edx
cmp edx, edi
jle 0x4b7191
mov dword [esp + 0x18], ebx
jmp 0x4b72c4
mov esi, dword [ebp + 0x7c]
mov edx, 1
nop
cmp ebx, esi
jae 0x4ba6c0
movzx eax, word [ebx]
mov ecx, 0x80
cmp ax, cx
jae case.default.0x4b4c49
mov ecx, eax
mov eax, dword [ebp + 0x3c]
test byte [ecx + eax], 1
je case.default.0x4b4c49
inc edx
add ebx, 2
cmp edx, edi
jle 0x4b71f0
mov dword [esp + 0x18], ebx
jmp 0x4b72c4
mov esi, dword [ebp + 0x7c]
mov edx, 1
cmp ebx, esi
jae 0x4ba6c0
movzx eax, word [ebx]
mov ecx, 0x80
cmp ax, cx
jae 0x4b7255
mov ecx, eax
mov eax, dword [ebp + 0x3c]
test byte [ecx + eax], 0x10
jne case.default.0x4b4c49
add ebx, 2
cmp ebx, esi
jae 0x4b7278
mov ax, word [ebx]
mov ecx, 0xfc00
and ax, cx
mov ecx, 0xdc00
cmp ax, cx
jne 0x4b7278
add ebx, 2
inc edx
cmp edx, edi
jle 0x4b7231
mov dword [esp + 0x18], ebx
jmp 0x4b72c4
mov esi, dword [ebp + 0x7c]
mov edx, 1
nop
cmp ebx, esi
jae 0x4ba6c0
movzx eax, word [ebx]
mov ecx, 0x80
cmp ax, cx
jae case.default.0x4b4c49
mov ecx, eax
mov eax, dword [ebp + 0x3c]
test byte [ecx + eax], 0x10
je case.default.0x4b4c49
add ebx, 2
inc edx
mov dword [esp + 0x18], ebx
cmp edx, edi
jle 0x4b7290
mov esi, dword [esp + 0x1c]
nop dword [eax + eax]
mov edx, dword [esp + 0x24]
cmp edi, edx
je 0x4b33a4
cmp dword [esp + 0x28], 0
mov eax, dword [esp + 0x2c]
jne 0x4b97bd
mov ebp, ebx
mov dword [esp + 0x28], ebp
test eax, eax
js 0x4b79e2
cmp eax, 8
ja case.default.0x4b4fb1
jmp dword [eax*4 + 0x4bb158]
mov ecx, dword [esp + 0x174]
cmp edi, edx
jge 0x4b79c7
mov edx, dword [ecx + 0x7c]
mov esi, 0xd800
cmp ebx, edx
jae 0x4b735f
mov ax, word [ebx]
mov ecx, 0xfc00
and ax, cx
cmp dword [esp + 0x38], 0
movzx ecx, ax
jne 0x4b79c0
xor eax, eax
cmp cx, si
sete al
inc edi
lea ebx, [ebx + eax*2]
add ebx, 2
mov dword [esp + 0x18], ebx
cmp edi, dword [esp + 0x24]
jl 0x4b7320
jmp 0x4b79c0
mov ecx, dword [esp + 0x174]
mov eax, dword [ecx + 0x8c]
test eax, eax
je 0x4b79c7
cmp ebx, dword [ecx + 0x88]
jbe 0x4b79c7
mov dword [ecx + 0x64], 1
cmp eax, 1
jg 0x4ba6f0
jmp 0x4b79c7
cmp edi, edx
jge 0x4b79c0
mov eax, dword [esp + 0x174]
mov esi, dword [eax + 0x7c]
cmp ebx, esi
jae 0x4b735f
movzx ecx, word [ebx]
mov edx, 1
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4b73e4
movzx eax, word [ebx + 2]
and ecx, 0x3ff
and eax, 0x3ff
shl ecx, 0xa
or ecx, eax
mov edx, 2
add ecx, 0x10000
mov eax, ecx
and ecx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x4d1b58]
shl eax, 7
add eax, ecx
movzx eax, word [eax*2 + 0x4c5178]
mov al, byte [eax*8 + 0x4d0a79]
cmp al, 9
je 0x4b7422
cmp al, 5
je 0x4b7422
cmp al, 8
je 0x4b7422
xor eax, eax
jmp 0x4b7427
mov eax, 1
cmp eax, dword [esp + 0x38]
je 0x4b79c0
inc edi
lea ebx, [ebx + edx*2]
mov dword [esp + 0x18], ebx
cmp edi, dword [esp + 0x24]
jl 0x4b73a7
jmp 0x4b79c0
cmp edi, edx
jge 0x4b79c0
mov eax, dword [esp + 0x174]
mov esi, dword [eax + 0x7c]
nop word [eax + eax]
cmp ebx, esi
jae 0x4b735f
movzx ecx, word [ebx]
mov edx, 1
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4b74a1
movzx eax, word [ebx + 2]
and ecx, 0x3ff
and eax, 0x3ff
shl ecx, 0xa
or ecx, eax
mov edx, 2
add ecx, 0x10000
mov ebp, dword [esp + 0x40]
mov eax, ecx
shr eax, 7
and ecx, 0x7f
movzx eax, byte [eax + 0x4d1b58]
shl eax, 7
add eax, ecx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4c5178]
movzx eax, byte [eax*8 + 0x4d0a79]
cmp dword [eax*4 + 0x4d4138], ebp
mov ebp, dword [esp + 0x28]
sete cl
cmp ecx, dword [esp + 0x38]
je 0x4b79c0
inc edi
lea ebx, [ebx + edx*2]
mov dword [esp + 0x18], ebx
cmp edi, dword [esp + 0x24]
jl 0x4b7460
jmp 0x4b79c0
cmp edi, edx
jge 0x4b79c0
mov eax, dword [esp + 0x174]
mov esi, dword [eax + 0x7c]
nop dword [eax]
cmp ebx, esi
jae 0x4b735f
movzx ecx, word [ebx]
mov edx, 1
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4b7551
movzx eax, word [ebx + 2]
and ecx, 0x3ff
and eax, 0x3ff
shl ecx, 0xa
or ecx, eax
mov edx, 2
add ecx, 0x10000
mov eax, ecx
and ecx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x4d1b58]
shl eax, 7
add eax, ecx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4c5178]
movzx eax, byte [eax*8 + 0x4d0a79]
cmp eax, dword [esp + 0x40]
sete cl
cmp ecx, dword [esp + 0x38]
je 0x4b79c0
inc edi
lea ebx, [ebx + edx*2]
mov dword [esp + 0x18], ebx
cmp edi, dword [esp + 0x24]
jl 0x4b7510
jmp 0x4b79c0
cmp edi, edx
jge 0x4b79c0
mov eax, dword [esp + 0x174]
mov esi, dword [eax + 0x7c]
cmp ebx, esi
jae 0x4b735f
movzx ecx, word [ebx]
mov edx, 1
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4b75f2
movzx eax, word [ebx + 2]
and ecx, 0x3ff
and eax, 0x3ff
shl ecx, 0xa
or ecx, eax
mov edx, 2
add ecx, 0x10000
mov eax, ecx
and ecx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x4d1b58]
shl eax, 7
add eax, ecx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4c5178]
movzx eax, byte [eax*8 + 0x4d0a78]
cmp eax, dword [esp + 0x40]
sete cl
cmp ecx, dword [esp + 0x38]
je 0x4b79c0
inc edi
lea ebx, [ebx + edx*2]
mov dword [esp + 0x18], ebx
cmp edi, dword [esp + 0x24]
jl 0x4b75b1
jmp 0x4b79c0
cmp edi, edx
jge 0x4b79c0
mov eax, dword [esp + 0x174]
mov esi, dword [eax + 0x7c]
cmp ebx, esi
jae 0x4b735f
movzx ecx, word [ebx]
mov edx, 1
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4b7693
movzx eax, word [ebx + 2]
and ecx, 0x3ff
and eax, 0x3ff
shl ecx, 0xa
or ecx, eax
mov edx, 2
add ecx, 0x10000
mov eax, ecx
and ecx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x4d1b58]
shl eax, 7
add eax, ecx
movzx eax, word [eax*2 + 0x4c5178]
movzx eax, byte [eax*8 + 0x4d0a79]
mov eax, dword [eax*4 + 0x4d4138]
cmp eax, 1
je 0x4b76d7
cmp eax, 3
je 0x4b76d7
xor eax, eax
jmp 0x4b76dc
mov eax, 1
cmp eax, dword [esp + 0x38]
je 0x4b79c0
inc edi
lea ebx, [ebx + edx*2]
mov dword [esp + 0x18], ebx
cmp edi, dword [esp + 0x24]
jl 0x4b7652
jmp 0x4b79c0
cmp edi, edx
jge 0x4b79c0
mov eax, dword [esp + 0x174]
mov edi, dword [eax + 0x7c]
nop
mov esi, 1
cmp ebx, edi
jae 0x4b77de
movzx edx, word [ebx]
mov eax, edx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4b7751
movzx eax, word [ebx + 2]
and edx, 0x3ff
and eax, 0x3ff
shl edx, 0xa
or edx, eax
mov esi, 2
add edx, 0x10000
mov eax, edx
shr eax, 7
movzx ecx, byte [eax + 0x4d1b58]
mov eax, edx
and eax, 0x7f
shl ecx, 7
add ecx, eax
movzx eax, word [ecx*2 + 0x4c5178]
movzx eax, byte [eax*8 + 0x4d0a79]
cmp dword [eax*4 + 0x4d4138], 6
je 0x4b77b0
cmp edx, 9
je 0x4b77b0
cmp edx, 0xa
je 0x4b77b0
cmp edx, 0xc
je 0x4b77b0
cmp edx, 0xd
je 0x4b77b0
xor eax, eax
jmp 0x4b77b5
mov eax, 1
cmp eax, dword [esp + 0x38]
je 0x4b79c0
mov eax, dword [esp + 0x20]
lea ebx, [ebx + esi*2]
inc eax
mov dword [esp + 0x18], ebx
mov dword [esp + 0x20], eax
cmp eax, dword [esp + 0x24]
jl 0x4b7710
jmp 0x4b79c0
mov ecx, dword [esp + 0x174]
mov eax, dword [ecx + 0x8c]
test eax, eax
je 0x4b79c7
cmp ebx, dword [ecx + 0x88]
jbe 0x4b79c7
mov dword [ecx + 0x64], esi
cmp eax, 1
jg 0x4ba6f0
jmp 0x4b79c7
cmp edi, edx
jge 0x4b79c0
mov eax, dword [esp + 0x174]
mov edi, dword [eax + 0x7c]
mov esi, 1
cmp ebx, edi
jae 0x4b77de
movzx edx, word [ebx]
mov eax, edx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4b785f
movzx eax, word [ebx + 2]
and edx, 0x3ff
and eax, 0x3ff
shl edx, 0xa
or edx, eax
mov esi, 2
add edx, 0x10000
mov eax, edx
shr eax, 7
movzx ecx, byte [eax + 0x4d1b58]
mov eax, edx
and eax, 0x7f
shl ecx, 7
add ecx, eax
movzx eax, word [ecx*2 + 0x4c5178]
movzx eax, byte [eax*8 + 0x4d0a79]
cmp dword [eax*4 + 0x4d4138], 6
je 0x4b78c7
cmp edx, 9
je 0x4b78c7
cmp edx, 0xa
je 0x4b78c7
cmp edx, 0xb
je 0x4b78c7
cmp edx, 0xc
je 0x4b78c7
cmp edx, 0xd
je 0x4b78c7
xor eax, eax
jmp 0x4b78cc
mov eax, 1
cmp eax, dword [esp + 0x38]
je 0x4b79c0
mov eax, dword [esp + 0x20]
lea ebx, [ebx + esi*2]
inc eax
mov dword [esp + 0x18], ebx
mov dword [esp + 0x20], eax
cmp eax, dword [esp + 0x24]
jl 0x4b7822
jmp 0x4b79c0
cmp edi, edx
jge 0x4b79c0
mov eax, dword [esp + 0x174]
mov edi, dword [eax + 0x7c]
cmp ebx, edi
jae 0x4b735f
movzx edx, word [ebx]
mov esi, 1
mov eax, edx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4b7948
movzx eax, word [ebx + 2]
and edx, 0x3ff
and eax, 0x3ff
shl edx, 0xa
or edx, eax
mov esi, 2
add edx, 0x10000
mov eax, edx
shr eax, 7
movzx ecx, byte [eax + 0x4d1b58]
mov eax, edx
and eax, 0x7f
shl ecx, 7
add ecx, eax
movzx eax, word [ecx*2 + 0x4c5178]
movzx eax, byte [eax*8 + 0x4d0a79]
mov eax, dword [eax*4 + 0x4d4138]
cmp eax, 1
je 0x4b7997
cmp eax, 3
je 0x4b7997
cmp edx, 0x5f
je 0x4b7997
xor eax, eax
jmp 0x4b799c
mov eax, 1
cmp eax, dword [esp + 0x38]
je 0x4b79c0
mov eax, dword [esp + 0x20]
lea ebx, [ebx + esi*2]
inc eax
mov dword [esp + 0x18], ebx
mov dword [esp + 0x20], eax
cmp eax, dword [esp + 0x24]
jl 0x4b7907
mov ecx, dword [esp + 0x174]
cmp dword [esp + 0x30], 0
mov esi, dword [esp + 0x14]
je 0x4b96e0
mov ebp, dword [esp + 0x174]
jmp 0x4b33af
cmp esi, 0x16
jne 0x4b7c39
cmp edi, edx
mov edi, dword [esp + 0x174]
jge 0x4b7b55
mov ebp, dword [edi + 0x7c]
nop dword [eax]
cmp ebx, ebp
jae 0x4b7b27
movzx ecx, word [ebx]
mov edx, 1
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4b7a41
movzx eax, word [ebx + 2]
and ecx, 0x3ff
and eax, 0x3ff
shl ecx, 0xa
or ecx, eax
mov edx, 2
add ecx, 0x10000
mov eax, ecx
and ecx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x4d1b58]
shl eax, 7
add eax, ecx
movzx eax, word [eax*2 + 0x4c5178]
movzx eax, byte [eax*8 + 0x4d0a79]
cmp dword [eax*4 + 0x4d4138], 2
je 0x4b7b51
mov edi, dword [edi + 0x7c]
lea ebx, [ebx + edx*2]
mov dword [esp + 0x18], ebx
cmp ebx, edi
jae 0x4b7b08
mov esi, ebx
nop word [eax + eax]
movzx ecx, word [ebx]
mov edx, 1
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4b7ac9
movzx eax, word [ebx + 2]
and ecx, 0x3ff
and eax, 0x3ff
shl ecx, 0xa
or ecx, eax
mov edx, 2
add ecx, 0x10000
mov eax, ecx
and ecx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x4d1b58]
shl eax, 7
add eax, ecx
movzx eax, word [eax*2 + 0x4c5178]
movzx eax, byte [eax*8 + 0x4d0a79]
cmp dword [eax*4 + 0x4d4138], 2
jne 0x4b7b04
lea ebx, [esi + edx*2]
mov esi, ebx
cmp ebx, edi
jb 0x4b7a90
mov dword [esp + 0x18], ebx
mov eax, dword [esp + 0x20]
mov edi, dword [esp + 0x174]
inc eax
mov dword [esp + 0x20], eax
cmp eax, dword [esp + 0x24]
jl 0x4b7a00
jmp 0x4b7b51
mov eax, dword [edi + 0x8c]
test eax, eax
je 0x4b7b51
cmp ebx, dword [edi + 0x88]
jbe 0x4b7b51
mov dword [edi + 0x64], 1
cmp eax, 1
jg 0x4ba6f0
mov ebp, dword [esp + 0x28]
cmp dword [esp + 0x30], 0
jne 0x4b33a4
mov eax, dword [esp + 0x17c]
mov ecx, ebx
mov edx, dword [esp + 0x14]
inc eax
push eax
push dword [esp + 0x17c]
push edi
push dword [esp + 0x17c]
push dword [esp + 0x17c]
call fcn.004b32c0
add esp, 0x14
test eax, eax
jne 0x4b8944
mov eax, ebx
add ebx, 0xfffffffe
cmp eax, ebp
je case.default.0x4b4c49
mov ebp, 0xdc00
movzx eax, word [ebx]
mov edx, ebx
mov ecx, eax
and ecx, 0xfc00
movzx edi, cx
cmp cx, bp
jne 0x4b7bc7
movzx eax, word [edx - 2]
lea ebx, [edx - 2]
cmp di, bp
movzx ecx, ax
lea esi, [edx - 2]
mov eax, ecx
cmovne esi, edx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4b7bff
movzx eax, word [ebx + 2]
and ecx, 0x3ff
and eax, 0x3ff
shl ecx, 0xa
or ecx, eax
add ecx, 0x10000
mov eax, ecx
and ecx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x4d1b58]
shl eax, 7
add eax, ecx
movzx eax, word [eax*2 + 0x4c5178]
movzx eax, byte [eax*8 + 0x4d0a79]
cmp dword [eax*4 + 0x4d4138], 2
jne 0x4b9773
lea ebx, [esi - 2]
jmp 0x4b7ba7
lea eax, [esi - 6]
cmp eax, 0xf
ja case.default.0x4b4fb1
jmp dword [eax*4 + 0x4bb17c]
cmp edx, 0x7fffffff
jge 0x4b7d51
cmp edi, edx
jge 0x4b80d4
mov eax, dword [esp + 0x174]
mov ecx, dword [eax + 0x7c]
nop word [eax + eax]
cmp ebx, ecx
jae 0x4b7d2b
mov edx, dword [eax + 0x18]
add eax, 0x1c
test edx, edx
je 0x4b7ca1
push 1
push eax
push ecx
mov ecx, ebx
call fcn.004bc600
add esp, 0xc
test eax, eax
jne 0x4b80d4
jmp 0x4b7cdb
mov edx, dword [eax]
lea eax, [edx + edx]
sub ecx, eax
cmp ebx, ecx
ja 0x4b7cdb
mov ecx, dword [esp + 0x174]
mov ax, word [ebx]
cmp ax, word [ecx + 0x2c]
jne 0x4b7cdb
cmp edx, 1
je 0x4b80d4
mov ax, word [ebx + 2]
cmp ax, word [ecx + 0x2e]
je 0x4b80d4
mov eax, dword [esp + 0x174]
add ebx, 2
mov dword [esp + 0x18], ebx
mov ecx, dword [eax + 0x7c]
cmp ebx, ecx
jae 0x4b7d1b
mov ax, word [ebx]
mov edx, 0xfc00
and ax, dx
mov edx, 0xdc00
cmp ax, dx
mov eax, dword [esp + 0x174]
jne 0x4b7d1b
add ebx, 2
mov dword [esp + 0x18], ebx
inc edi
cmp edi, dword [esp + 0x24]
jl 0x4b7c70
jmp 0x4b80d4
mov eax, dword [eax + 0x8c]
test eax, eax
je 0x4b80d4
mov ecx, dword [esp + 0x174]
cmp ebx, dword [ecx + 0x88]
jbe 0x4b80d4
jmp 0x4b7ea4
mov eax, dword [esp + 0x174]
mov ecx, dword [eax + 0x7c]
nop dword [eax + eax]
cmp ebx, ecx
jae 0x4b7d2b
mov edx, dword [eax + 0x18]
add eax, 0x1c
test edx, edx
je 0x4b7d8d
push 1
push eax
push ecx
mov ecx, ebx
call fcn.004bc600
add esp, 0xc
test eax, eax
jne 0x4b80d4
jmp 0x4b7dc7
mov edx, dword [eax]
lea eax, [edx + edx]
sub ecx, eax
cmp ebx, ecx
ja 0x4b7dc7
mov ecx, dword [esp + 0x174]
mov ax, word [ebx]
cmp ax, word [ecx + 0x2c]
jne 0x4b7dc7
cmp edx, 1
je 0x4b80d4
mov ax, word [ebx + 2]
cmp ax, word [ecx + 0x2e]
je 0x4b80d4
mov eax, dword [esp + 0x174]
add ebx, 2
mov dword [esp + 0x18], ebx
mov ecx, dword [eax + 0x7c]
cmp ebx, ecx
jae 0x4b7e07
mov ax, word [ebx]
mov edx, 0xfc00
and ax, dx
mov edx, 0xdc00
cmp ax, dx
mov eax, dword [esp + 0x174]
jne 0x4b7e07
add ebx, 2
mov dword [esp + 0x18], ebx
inc edi
cmp edi, dword [esp + 0x24]
jl 0x4b7d60
jmp 0x4b80d4
cmp edx, 0x7fffffff
jge 0x4b7e7c
cmp edi, edx
jge 0x4b80d4
mov eax, dword [esp + 0x174]
mov ecx, dword [eax + 0x7c]
cmp ebx, ecx
jae 0x4b7e70
add ebx, 2
mov dword [esp + 0x18], ebx
cmp ebx, ecx
jae 0x4b7e66
mov ax, word [ebx]
and ax, word [esp + 0x68]
cmp ax, word [esp + 0x48]
jne 0x4b7e66
add ebx, 2
mov dword [esp + 0x18], ebx
inc edi
cmp edi, edx
jl 0x4b7e35
jmp 0x4b80d4
mov ecx, dword [esp + 0x174]
jmp 0x4b7e8a
mov ecx, dword [esp + 0x174]
mov ebx, dword [ecx + 0x7c]
mov dword [esp + 0x18], ebx
mov eax, dword [ecx + 0x8c]
test eax, eax
je 0x4b80db
cmp ebx, dword [ecx + 0x88]
jbe 0x4b80db
mov dword [ecx + 0x64], 1
cmp eax, 1
jg 0x4ba6f0
jmp 0x4b80db
sub edx, edi
mov edi, dword [esp + 0x174]
mov ecx, dword [edi + 0x7c]
mov eax, ecx
sub eax, ebx
sar eax, 1
cmp edx, eax
jbe 0x4b7ef1
mov eax, dword [edi + 0x8c]
mov ebx, ecx
mov dword [esp + 0x18], ebx
test eax, eax
je 0x4b7ef8
cmp ecx, dword [edi + 0x88]
mov ecx, edi
jmp 0x4b7e9e
lea ebx, [ebx + edx*2]
mov dword [esp + 0x18], ebx
mov ecx, edi
jmp 0x4b80db
cmp edi, edx
jge 0x4b80d4
mov eax, dword [esp + 0x174]
mov edx, dword [eax + 0x7c]
cmp ebx, edx
jae 0x4b7feb
movzx ecx, word [ebx]
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4b7f52
movzx eax, word [ebx + 2]
and ecx, 0x3ff
and eax, 0x3ff
shl ecx, 0xa
or ecx, eax
mov eax, 4
add ecx, 0x10000
jmp 0x4b7f57
mov eax, 2
cmp ecx, 0xd
jne 0x4b7f81
add ebx, 2
mov dword [esp + 0x18], ebx
cmp ebx, edx
jae 0x4b80d4
cmp word [ebx], 0xa
jne 0x4b7fdb
add ebx, 2
jmp 0x4b7fd7
cmp ecx, 0xa
je 0x4b7fd5
mov ebp, dword [esp + 0x174]
cmp dword [ebp + 0x68], 0
mov ebp, dword [esp + 0x28]
jne 0x4b80d4
cmp ecx, 0xb
je 0x4b7fd5
cmp ecx, 0xc
je 0x4b7fd5
cmp ecx, 0x85
je 0x4b7fd5
cmp ecx, 0x2028
je 0x4b7fd5
cmp ecx, 0x2029
jne 0x4b80d4
add ebx, eax
mov dword [esp + 0x18], ebx
inc edi
cmp edi, dword [esp + 0x24]
jl 0x4b7f11
jmp 0x4b80d4
mov ecx, dword [esp + 0x174]
mov eax, dword [ecx + 0x8c]
test eax, eax
je 0x4b80db
cmp ebx, dword [ecx + 0x88]
jbe 0x4b80db
mov dword [ecx + 0x64], 1
cmp eax, 1
jg 0x4ba6f0
jmp 0x4b80db
cmp edi, edx
jge 0x4b80d4
mov eax, dword [esp + 0x174]
mov esi, dword [eax + 0x7c]
mov edx, 1
cmp ebx, esi
jae 0x4b8203
movzx ecx, word [ebx]
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4b8074
movzx eax, word [ebx + 2]
and ecx, 0x3ff
and eax, 0x3ff
shl ecx, 0xa
or ecx, eax
mov edx, 2
add ecx, 0x10000
cmp ecx, 0x2000
ja 0x4b81ca
je case.0x4b81f2.8193
cmp ecx, 0xa0
ja 0x4b81b3
je case.0x4b81f2.8193
cmp ecx, 9
je case.0x4b81f2.8193
cmp ecx, 0x20
je case.0x4b81f2.8193
xor ecx, ecx
xor eax, eax
cmp dword [esp + 0x1c], 0x12
sete al
cmp ecx, eax
je 0x4b80d0
inc edi
lea ebx, [ebx + edx*2]
mov dword [esp + 0x18], ebx
cmp edi, dword [esp + 0x24]
jl 0x4b8033
mov esi, dword [esp + 0x1c]
mov ecx, dword [esp + 0x174]
cmp dword [esp + 0x30], 0
jne 0x4b33a4
mov eax, dword [esp + 0x17c]
mov edi, dword [esp + 0x14]
inc eax
push eax
push dword [esp + 0x17c]
mov edx, edi
push ecx
push dword [esp + 0x17c]
mov ecx, ebx
push dword [esp + 0x17c]
call fcn.004b32c0
add esp, 0x14
test eax, eax
jne 0x4b8944
nop dword [eax]
lea ecx, [ebx - 2]
cmp ebx, ebp
je case.default.0x4b4c49
mov ax, word [ecx]
mov edx, 0xfc00
and ax, dx
mov edx, 0xdc00
cmp ax, dx
jne 0x4b8147
add ecx, 0xfffffffe
mov ebx, ecx
cmp esi, 0x11
jne 0x4b816f
cmp ecx, ebp
jbe 0x4b816f
cmp word [ecx], 0xa
jne 0x4b816f
cmp word [ecx - 2], 0xd
lea eax, [ecx - 2]
cmove ebx, eax
mov eax, dword [esp + 0x17c]
mov edx, edi
inc eax
mov ecx, ebx
push eax
push dword [esp + 0x17c]
push dword [esp + 0x17c]
push dword [esp + 0x17c]
push dword [esp + 0x17c]
call fcn.004b32c0
add esp, 0x14
test eax, eax
je 0x4b8120
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x158
ret
cmp ecx, 0x1680
je case.0x4b81f2.8193
cmp ecx, 0x180e
jmp 0x4b80a4
cmp ecx, 0x3000
ja case.0x4b81f2.8203
je case.0x4b81f2.8193
add ecx, 0xffffdfff
cmp ecx, 0x5e
ja case.0x4b81f2.8203
movzx eax, byte [ecx + 0x4bb1c4]
jmp dword [eax*4 + 0x4bb1bc]
mov ecx, 1
jmp 0x4b80ac
mov ecx, dword [esp + 0x174]
mov eax, dword [ecx + 0x8c]
test eax, eax
je 0x4b8230
cmp ebx, dword [ecx + 0x88]
jbe 0x4b8230
mov dword [ecx + 0x64], edx
cmp eax, 1
jg 0x4ba6f0
mov esi, dword [esp + 0x1c]
jmp 0x4b80db
cmp edi, edx
jge 0x4b80d4
mov eax, dword [esp + 0x174]
mov esi, dword [eax + 0x7c]
nop dword [eax + eax]
cmp ebx, esi
jae 0x4b8300
movzx ecx, word [ebx]
mov edx, 1
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4b8291
movzx eax, word [ebx + 2]
and ecx, 0x3ff
and eax, 0x3ff
shl ecx, 0xa
or ecx, eax
mov edx, 2
add ecx, 0x10000
cmp ecx, 0x85
ja 0x4b82b6
je case.0x4b82af.10
add ecx, 0xfffffff6
cmp ecx, 3
ja case.default.0x4b82af
jmp dword [ecx*4 + 0x4bb224]
sub ecx, 0x2028
je case.0x4b82af.10
sub ecx, 1
je case.0x4b82af.10
xor ecx, ecx
jmp 0x4b82d7
mov ecx, 1
xor eax, eax
cmp dword [esp + 0x1c], 0x14
sete al
cmp ecx, eax
je 0x4b80d0
inc edi
lea ebx, [ebx + edx*2]
mov dword [esp + 0x18], ebx
cmp edi, dword [esp + 0x24]
jl 0x4b8250
jmp 0x4b80d0
mov ecx, dword [esp + 0x174]
mov eax, dword [ecx + 0x8c]
test eax, eax
je 0x4b8230
cmp ebx, dword [ecx + 0x88]
jbe 0x4b8230
mov dword [ecx + 0x64], 1
cmp eax, 1
jg 0x4ba6f0
mov esi, dword [esp + 0x1c]
jmp 0x4b80db
cmp edi, edx
jge 0x4b80d4
mov eax, dword [esp + 0x174]
mov esi, dword [eax + 0x7c]
nop dword [eax]
cmp ebx, esi
jae 0x4b8300
movzx ecx, word [ebx]
mov edx, 1
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4b838d
movzx eax, word [ebx + 2]
and ecx, 0x3ff
and eax, 0x3ff
shl ecx, 0xa
or ecx, eax
mov edx, 2
add ecx, 0x10000
cmp ecx, 0x100
jae 0x4b83ad
mov eax, dword [esp + 0x174]
mov eax, dword [eax + 0x3c]
test byte [ecx + eax], 4
jne 0x4b80d0
inc edi
lea ebx, [ebx + edx*2]
mov dword [esp + 0x18], ebx
cmp edi, dword [esp + 0x24]
jl 0x4b8350
jmp 0x4b80d0
cmp edi, edx
jge 0x4b80d4
mov eax, dword [esp + 0x174]
mov esi, dword [eax + 0x7c]
cmp ebx, esi
jae 0x4b8300
movzx ecx, word [ebx]
mov edx, 1
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4b8413
movzx eax, word [ebx + 2]
and ecx, 0x3ff
and eax, 0x3ff
shl ecx, 0xa
or ecx, eax
mov edx, 2
add ecx, 0x10000
cmp ecx, 0x100
jae 0x4b80d0
mov eax, dword [esp + 0x174]
mov eax, dword [eax + 0x3c]
test byte [ecx + eax], 4
je 0x4b80d0
inc edi
lea ebx, [ebx + edx*2]
mov dword [esp + 0x18], ebx
cmp edi, dword [esp + 0x24]
jl 0x4b83d2
jmp 0x4b80d0
cmp edi, edx
jge 0x4b80d4
mov eax, dword [esp + 0x174]
mov esi, dword [eax + 0x7c]
cmp ebx, esi
jae 0x4b8300
movzx ecx, word [ebx]
mov edx, 1
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4b8499
movzx eax, word [ebx + 2]
and ecx, 0x3ff
and eax, 0x3ff
shl ecx, 0xa
or ecx, eax
mov edx, 2
add ecx, 0x10000
cmp ecx, 0x100
jae 0x4b84b9
mov eax, dword [esp + 0x174]
mov eax, dword [eax + 0x3c]
test byte [ecx + eax], 1
jne 0x4b80d0
inc edi
lea ebx, [ebx + edx*2]
mov dword [esp + 0x18], ebx
cmp edi, dword [esp + 0x24]
jl 0x4b8458
jmp 0x4b80d0
cmp edi, edx
jge 0x4b80d4
mov eax, dword [esp + 0x174]
mov esi, dword [eax + 0x7c]
nop
cmp ebx, esi
jae 0x4b8300
movzx ecx, word [ebx]
mov edx, 1
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4b8521
movzx eax, word [ebx + 2]
and ecx, 0x3ff
and eax, 0x3ff
shl ecx, 0xa
or ecx, eax
mov edx, 2
add ecx, 0x10000
cmp ecx, 0x100
jae 0x4b80d0
mov eax, dword [esp + 0x174]
mov eax, dword [eax + 0x3c]
test byte [ecx + eax], 1
je 0x4b80d0
inc edi
lea ebx, [ebx + edx*2]
mov dword [esp + 0x18], ebx
cmp edi, dword [esp + 0x24]
jl 0x4b84e0
jmp 0x4b80d0
cmp edi, edx
jge 0x4b80d4
mov eax, dword [esp + 0x174]
mov esi, dword [eax + 0x7c]
cmp ebx, esi
jae 0x4b8300
movzx ecx, word [ebx]
mov edx, 1
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4b85a7
movzx eax, word [ebx + 2]
and ecx, 0x3ff
and eax, 0x3ff
shl ecx, 0xa
or ecx, eax
mov edx, 2
add ecx, 0x10000
cmp ecx, 0x100
jae 0x4b85c7
mov eax, dword [esp + 0x174]
mov eax, dword [eax + 0x3c]
test byte [ecx + eax], 0x10
jne 0x4b80d0
inc edi
lea ebx, [ebx + edx*2]
mov dword [esp + 0x18], ebx
cmp edi, dword [esp + 0x24]
jl 0x4b8566
jmp 0x4b80d0
cmp edi, edx
jge 0x4b80d4
mov eax, dword [esp + 0x174]
mov esi, dword [eax + 0x7c]
nop dword [eax]
cmp ebx, esi
jae 0x4b8664
movzx ecx, word [ebx]
mov edx, 1
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4b8631
movzx eax, word [ebx + 2]
and ecx, 0x3ff
and eax, 0x3ff
shl ecx, 0xa
or ecx, eax
mov edx, 2
add ecx, 0x10000
cmp ecx, 0x100
jae 0x4b80d0
mov eax, dword [esp + 0x174]
mov eax, dword [eax + 0x3c]
test byte [ecx + eax], 0x10
je 0x4b80d0
inc edi
lea ebx, [ebx + edx*2]
mov dword [esp + 0x18], ebx
cmp edi, dword [esp + 0x24]
jl 0x4b85f0
jmp 0x4b80d0
mov ecx, dword [esp + 0x174]
mov eax, dword [ecx + 0x8c]
test eax, eax
je 0x4b8230
cmp ebx, dword [ecx + 0x88]
jbe 0x4b8230
mov dword [ecx + 0x64], 1
cmp eax, 1
jle 0x4b8230
mov eax, 0xfffffff4
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x158
ret
cmp ecx, 0x74
mov ecx, ebx
jne 0x4b86f0
mov eax, dword [esp + 0x17c]
inc eax
push eax
push dword [esp + 0x17c]
push edx
push dword [esp + 0x17c]
lea edx, [esi + 4]
push dword [esp + 0x17c]
call fcn.004b32c0
add esp, 0x14
test eax, eax
jne 0x4b8944
mov esi, ebp
mov ebp, dword [esp + 0x174]
jmp 0x4b892b
mov dword [edx + 0x9c], 2
mov eax, dword [esp + 0x17c]
inc eax
push eax
push dword [esp + 0x17c]
push edx
push dword [esp + 0x17c]
mov edx, ebp
push dword [esp + 0x17c]
call fcn.004b32c0
add esp, 0x14
test eax, eax
jne 0x4b8944
mov ebp, dword [esp + 0x174]
add esi, 4
jmp 0x4b892b
mov eax, dword [ebp + 0x90]
mov edx, dword [esp + 0x170]
cmp eax, edx
cmovg edx, eax
movzx eax, word [esi + 6]
add eax, 2
mov dword [esp + 0x170], edx
lea eax, [esi + eax*2]
mov ecx, eax
cmp word [ecx], 0x71
jne 0x4b8792
nop dword [eax]
movzx eax, word [ecx + 2]
lea eax, [ecx + eax*2]
mov ecx, eax
cmp word [ecx], 0x71
je 0x4b8770
jmp 0x4b8792
mov ebp, dword [esp + 0x174]
mov edx, dword [esp + 0x170]
cmp dword [esp + 0x20], 0x86
lea esi, [eax + 4]
mov dword [esp + 0x14], esi
jne 0x4b892f
mov dword [ebp + 0x9c], 2
mov ecx, ebx
mov eax, dword [esp + 0x17c]
inc eax
push eax
push dword [esp + 0x17c]
push ebp
push edx
push dword [esp + 0x17c]
mov edx, esi
call fcn.004b32c0
add esp, 0x14
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x158
ret
cmp ecx, 0x75
je 0x4b8b59
cmp ecx, 0x74
jne 0x4b884a
mov eax, dword [esp + 0x17c]
mov ecx, ebx
inc eax
push eax
push dword [esp + 0x17c]
push edi
push edx
push dword [esp + 0x17c]
lea edx, [esi + 4]
call fcn.004b32c0
add esp, 0x14
test eax, eax
jne 0x4b8944
movzx eax, word [ebp]
cmp eax, 0x7b
je 0x4b8b17
mov ecx, 0x82
cmp ax, cx
jae 0x4b8ad7
mov esi, ebp
mov ebp, dword [esp + 0x174]
jmp 0x4b892b
mov eax, 0x82
cmp word [ebp], ax
jb 0x4b8863
mov dword [edi + 0x9c], 2
mov eax, dword [esp + 0x17c]
mov ecx, ebx
inc eax
push eax
push dword [esp + 0x17c]
push edi
push edx
push dword [esp + 0x17c]
mov edx, ebp
call fcn.004b32c0
add esp, 0x14
cmp eax, 0xfffffc1c
jne 0x4b889b
cmp dword [edi + 0xb8], ebp
jmp 0x4b889d
test eax, eax
jne 0x4b8944
add esi, 4
cmp word [ebp], 0x7b
mov dword [esp + 0x14], esi
je 0x4b8b55
mov ebp, dword [esp + 0x174]
jmp 0x4b892f
movzx edx, word [esi + 4]
mov esi, dword [esp + 0x174]
mov dword [esp + 0x2c], edx
lea ebp, [edx + edx]
cmp ebp, dword [esi + 0x14]
jl 0x4ba700
mov edx, dword [esp + 0x20]
mov esi, dword [esp + 0x14]
mov ebp, dword [esp + 0x174]
nop dword [eax + eax]
cmp edx, 0x82
jae 0x4b894f
cmp edx, 0x7b
je 0x4b894f
cmp dword [ebp + 0x6c], 0
jne 0x4b8959
movzx eax, word [esi + 2]
cmp word [esi + eax*2], 0x71
je 0x4b8959
movzx eax, word [esi]
movzx eax, byte [eax + 0x4d3d58]
lea esi, [esi + eax*2]
mov dword [esp + 0x14], esi
mov eax, dword [ebp]
cmp eax, dword [ebp + 4]
jb 0x4b3361
inc eax
mov dword [ebp], eax
mov eax, 0xfffffff8
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x158
ret
mov dword [ebp + 0x9c], 2
mov eax, dword [esp + 0x17c]
mov ecx, ebx
mov edi, dword [esp + 0x14]
inc eax
mov esi, dword [ebp + 0xb0]
push eax
push dword [esp + 0x17c]
movzx eax, word [edi]
push ebp
push dword [esp + 0x17c]
movzx eax, byte [eax + 0x4d3d58]
push dword [esp + 0x17c]
lea edx, [edi + eax*2]
call fcn.004b32c0
mov edx, eax
add esp, 0x14
cmp edx, 0xfffffc20
jne 0x4b89d3
movzx ecx, word [edi + 2]
lea eax, [edi + ecx*2]
cmp dword [ebp + 0x80], eax
jae 0x4ba8c2
cmp word [edi], 0x71
je 0x4b89db
cmp word [eax], 0x71
jne 0x4ba8c2
jmp 0x4b89db
test edx, edx
jne 0x4ba877
movzx eax, word [edi + 2]
mov dword [ebp + 0xb0], esi
lea edi, [edi + eax*2]
mov esi, edi
mov dword [esp + 0x14], edi
cmp word [esi], 0x71
jne case.default.0x4b4c49
mov edx, dword [esp + 0x20]
jmp 0x4b88f0
mov eax, dword [esp + 0x17c]
inc eax
push eax
push dword [esp + 0x17c]
movzx eax, word [esi + 2]
add ecx, eax
push ebp
push dword [esp + 0x17c]
push dword [esp + 0x17c]
lea edx, [esi + ecx*2]
mov ecx, ebx
call fcn.004b32c0
add esp, 0x14
test eax, eax
je 0x4b8a51
cmp eax, 0xfffffc1d
je 0x4b8a51
cmp eax, 0xfffffc20
jne 0x4b8944
lea eax, [esi + 4]
mov dword [ebp + 0x80], eax
mov eax, 0xfffffc1f
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x158
ret
mov eax, 0xffffffe6
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x158
ret
mov eax, dword [esp + 0x5c]
lea ecx, [esp + 0xf0]
cmp eax, ecx
je 0x4b8a97
push eax
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
add esp, 4
mov eax, esi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x158
ret
mov eax, 0xfffffffa
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x158
ret
mov eax, dword [esp + 0x16c]
mov dword [edi + 0x84], ebx
mov dword [edi + 0x80], eax
mov eax, 1
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x158
ret
mov dword [edi + 0x9c], 2
mov edx, ebp
mov eax, dword [esp + 0x17c]
mov ecx, ebx
inc eax
push eax
push dword [esp + 0x17c]
push edi
push dword [esp + 0x17c]
push dword [esp + 0x17c]
call fcn.004b32c0
add esp, 0x14
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x158
ret
mov edx, ebp
mov eax, dword [esp + 0x17c]
mov ecx, ebx
inc eax
push eax
push dword [esp + 0x17c]
push edi
push dword [esp + 0x17c]
push dword [esp + 0x17c]
call fcn.004b32c0
add esp, 0x14
test eax, eax
je 0x4b8ba2
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x158
ret
mov edx, esi
jmp 0x4b8b19
mov dword [edi + 0x84], ebx
mov eax, 0xfffffc1b
mov dword [edi + 0x90], edx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x158
ret
mov eax, dword [esp + 0x17c]
mov ecx, ebx
inc eax
push eax
push dword [esp + 0x17c]
push edi
push edx
push dword [esp + 0x17c]
mov edx, esi
call fcn.004b32c0
add esp, 0x14
test eax, eax
jne 0x4b8944
mov dword [edi + 0xb8], ebp
mov eax, 0xfffffc1c
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x158
ret
mov eax, dword [esp + 0x174]
mov ecx, dword [esp + 0x170]
mov dword [eax + 0x84], ebx
mov dword [eax + 0x90], ecx
mov ecx, dword [esp + 0x16c]
mov dword [eax + 0x80], ecx
mov eax, 1
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x158
ret
mov ecx, dword [esp + 0x174]
mov eax, dword [ecx + 0x8c]
test eax, eax
je case.default.0x4b4c49
cmp ebx, dword [ecx + 0x7c]
jb case.default.0x4b4c49
cmp ebx, dword [ecx + 0x88]
jbe case.default.0x4b4c49
mov dword [ecx + 0x64], 1
jmp 0x4ba6e1
mov edi, ebx
cmp esi, eax
jge 0x4b8cb0
nop
push edx
push dword [esp + 0x178]
mov edx, ebx
push ebp
call fcn.004b3110
add esp, 0xc
test eax, eax
js 0x4b8c62
mov ecx, dword [esp + 0x2c]
lea ebx, [ebx + eax*2]
mov edx, dword [esp + 0x3c]
inc esi
cmp esi, dword [esp + 0x34]
jl 0x4b8c30
jmp 0x4b8c9c
mov ecx, dword [esp + 0x174]
mov eax, dword [ecx + 0x8c]
test eax, eax
je 0x4b8c9c
cmp ebx, dword [ecx + 0x7c]
jb 0x4b8c9c
cmp ebx, dword [ecx + 0x88]
jbe 0x4b8c9c
mov dword [ecx + 0x64], 1
cmp eax, 1
jg 0x4ba6f0
cmp ebx, edi
jb case.default.0x4b4c49
nop dword [eax]
nop dword [eax + eax]
mov eax, dword [esp + 0x17c]
mov ecx, ebx
mov edx, dword [esp + 0x14]
inc eax
push eax
push dword [esp + 0x17c]
push dword [esp + 0x17c]
push dword [esp + 0x17c]
push dword [esp + 0x17c]
call fcn.004b32c0
add esp, 0x14
test eax, eax
jne 0x4b8944
mov eax, ebp
neg eax
lea ebx, [ebx + eax*2]
cmp ebx, edi
jae 0x4b8cb0
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x158
ret
mov eax, dword [esi + 0x8c]
test eax, eax
je case.default.0x4b4c49
cmp ebx, dword [esi + 0x7c]
jb case.default.0x4b4c49
cmp ebx, dword [esi + 0x88]
jbe case.default.0x4b4c49
mov dword [esi + 0x64], 1
jmp 0x4ba6e1
mov ecx, edx
mov eax, 1
and ecx, 7
shr edx, 3
shl eax, cl
test byte [edx + ebp], al
je case.default.0x4b4c49
mov ecx, dword [esp + 0x174]
mov eax, dword [esp + 0x17c]
inc esi
mov edx, dword [esp + 0x14]
inc eax
push eax
push dword [esp + 0x17c]
push ecx
push dword [esp + 0x17c]
mov ecx, ebx
push dword [esp + 0x17c]
call fcn.004b32c0
add esp, 0x14
test eax, eax
je 0x4b55a6
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x158
ret
mov ebp, ebx
cmp esi, edi
jge 0x4b8e08
mov eax, dword [esp + 0x174]
mov ecx, dword [esp + 0x30]
mov edi, dword [eax + 0x7c]
nop word [eax + eax]
cmp ebx, edi
jae 0x4b8ede
movzx edx, word [ebx]
mov esi, 1
mov eax, edx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4b8df1
movzx eax, word [ebx + 2]
and edx, 0x3ff
and eax, 0x3ff
shl edx, 0xa
or edx, eax
mov esi, 2
add edx, 0x10000
cmp edx, 0xff
jbe 0x4b8ea5
cmp dword [esp + 0x20], 0x6a
jne 0x4b8ec5
mov esi, dword [esp + 0x174]
mov eax, dword [esp + 0x17c]
mov ecx, ebx
mov edi, dword [esp + 0x14]
inc eax
push eax
push dword [esp + 0x17c]
mov edx, edi
push esi
push dword [esp + 0x17c]
push dword [esp + 0x17c]
call fcn.004b32c0
add esp, 0x14
test eax, eax
jne 0x4b8944
mov eax, ebx
add ebx, 0xfffffffe
cmp eax, ebp
je case.default.0x4b4c49
mov ax, word [ebx]
mov ecx, 0xfc00
and ax, cx
mov ecx, 0xdc00
cmp ax, cx
jne 0x4b8e6b
add ebx, 0xfffffffe
mov eax, dword [esp + 0x17c]
mov edx, edi
inc eax
mov ecx, ebx
push eax
push dword [esp + 0x17c]
push esi
push dword [esp + 0x17c]
push dword [esp + 0x17c]
call fcn.004b32c0
add esp, 0x14
test eax, eax
je 0x4b8e46
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x158
ret
mov ecx, edx
mov eax, 1
and ecx, 7
shr edx, 3
shl eax, cl
mov ecx, dword [esp + 0x34]
test byte [edx + ecx], al
je 0x4b8e08
mov ecx, dword [esp + 0x30]
mov eax, dword [esp + 0x2c]
lea ebx, [ebx + esi*2]
inc eax
mov dword [esp + 0x2c], eax
cmp eax, ecx
jl 0x4b8db0
jmp 0x4b8e08
mov esi, dword [esp + 0x174]
mov eax, dword [esi + 0x8c]
test eax, eax
je 0x4b8e0f
cmp ebx, dword [esi + 0x88]
jbe 0x4b8e0f
mov dword [esi + 0x64], 1
cmp eax, 1
jg 0x4ba6f0
jmp 0x4b8e0f
mov ecx, dword [esp + 0x174]
mov eax, dword [ecx + 0x8c]
test eax, eax
je case.default.0x4b4c49
jmp 0x4b8c0d
mov ebp, ebx
cmp edi, esi
jge 0x4b8fa5
nop dword [eax + eax]
mov esi, dword [esp + 0x174]
cmp ebx, dword [esi + 0x7c]
jae 0x4b9042
movzx ecx, word [ebx]
mov esi, 1
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4b8f89
movzx eax, word [ebx + 2]
and ecx, 0x3ff
and eax, 0x3ff
shl ecx, 0xa
or ecx, eax
mov esi, 2
add ecx, 0x10000
mov edx, dword [esp + 0x44]
push 1
call fcn.004bc7b0
add esp, 4
test eax, eax
je 0x4b8fa5
inc edi
lea ebx, [ebx + esi*2]
cmp edi, dword [esp + 0x34]
jl 0x4b8f40
mov esi, dword [esp + 0x174]
mov eax, dword [esp + 0x17c]
mov ecx, ebx
mov edi, dword [esp + 0x14]
inc eax
push eax
push dword [esp + 0x17c]
mov edx, edi
push esi
push dword [esp + 0x17c]
push dword [esp + 0x17c]
call fcn.004b32c0
add esp, 0x14
test eax, eax
jne 0x4b8944
mov eax, ebx
add ebx, 0xfffffffe
cmp eax, ebp
je case.default.0x4b4c49
mov ax, word [ebx]
mov ecx, 0xfc00
and ax, cx
mov ecx, 0xdc00
cmp ax, cx
jne 0x4b9008
add ebx, 0xfffffffe
mov eax, dword [esp + 0x17c]
mov edx, edi
inc eax
mov ecx, ebx
push eax
push dword [esp + 0x17c]
push esi
push dword [esp + 0x17c]
push dword [esp + 0x17c]
call fcn.004b32c0
add esp, 0x14
test eax, eax
je 0x4b8fe3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x158
ret
mov eax, dword [esi + 0x8c]
test eax, eax
je 0x4b8fac
cmp ebx, dword [esi + 0x88]
jbe 0x4b8fac
mov dword [esi + 0x64], 1
cmp eax, 1
jg 0x4ba6f0
jmp 0x4b8fac
mov eax, dword [ebp + 0x8c]
test eax, eax
je case.default.0x4b4c49
cmp ebx, ecx
jb case.default.0x4b4c49
jmp 0x4ba6ce
mov eax, dword [esp + 0x17c]
mov ecx, ebx
mov ebp, dword [esp + 0x174]
inc eax
mov edx, dword [esp + 0x14]
push eax
push dword [esp + 0x17c]
push ebp
push dword [esp + 0x17c]
push dword [esp + 0x17c]
call fcn.004b32c0
add esp, 0x14
test eax, eax
jne 0x4b8944
cmp esi, edi
jge case.default.0x4b4c49
mov ecx, dword [esp + 0x3c]
mov ebp, dword [ebp + 0x7c]
mov eax, ebp
lea edi, [ecx + ecx]
sub eax, edi
cmp ebx, eax
ja 0x4b9167
mov edx, dword [esp + 0x1c]
lea esi, [ecx + ecx]
mov ecx, ebx
sub esi, 4
jb 0x4b9115
nop dword [eax + eax]
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x4b911e
add ecx, 4
add edx, 4
sub esi, 4
jae 0x4b9100
cmp esi, 0xfffffffc
je 0x4b91f7
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x4b9167
cmp esi, 0xfffffffd
je 0x4b91f7
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x4b9167
cmp esi, 0xfffffffe
je 0x4b91f7
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x4b9167
cmp esi, 0xffffffff
je 0x4b91f7
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
je 0x4b91f7
mov ecx, dword [esp + 0x2c]
test ecx, ecx
jle 0x4b924d
lea edi, [ecx + ecx]
mov eax, ebp
sub eax, edi
cmp ebx, eax
ja 0x4b924d
lea esi, [ecx + ecx]
mov ecx, ebx
lea edx, [esp + 0x74]
sub esi, 4
jb 0x4b91a9
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x4b91b2
add ecx, 4
add edx, 4
sub esi, 4
jae 0x4b9194
cmp esi, 0xfffffffc
je 0x4b91f7
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x4b924d
cmp esi, 0xfffffffd
je 0x4b91f7
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x4b924d
cmp esi, 0xfffffffe
je 0x4b91f7
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x4b924d
cmp esi, 0xffffffff
je 0x4b91f7
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x4b924d
mov eax, dword [esp + 0x17c]
add ebx, edi
mov ebp, dword [esp + 0x174]
inc eax
mov esi, dword [esp + 0x24]
mov ecx, ebx
mov edx, dword [esp + 0x14]
inc esi
push eax
push dword [esp + 0x17c]
mov dword [esp + 0x2c], esi
push ebp
push dword [esp + 0x17c]
push dword [esp + 0x17c]
call fcn.004b32c0
mov edi, dword [esp + 0x34]
add esp, 0x14
test eax, eax
je 0x4b90c8
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x158
ret
mov ecx, dword [esp + 0x174]
mov eax, dword [ecx + 0x8c]
test eax, eax
je case.default.0x4b4c49
cmp ebx, ebp
jmp 0x4b8c07
mov eax, dword [esp + 0x17c]
mov ecx, ebx
mov edx, dword [esp + 0x14]
inc eax
push eax
push dword [esp + 0x17c]
push dword [esp + 0x17c]
push dword [esp + 0x17c]
push dword [esp + 0x17c]
call fcn.004b32c0
add esp, 0x14
test eax, eax
jne 0x4b8944
cmp ebp, dword [esp + 0x20]
jge case.default.0x4b4c49
mov ecx, dword [esp + 0x174]
cmp ebx, dword [ecx + 0x7c]
jae 0x4b8f1b
movzx eax, word [ebx]
cmp esi, eax
je 0x4b92cd
cmp edi, eax
jne case.default.0x4b4c49
mov eax, dword [esp + 0x17c]
add ebx, 2
mov edx, dword [esp + 0x14]
inc eax
push eax
push dword [esp + 0x17c]
inc ebp
push ecx
push dword [esp + 0x17c]
mov ecx, ebx
push dword [esp + 0x17c]
call fcn.004b32c0
add esp, 0x14
test eax, eax
je 0x4b92a4
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x158
ret
mov eax, dword [edi + 0x8c]
test eax, eax
je case.default.0x4b4c49
cmp ebx, dword [edi + 0x88]
jbe case.default.0x4b4c49
mov dword [edi + 0x64], 1
jmp 0x4ba6e1
mov eax, dword [esp + 0x17c]
mov ecx, ebx
mov edx, dword [esp + 0x14]
inc eax
push eax
push dword [esp + 0x17c]
push edi
push dword [esp + 0x17c]
push dword [esp + 0x17c]
call fcn.004b32c0
add esp, 0x14
test eax, eax
jne 0x4b8944
nop dword [eax + eax]
cmp ebp, dword [esp + 0x20]
jge case.default.0x4b4c49
cmp ebx, dword [edi + 0x7c]
jae 0x4b930d
movzx eax, word [ebx]
add ebx, 2
cmp esi, eax
jne case.default.0x4b4c49
mov eax, dword [esp + 0x17c]
mov ecx, ebx
mov edx, dword [esp + 0x14]
inc eax
push eax
push dword [esp + 0x17c]
inc ebp
push edi
push dword [esp + 0x17c]
push dword [esp + 0x17c]
call fcn.004b32c0
add esp, 0x14
test eax, eax
je 0x4b9370
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x158
ret
mov eax, dword [esp + 0x17c]
mov edx, esi
mov edi, dword [esp + 0x170]
inc eax
push eax
push dword [esp + 0x17c]
push ecx
push edi
push dword [esp + 0x17c]
mov ecx, ebx
call fcn.004b32c0
add esp, 0x14
test eax, eax
jne 0x4b8944
nop
mov eax, ebx
add ebx, 0xfffffffe
cmp eax, ebp
je case.default.0x4b4c49
mov ax, word [ebx]
mov ecx, 0xfc00
and ax, cx
mov ecx, 0xdc00
cmp ax, cx
jne 0x4b9429
add ebx, 0xfffffffe
mov eax, dword [esp + 0x17c]
mov edx, esi
inc eax
mov ecx, ebx
push eax
push dword [esp + 0x17c]
push dword [esp + 0x17c]
push edi
push dword [esp + 0x17c]
call fcn.004b32c0
add esp, 0x14
test eax, eax
je 0x4b9400
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x158
ret
mov eax, dword [esp + 0x17c]
mov ecx, ebx
mov edx, dword [esp + 0x14]
inc eax
push eax
push dword [esp + 0x17c]
push dword [esp + 0x17c]
push dword [esp + 0x17c]
push dword [esp + 0x17c]
call fcn.004b32c0
add esp, 0x14
test eax, eax
jne 0x4b8944
nop
cmp edi, esi
jge case.default.0x4b4c49
mov edx, dword [esp + 0x174]
cmp ebx, dword [edx + 0x7c]
jae 0x4b953f
movzx ecx, word [ebx]
add ebx, 2
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4b94ec
movzx eax, word [ebx]
and ecx, 0x3ff
shl ecx, 0xa
and eax, 0x3ff
or ecx, eax
add ecx, 0x10000
add ebx, 2
cmp dword [esp + 0x2c], ecx
je case.default.0x4b4c49
cmp ebp, ecx
je case.default.0x4b4c49
mov eax, dword [esp + 0x17c]
mov ecx, ebx
inc eax
inc edi
push eax
push dword [esp + 0x17c]
push edx
push dword [esp + 0x17c]
mov edx, dword [esp + 0x24]
push dword [esp + 0x17c]
call fcn.004b32c0
add esp, 0x14
test eax, eax
je 0x4b94a0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x158
ret
mov eax, dword [edx + 0x8c]
test eax, eax
je case.default.0x4b4c49
cmp ebx, dword [edx + 0x88]
jbe case.default.0x4b4c49
mov dword [edx + 0x64], 1
jmp 0x4ba6e1
mov eax, dword [esp + 0x17c]
mov edx, esi
mov edi, dword [esp + 0x170]
inc eax
push eax
push dword [esp + 0x17c]
push ecx
push edi
push dword [esp + 0x17c]
mov ecx, ebx
call fcn.004b32c0
add esp, 0x14
test eax, eax
jne 0x4b8944
nop dword [eax]
mov eax, ebx
add ebx, 0xfffffffe
cmp eax, ebp
je case.default.0x4b4c49
mov ax, word [ebx]
mov ecx, 0xfc00
and ax, cx
mov ecx, 0xdc00
cmp ax, cx
jne 0x4b95c5
add ebx, 0xfffffffe
mov eax, dword [esp + 0x17c]
mov edx, esi
inc eax
mov ecx, ebx
push eax
push dword [esp + 0x17c]
push dword [esp + 0x17c]
push edi
push dword [esp + 0x17c]
call fcn.004b32c0
add esp, 0x14
test eax, eax
je 0x4b95a0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x158
ret
mov eax, dword [esp + 0x17c]
mov edx, ecx
inc eax
mov ecx, ebx
push eax
push dword [esp + 0x17c]
push dword [esp + 0x17c]
push dword [esp + 0x17c]
push dword [esp + 0x17c]
call fcn.004b32c0
add esp, 0x14
test eax, eax
jne 0x4b8944
cmp edi, esi
jge case.default.0x4b4c49
mov edx, dword [esp + 0x174]
cmp ebx, dword [edx + 0x7c]
jae 0x4b953f
movzx ecx, word [ebx]
add ebx, 2
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4b9684
movzx eax, word [ebx]
and ecx, 0x3ff
shl ecx, 0xa
and eax, 0x3ff
or ecx, eax
add ecx, 0x10000
add ebx, 2
cmp ebp, ecx
je case.default.0x4b4c49
mov eax, dword [esp + 0x17c]
mov ecx, ebx
inc eax
inc edi
push eax
push dword [esp + 0x17c]
push edx
push dword [esp + 0x17c]
mov edx, dword [esp + 0x24]
push dword [esp + 0x17c]
call fcn.004b32c0
add esp, 0x14
test eax, eax
je 0x4b9638
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x158
ret
mov eax, dword [esi + 0x8c]
test eax, eax
je case.default.0x4b4c49
jmp 0x4b8d1a
mov eax, dword [esp + 0x17c]
mov edx, esi
mov edi, dword [esp + 0x170]
inc eax
push eax
push dword [esp + 0x17c]
push ecx
push edi
push dword [esp + 0x17c]
mov ecx, ebx
call fcn.004b32c0
add esp, 0x14
test eax, eax
jne 0x4b8944
mov eax, ebx
add ebx, 0xfffffffe
cmp eax, ebp
je case.default.0x4b4c49
mov ax, word [ebx]
mov ecx, 0xfc00
and ax, cx
mov ecx, 0xdc00
cmp ax, cx
jne 0x4b9739
add ebx, 0xfffffffe
mov eax, dword [esp + 0x17c]
mov edx, esi
inc eax
mov ecx, ebx
push eax
push dword [esp + 0x17c]
push dword [esp + 0x17c]
push edi
push dword [esp + 0x17c]
call fcn.004b32c0
add esp, 0x14
test eax, eax
je 0x4b9714
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x158
ret
mov eax, dword [esp + 0x17c]
mov ecx, ebx
mov edx, dword [esp + 0x14]
inc eax
push eax
push dword [esp + 0x17c]
push dword [esp + 0x17c]
push dword [esp + 0x17c]
push dword [esp + 0x17c]
call fcn.004b32c0
mov ebp, dword [esp + 0x3c]
add esp, 0x14
test eax, eax
je 0x4b7b95
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x158
ret
test eax, eax
js 0x4ba154
cmp eax, 8
ja case.default.0x4b4fb1
jmp dword [eax*4 + 0x4bb234]
mov eax, dword [esp + 0x17c]
mov ecx, ebx
mov esi, dword [esp + 0x174]
inc eax
mov ebp, dword [esp + 0x14]
mov edx, ebp
push eax
push dword [esp + 0x17c]
push esi
push dword [esp + 0x17c]
push dword [esp + 0x17c]
call fcn.004b32c0
add esp, 0x14
test eax, eax
jne 0x4b8944
mov ecx, ebx
cmp edi, dword [esp + 0x24]
jge case.default.0x4b4c49
cmp ebx, dword [esi + 0x7c]
jae 0x4b96cd
movzx eax, word [ebx]
add ebx, 2
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4b983d
lea ebx, [ecx + 4]
cmp dword [esp + 0x38], 0
jne case.default.0x4b4c49
mov eax, dword [esp + 0x17c]
mov edx, ebp
inc eax
mov ecx, ebx
push eax
push dword [esp + 0x17c]
inc edi
push esi
push dword [esp + 0x17c]
push dword [esp + 0x17c]
call fcn.004b32c0
add esp, 0x14
test eax, eax
je 0x4b9813
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x158
ret
mov eax, dword [esp + 0x17c]
mov ecx, ebx
mov esi, dword [esp + 0x174]
inc eax
mov ebp, dword [esp + 0x14]
mov edx, ebp
push eax
push dword [esp + 0x17c]
push esi
push dword [esp + 0x17c]
push dword [esp + 0x17c]
call fcn.004b32c0
add esp, 0x14
test eax, eax
jne 0x4b8944
cmp edi, dword [esp + 0x24]
jge case.default.0x4b4c49
cmp ebx, dword [esi + 0x7c]
jae 0x4b96cd
movzx ecx, word [ebx]
add ebx, 2
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4b9908
movzx eax, word [ebx]
and ecx, 0x3ff
and eax, 0x3ff
shl ecx, 0xa
or ecx, eax
add ebx, 2
add ecx, 0x10000
mov eax, ecx
and ecx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x4d1b58]
shl eax, 7
add eax, ecx
movzx eax, word [eax*2 + 0x4c5178]
mov al, byte [eax*8 + 0x4d0a79]
cmp al, 9
je 0x4b994a
cmp al, 5
je 0x4b994a
cmp al, 8
je 0x4b994a
xor eax, eax
jmp 0x4b994f
mov eax, 1
cmp eax, dword [esp + 0x38]
je case.default.0x4b4c49
mov eax, dword [esp + 0x17c]
mov edx, ebp
inc eax
mov ecx, ebx
push eax
push dword [esp + 0x17c]
inc edi
push esi
push dword [esp + 0x17c]
push dword [esp + 0x17c]
call fcn.004b32c0
add esp, 0x14
test eax, eax
je 0x4b98c1
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x158
ret
mov eax, dword [esp + 0x17c]
mov ecx, ebx
mov esi, dword [esp + 0x174]
inc eax
mov ebp, dword [esp + 0x14]
mov edx, ebp
push eax
push dword [esp + 0x17c]
push esi
push dword [esp + 0x17c]
push dword [esp + 0x17c]
call fcn.004b32c0
add esp, 0x14
test eax, eax
jne 0x4b8944
cmp edi, dword [esp + 0x24]
jge case.default.0x4b4c49
cmp ebx, dword [esi + 0x7c]
jae 0x4b96cd
movzx ecx, word [ebx]
add ebx, 2
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4b9a1d
movzx eax, word [ebx]
and ecx, 0x3ff
shl ecx, 0xa
and eax, 0x3ff
or ecx, eax
add ebx, 2
add ecx, 0x10000
mov edx, dword [esp + 0x40]
mov eax, ecx
shr eax, 7
and ecx, 0x7f
movzx eax, byte [eax + 0x4d1b58]
shl eax, 7
add eax, ecx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4c5178]
movzx eax, byte [eax*8 + 0x4d0a79]
cmp dword [eax*4 + 0x4d4138], edx
sete cl
cmp ecx, dword [esp + 0x38]
je case.default.0x4b4c49
mov eax, dword [esp + 0x17c]
mov edx, ebp
inc eax
mov ecx, ebx
push eax
push dword [esp + 0x17c]
inc edi
push esi
push dword [esp + 0x17c]
push dword [esp + 0x17c]
call fcn.004b32c0
add esp, 0x14
test eax, eax
je 0x4b99d6
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x158
ret
mov eax, dword [esp + 0x17c]
mov ecx, ebx
mov esi, dword [esp + 0x174]
inc eax
mov ebp, dword [esp + 0x14]
mov edx, ebp
push eax
push dword [esp + 0x17c]
push esi
push dword [esp + 0x17c]
push dword [esp + 0x17c]
call fcn.004b32c0
add esp, 0x14
test eax, eax
jne 0x4b8944
nop dword [eax + eax]
cmp edi, dword [esp + 0x24]
jge case.default.0x4b4c49
cmp ebx, dword [esi + 0x7c]
jae 0x4b96cd
movzx ecx, word [ebx]
add ebx, 2
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4b9b27
movzx eax, word [ebx]
and ecx, 0x3ff
and eax, 0x3ff
shl ecx, 0xa
or ecx, eax
add ebx, 2
add ecx, 0x10000
mov eax, ecx
and ecx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x4d1b58]
shl eax, 7
add eax, ecx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4c5178]
movzx eax, byte [eax*8 + 0x4d0a79]
cmp eax, dword [esp + 0x40]
sete cl
cmp ecx, dword [esp + 0x38]
je case.default.0x4b4c49
mov eax, dword [esp + 0x17c]
mov edx, ebp
inc eax
mov ecx, ebx
push eax
push dword [esp + 0x17c]
inc edi
push esi
push dword [esp + 0x17c]
push dword [esp + 0x17c]
call fcn.004b32c0
add esp, 0x14
test eax, eax
je 0x4b9ae0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x158
ret
mov eax, dword [esp + 0x17c]
mov ecx, ebx
mov esi, dword [esp + 0x174]
inc eax
mov ebp, dword [esp + 0x14]
mov edx, ebp
push eax
push dword [esp + 0x17c]
push esi
push dword [esp + 0x17c]
push dword [esp + 0x17c]
call fcn.004b32c0
add esp, 0x14
test eax, eax
jne 0x4b8944
nop dword [eax + eax]
cmp edi, dword [esp + 0x24]
jge case.default.0x4b4c49
cmp ebx, dword [esi + 0x7c]
jae 0x4b96cd
movzx ecx, word [ebx]
add ebx, 2
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4b9c27
movzx eax, word [ebx]
and ecx, 0x3ff
and eax, 0x3ff
shl ecx, 0xa
or ecx, eax
add ebx, 2
add ecx, 0x10000
mov eax, ecx
and ecx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x4d1b58]
shl eax, 7
add eax, ecx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4c5178]
movzx eax, byte [eax*8 + 0x4d0a78]
cmp eax, dword [esp + 0x40]
sete cl
cmp ecx, dword [esp + 0x38]
je case.default.0x4b4c49
mov eax, dword [esp + 0x17c]
mov edx, ebp
inc eax
mov ecx, ebx
push eax
push dword [esp + 0x17c]
inc edi
push esi
push dword [esp + 0x17c]
push dword [esp + 0x17c]
call fcn.004b32c0
add esp, 0x14
test eax, eax
je 0x4b9be0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x158
ret
mov eax, dword [esp + 0x17c]
mov ecx, ebx
mov esi, dword [esp + 0x174]
inc eax
mov ebp, dword [esp + 0x14]
mov edx, ebp
push eax
push dword [esp + 0x17c]
push esi
push dword [esp + 0x17c]
push dword [esp + 0x17c]
call fcn.004b32c0
add esp, 0x14
test eax, eax
jne 0x4b8944
nop dword [eax + eax]
cmp edi, dword [esp + 0x24]
jge case.default.0x4b4c49
cmp ebx, dword [esi + 0x7c]
jae 0x4b96cd
movzx ecx, word [ebx]
add ebx, 2
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4b9d27
movzx eax, word [ebx]
and ecx, 0x3ff
and eax, 0x3ff
shl ecx, 0xa
or ecx, eax
add ebx, 2
add ecx, 0x10000
mov eax, ecx
and ecx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x4d1b58]
shl eax, 7
add eax, ecx
movzx eax, word [eax*2 + 0x4c5178]
movzx eax, byte [eax*8 + 0x4d0a79]
mov eax, dword [eax*4 + 0x4d4138]
cmp eax, 1
je 0x4b9d6b
cmp eax, 3
je 0x4b9d6b
xor eax, eax
jmp 0x4b9d70
mov eax, 1
cmp eax, dword [esp + 0x38]
je case.default.0x4b4c49
mov eax, dword [esp + 0x17c]
mov edx, ebp
inc eax
mov ecx, ebx
push eax
push dword [esp + 0x17c]
inc edi
push esi
push dword [esp + 0x17c]
push dword [esp + 0x17c]
call fcn.004b32c0
add esp, 0x14
test eax, eax
je 0x4b9ce0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x158
ret
mov eax, dword [esp + 0x17c]
mov ecx, ebx
mov esi, dword [esp + 0x174]
inc eax
mov ebp, dword [esp + 0x14]
mov edx, ebp
push eax
push dword [esp + 0x17c]
push esi
push dword [esp + 0x17c]
push dword [esp + 0x17c]
call fcn.004b32c0
add esp, 0x14
test eax, eax
jne 0x4b8944
nop word [eax + eax]
cmp edi, dword [esp + 0x24]
jge case.default.0x4b4c49
cmp ebx, dword [esi + 0x7c]
jae 0x4b96cd
movzx edx, word [ebx]
add ebx, 2
mov eax, edx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4b9e47
movzx eax, word [ebx]
and edx, 0x3ff
and eax, 0x3ff
shl edx, 0xa
or edx, eax
add ebx, 2
add edx, 0x10000
mov eax, edx
shr eax, 7
movzx ecx, byte [eax + 0x4d1b58]
mov eax, edx
and eax, 0x7f
shl ecx, 7
add ecx, eax
movzx eax, word [ecx*2 + 0x4c5178]
movzx eax, byte [eax*8 + 0x4d0a79]
cmp dword [eax*4 + 0x4d4138], 6
je 0x4b9ea6
cmp edx, 9
je 0x4b9ea6
cmp edx, 0xa
je 0x4b9ea6
cmp edx, 0xc
je 0x4b9ea6
cmp edx, 0xd
je 0x4b9ea6
xor eax, eax
jmp 0x4b9eab
mov eax, 1
cmp eax, dword [esp + 0x38]
je case.default.0x4b4c49
mov eax, dword [esp + 0x17c]
mov edx, ebp
inc eax
mov ecx, ebx
push eax
push dword [esp + 0x17c]
inc edi
push esi
push dword [esp + 0x17c]
push dword [esp + 0x17c]
call fcn.004b32c0
add esp, 0x14
test eax, eax
je 0x4b9e00
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x158
ret
mov eax, dword [esp + 0x17c]
mov ecx, ebx
mov esi, dword [esp + 0x174]
inc eax
mov ebp, dword [esp + 0x14]
mov edx, ebp
push eax
push dword [esp + 0x17c]
push esi
push dword [esp + 0x17c]
push dword [esp + 0x17c]
call fcn.004b32c0
add esp, 0x14
test eax, eax
jne 0x4b8944
cmp edi, dword [esp + 0x24]
jge case.default.0x4b4c49
cmp ebx, dword [esi + 0x7c]
jae 0x4b96cd
movzx edx, word [ebx]
add ebx, 2
mov eax, edx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4b9f79
movzx eax, word [ebx]
and edx, 0x3ff
and eax, 0x3ff
shl edx, 0xa
or edx, eax
add ebx, 2
add edx, 0x10000
mov eax, edx
shr eax, 7
movzx ecx, byte [eax + 0x4d1b58]
mov eax, edx
and eax, 0x7f
shl ecx, 7
add ecx, eax
movzx eax, word [ecx*2 + 0x4c5178]
movzx eax, byte [eax*8 + 0x4d0a79]
cmp dword [eax*4 + 0x4d4138], 6
je 0x4b9fe1
cmp edx, 9
je 0x4b9fe1
cmp edx, 0xa
je 0x4b9fe1
cmp edx, 0xb
je 0x4b9fe1
cmp edx, 0xc
je 0x4b9fe1
cmp edx, 0xd
je 0x4b9fe1
xor eax, eax
jmp 0x4b9fe6
mov eax, 1
cmp eax, dword [esp + 0x38]
je case.default.0x4b4c49
mov eax, dword [esp + 0x17c]
mov edx, ebp
inc eax
mov ecx, ebx
push eax
push dword [esp + 0x17c]
inc edi
push esi
push dword [esp + 0x17c]
push dword [esp + 0x17c]
call fcn.004b32c0
add esp, 0x14
test eax, eax
je 0x4b9f32
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x158
ret
mov eax, dword [esp + 0x17c]
mov ecx, ebx
mov esi, dword [esp + 0x174]
inc eax
mov ebp, dword [esp + 0x14]
mov edx, ebp
push eax
push dword [esp + 0x17c]
push esi
push dword [esp + 0x17c]
push dword [esp + 0x17c]
call fcn.004b32c0
add esp, 0x14
test eax, eax
jne 0x4b8944
nop dword [eax]
cmp edi, dword [esp + 0x24]
jge case.default.0x4b4c49
cmp ebx, dword [esi + 0x7c]
jae 0x4b96cd
movzx edx, word [ebx]
add ebx, 2
mov eax, edx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4ba0b7
movzx eax, word [ebx]
and edx, 0x3ff
and eax, 0x3ff
shl edx, 0xa
or edx, eax
add ebx, 2
add edx, 0x10000
mov eax, edx
shr eax, 7
movzx ecx, byte [eax + 0x4d1b58]
mov eax, edx
and eax, 0x7f
shl ecx, 7
add ecx, eax
movzx eax, word [ecx*2 + 0x4c5178]
movzx eax, byte [eax*8 + 0x4d0a79]
mov eax, dword [eax*4 + 0x4d4138]
cmp eax, 1
je 0x4ba106
cmp eax, 3
je 0x4ba106
cmp edx, 0x5f
je 0x4ba106
xor eax, eax
jmp 0x4ba10b
mov eax, 1
cmp eax, dword [esp + 0x38]
je case.default.0x4b4c49
mov eax, dword [esp + 0x17c]
mov edx, ebp
inc eax
mov ecx, ebx
push eax
push dword [esp + 0x17c]
inc edi
push esi
push dword [esp + 0x17c]
push dword [esp + 0x17c]
call fcn.004b32c0
add esp, 0x14
test eax, eax
je 0x4ba070
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x158
ret
mov eax, dword [esp + 0x17c]
mov ecx, ebx
mov ebp, dword [esp + 0x174]
inc eax
mov edx, dword [esp + 0x14]
push eax
push dword [esp + 0x17c]
push ebp
push dword [esp + 0x17c]
push dword [esp + 0x17c]
call fcn.004b32c0
add esp, 0x14
cmp esi, 0x16
jne 0x4ba2e2
test eax, eax
jne 0x4b8944
nop dword [eax]
cmp edi, dword [esp + 0x24]
jge case.default.0x4b4c49
mov edi, dword [ebp + 0x7c]
cmp ebx, edi
jae 0x4ba6c0
movzx ecx, word [ebx]
add ebx, 2
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4ba1e9
movzx eax, word [ebx]
and ecx, 0x3ff
shl ecx, 0xa
and eax, 0x3ff
or ecx, eax
add ecx, 0x10000
add ebx, 2
mov eax, ecx
and ecx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x4d1b58]
shl eax, 7
add eax, ecx
movzx eax, word [eax*2 + 0x4c5178]
movzx eax, byte [eax*8 + 0x4d0a79]
cmp dword [eax*4 + 0x4d4138], 2
je case.default.0x4b4c49
cmp ebx, edi
jae 0x4ba299
mov esi, ebx
movzx ecx, word [ebx]
mov edx, 1
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4ba25e
movzx eax, word [ebx + 2]
and ecx, 0x3ff
and eax, 0x3ff
shl ecx, 0xa
or ecx, eax
mov edx, 2
add ecx, 0x10000
mov eax, ecx
and ecx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x4d1b58]
shl eax, 7
add eax, ecx
movzx eax, word [eax*2 + 0x4c5178]
movzx eax, byte [eax*8 + 0x4d0a79]
cmp dword [eax*4 + 0x4d4138], 2
jne 0x4ba299
lea ebx, [esi + edx*2]
mov esi, ebx
cmp ebx, edi
jb 0x4ba225
mov eax, dword [esp + 0x17c]
mov ecx, ebx
mov edi, dword [esp + 0x20]
inc eax
mov edx, dword [esp + 0x14]
inc edi
push eax
push dword [esp + 0x17c]
mov dword [esp + 0x28], edi
push ebp
push dword [esp + 0x17c]
push dword [esp + 0x17c]
call fcn.004b32c0
add esp, 0x14
test eax, eax
je 0x4ba1a0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x158
ret
test eax, eax
jne 0x4b8944
nop word [eax + eax]
cmp edi, dword [esp + 0x24]
jge case.default.0x4b4c49
mov ecx, dword [ebp + 0x7c]
cmp ebx, ecx
jae 0x4ba6c0
cmp esi, 0xc
jne 0x4ba36a
mov edx, dword [ebp + 0x18]
lea eax, [ebp + 0x1c]
test edx, edx
je 0x4ba337
push 1
push eax
push ecx
mov ecx, ebx
call fcn.004bc600
add esp, 0xc
test eax, eax
jne case.default.0x4b4c49
jmp 0x4ba36a
mov edx, dword [eax]
lea eax, [edx + edx]
sub ecx, eax
cmp ebx, ecx
ja 0x4ba36a
mov ax, word [ebx]
cmp ax, word [ebp + 0x2c]
jne 0x4ba36a
cmp edx, 1
je case.default.0x4b4c49
mov ax, word [ebx + 2]
cmp ax, word [ebp + 0x2e]
je case.default.0x4b4c49
movzx ecx, word [ebx]
lea edx, [ebx + 2]
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x4ba39e
movzx eax, word [edx]
and ecx, 0x3ff
shl ecx, 0xa
and eax, 0x3ff
or ecx, eax
add ecx, 0x10000
add edx, 2
lea eax, [esi - 6]
cmp eax, 0xf
ja case.default.0x4b4fb1
jmp dword [eax*4 + 0x4bb258]
mov ebx, edx
jmp 0x4ba66f
cmp ecx, 0x85
ja 0x4ba3fa
je case.0x4ba3d6.11
add ecx, 0xfffffff6
cmp ecx, 3
ja case.default.0x4b4c49
jmp dword [ecx*4 + 0x4bb298]
mov ebx, edx
cmp edx, dword [ebp + 0x7c]
jae 0x4ba66f
cmp word [edx], 0xa
jne 0x4ba66f
lea ebx, [edx + 2]
jmp 0x4ba66f
sub ecx, 0x2028
je case.0x4ba3d6.11
sub ecx, 1
jne case.default.0x4b4c49
cmp dword [ebp + 0x68], 0
mov ebx, edx
jne case.default.0x4b4c49
jmp 0x4ba66f
cmp ecx, 0x2000
ja 0x4ba478
je case.default.0x4b4c49
cmp ecx, 0xa0
ja 0x4ba459
je case.default.0x4b4c49
cmp ecx, 9
je case.default.0x4b4c49
cmp ecx, 0x20
je case.default.0x4b4c49
mov ebx, edx
jmp 0x4ba66f
cmp ecx, 0x1680
je case.default.0x4b4c49
cmp ecx, 0x180e
je case.default.0x4b4c49
mov ebx, edx
jmp 0x4ba66f
cmp ecx, 0x3000
ja case.0x4ba3aa.12
je case.default.0x4b4c49
add ecx, 0xffffdfff
cmp ecx, 0x5e
ja case.0x4ba3aa.12
movzx eax, byte [ecx + 0x4bb2b0]
jmp dword [eax*4 + 0x4bb2a8]
cmp ecx, 0x2000
ja 0x4ba503
je case.0x4ba3aa.12
cmp ecx, 0xa0
ja 0x4ba4e4
je case.0x4ba3aa.12
cmp ecx, 9
je case.0x4ba3aa.12
cmp ecx, 0x20
jne case.default.0x4b4c49
mov ebx, edx
jmp 0x4ba66f
cmp ecx, 0x1680
je case.0x4ba3aa.12
cmp ecx, 0x180e
jne case.default.0x4b4c49
mov ebx, edx
jmp 0x4ba66f
cmp ecx, 0x3000
ja case.default.0x4b4c49
je case.0x4ba3aa.12
add ecx, 0xffffdfff
cmp ecx, 0x5e
ja case.default.0x4b4c49
movzx eax, byte [ecx + 0x4bb318]
jmp dword [eax*4 + 0x4bb310]
cmp ecx, 0x85
ja 0x4ba557
je case.default.0x4b4c49
add ecx, 0xfffffff6
cmp ecx, 3
ja case.0x4ba3aa.12
jmp dword [ecx*4 + 0x4bb378]
sub ecx, 0x2028
je case.default.0x4b4c49
sub ecx, 1
je case.default.0x4b4c49
mov ebx, edx
jmp 0x4ba66f
cmp ecx, 0x85
ja 0x4ba598
je case.0x4ba3aa.12
add ecx, 0xfffffff6
cmp ecx, 3
ja case.default.0x4b4c49
jmp dword [ecx*4 + 0x4bb388]
sub ecx, 0x2028
je case.0x4ba3aa.12
sub ecx, 1
jne case.default.0x4b4c49
mov ebx, edx
jmp 0x4ba66f
cmp ecx, 0x100
jae case.0x4ba3aa.12
mov eax, dword [ebp + 0x3c]
test byte [ecx + eax], 4
jne case.default.0x4b4c49
mov ebx, edx
jmp 0x4ba66f
cmp ecx, 0x100
jae case.default.0x4b4c49
mov eax, dword [ebp + 0x3c]
test byte [ecx + eax], 4
je case.default.0x4b4c49
mov ebx, edx
jmp 0x4ba66f
cmp ecx, 0x100
jae case.0x4ba3aa.12
mov eax, dword [ebp + 0x3c]
test byte [ecx + eax], 1
jne case.default.0x4b4c49
mov ebx, edx
jmp 0x4ba66f
cmp ecx, 0x100
jae case.default.0x4b4c49
mov eax, dword [ebp + 0x3c]
test byte [ecx + eax], 1
je case.default.0x4b4c49
mov ebx, edx
jmp 0x4ba66f
cmp ecx, 0x100
jae case.0x4ba3aa.12
mov eax, dword [ebp + 0x3c]
test byte [ecx + eax], 0x10
jne case.default.0x4b4c49
mov ebx, edx
jmp 0x4ba66f
cmp ecx, 0x100
jae case.default.0x4b4c49
mov eax, dword [ebp + 0x3c]
mov ebx, edx
test byte [ecx + eax], 0x10
je case.default.0x4b4c49
mov eax, dword [esp + 0x17c]
mov ecx, ebx
mov edx, dword [esp + 0x14]
inc eax
push eax
push dword [esp + 0x17c]
inc edi
push ebp
push dword [esp + 0x17c]
push dword [esp + 0x17c]
call fcn.004b32c0
add esp, 0x14
test eax, eax
je 0x4ba2f0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x158
ret
mov eax, 0xfffffff2
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x158
ret
mov eax, dword [ebp + 0x8c]
test eax, eax
je case.default.0x4b4c49
cmp ebx, dword [ebp + 0x88]
jbe case.default.0x4b4c49
mov dword [ebp + 0x64], 1
cmp eax, 1
jle case.default.0x4b4c49
nop word [eax + eax]
mov eax, 0xfffffff4
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x158
ret
mov ecx, dword [esi + 0xc]
mov eax, dword [ecx + ebp*4]
mov dword [esp + 0x50], eax
mov eax, dword [ecx + ebp*4 + 4]
mov dword [esp + 0x44], eax
mov eax, dword [esi + 0x10]
sub eax, edx
mov edx, esi
lea ecx, [ecx + eax*4]
mov eax, dword [ecx]
mov dword [esp + 0x4c], eax
mov eax, ebx
sub eax, dword [edx + 0x78]
mov esi, dword [edx + 0x94]
mov edi, dword [edx + 0xb0]
sar eax, 1
mov dword [ecx], eax
nop word [eax + eax]
cmp dword [esp + 0x20], 0x82
jb 0x4ba758
mov dword [edx + 0x9c], 2
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x17c]
inc eax
push eax
movzx eax, word [ecx]
push dword [esp + 0x17c]
push edx
movzx eax, byte [eax + 0x4d3d58]
push dword [esp + 0x17c]
push dword [esp + 0x17c]
lea edx, [ecx + eax*2]
mov ecx, ebx
call fcn.004b32c0
mov edx, eax
add esp, 0x14
cmp edx, 0xfffffc1c
je 0x4ba836
cmp edx, 0xfffffc20
jne 0x4ba7ec
mov eax, dword [esp + 0x14]
movzx ecx, word [eax + 2]
lea eax, [eax + ecx*2]
mov ecx, dword [esp + 0x174]
cmp dword [ecx + 0x80], eax
jae 0x4ba86a
mov ecx, dword [esp + 0x14]
cmp word [ecx], 0x71
mov ecx, dword [esp + 0x174]
je 0x4ba7e5
cmp word [eax], 0x71
jne 0x4ba86a
xor edx, edx
jmp 0x4ba7fb
test edx, edx
jne 0x4ba86a
mov ecx, dword [esp + 0x174]
mov eax, dword [esp + 0x14]
mov dword [ecx + 0x94], esi
mov ecx, dword [esp + 0x14]
movzx eax, word [eax + 2]
lea ecx, [ecx + eax*2]
mov dword [esp + 0x14], ecx
mov ecx, dword [esp + 0x174]
mov eax, dword [esp + 0x14]
mov dword [ecx + 0xb0], edi
cmp word [eax], 0x71
jne 0x4ba83d
mov edx, ecx
jmp 0x4ba740
mov ecx, dword [esp + 0x174]
mov eax, dword [ecx + 0xc]
mov ebx, dword [esp + 0x174]
mov ecx, dword [esp + 0x50]
mov esi, dword [esp + 0x4c]
mov dword [eax + ebp*4], ecx
mov eax, dword [ebx + 0xc]
mov ecx, dword [esp + 0x44]
mov dword [eax + ebp*4 + 4], ecx
mov ecx, dword [ebx + 0x10]
sub ecx, dword [esp + 0x2c]
mov eax, dword [ebx + 0xc]
mov dword [eax + ecx*4], esi
mov eax, edx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x158
ret
cmp edx, 0xfffffc1c
jne 0x4ba8c2
movzx eax, word [edi]
cmp eax, 0x7b
je 0x4ba8b7
cmp eax, 0x71
jne 0x4ba8ae
nop dword [eax + eax]
movzx eax, word [edi + 2]
cmp word [edi + eax*2], 0x71
lea edi, [edi + eax*2]
je 0x4ba8a0
movzx eax, word [edi + 2]
neg eax
lea edi, [edi + eax*2]
xor eax, eax
cmp dword [ebp + 0xb8], edi
cmove edx, eax
mov eax, edx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x158
ret
lea edi, [esi + 4]
mov dword [ebp + 0xb4], edi
mov dword [ebp + 0xb0], 0
mov eax, dword [esp + 0x17c]
inc eax
push eax
movzx eax, word [esi]
push dword [esp + 0x17c]
push ebp
movzx ecx, byte [eax + 0x4d3d58]
movzx eax, word [esi + 2]
push dword [esp + 0x17c]
add ecx, eax
push dword [esp + 0x17c]
lea edx, [esi + ecx*2]
mov ecx, ebx
call fcn.004b32c0
mov esi, eax
add esp, 0x14
cmp esi, 1
je 0x4ba931
cmp esi, 0xfffffc19
jne 0x4ba951
cmp dword [ebp + 0xb0], 0
jne 0x4ba951
mov dword [ebp + 0xb0], edi
mov eax, esi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x158
ret
cmp esi, 0xfffffc1f
jne 0x4b8a97
mov edx, dword [ebp + 0x80]
mov ecx, edi
call fcn.004bc570
test eax, eax
jne 0x4b8a97
mov dword [ebp + 0x80], ebx
lea eax, [esi - 1]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x158
ret
mov eax, dword [esp + 0x17c]
mov ecx, ebx
inc eax
push eax
push dword [esp + 0x17c]
movzx eax, byte [edx + 0x4d3d58]
push ebp
push dword [esp + 0x17c]
push dword [esp + 0x17c]
lea edx, [esi + eax*2]
call fcn.004b32c0
add esp, 0x14
test eax, eax
je 0x4ba9e9
cmp eax, 0xfffffc1d
je 0x4ba9e9
cmp eax, 0xfffffc1e
je 0x4ba9e9
cmp eax, 0xfffffc1f
je 0x4ba9e9
cmp eax, 0xfffffc20
jne 0x4b8944
mov eax, 0xfffffc1a
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x158
ret
mov eax, dword [esp + 0x17c]
mov ecx, ebx
inc eax
push eax
push dword [esp + 0x17c]
movzx eax, byte [edx + 0x4d3d58]
push ebp
push dword [esp + 0x17c]
push dword [esp + 0x17c]
lea edx, [esi + eax*2]
call fcn.004b32c0
add esp, 0x14
test eax, eax
je 0x4baacb
cmp eax, 0xfffffc20
je 0x4baacb
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x158
ret
mov edx, dword [esp + 0x14]
add esi, 4
mov dword [ebp + 0xb4], esi
mov dword [ebp + 0xb0], 0
mov eax, dword [esp + 0x17c]
inc eax
push eax
movzx eax, word [edx]
push dword [esp + 0x17c]
push ebp
movzx ecx, byte [eax + 0x4d3d58]
movzx eax, word [edx + 2]
push dword [esp + 0x17c]
add ecx, eax
push dword [esp + 0x17c]
lea edx, [edx + ecx*2]
mov ecx, ebx
call fcn.004b32c0
add esp, 0x14
cmp eax, 1
je 0x4baaad
cmp eax, 0xfffffc19
jne 0x4baabc
cmp dword [ebp + 0xb0], 0
jne 0x4baabc
mov dword [ebp + 0xb0], esi
test eax, eax
je 0x4baacb
cmp eax, 0xfffffc20
jne 0x4b8944
mov eax, 0xfffffc1d
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x158
ret
mov eax, dword [esp + 0x17c]
mov ecx, ebx
inc eax
push eax
push dword [esp + 0x17c]
movzx eax, byte [edx + 0x4d3d58]
push ebp
push dword [esp + 0x17c]
push dword [esp + 0x17c]
lea edx, [esi + eax*2]
call fcn.004b32c0
add esp, 0x14
test eax, eax
je 0x4bab28
cmp eax, 0xfffffc1d
je 0x4bab28
cmp eax, 0xfffffc20
jne 0x4b8944
mov dword [ebp + 0x80], ebx
mov eax, 0xfffffc1e
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x158
ret
mov eax, dword [esp + 0x17c]
mov ecx, ebx
inc eax
push eax
push dword [esp + 0x17c]
movzx eax, byte [edx + 0x4d3d58]
push ebp
push dword [esp + 0x17c]
push dword [esp + 0x17c]
lea edx, [esi + eax*2]
call fcn.004b32c0
add esp, 0x14
test eax, eax
je 0x4bac02
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x158
ret
mov edx, dword [esp + 0x14]
add esi, 4
mov dword [ebp + 0xb4], esi
mov dword [ebp + 0xb0], 0
mov eax, dword [esp + 0x17c]
inc eax
push eax
movzx eax, word [edx]
push dword [esp + 0x17c]
push ebp
movzx ecx, byte [eax + 0x4d3d58]
movzx eax, word [edx + 2]
push dword [esp + 0x17c]
add ecx, eax
push dword [esp + 0x17c]
lea edx, [edx + ecx*2]
mov ecx, ebx
call fcn.004b32c0
add esp, 0x14
cmp eax, 1
je 0x4babe7
cmp eax, 0xfffffc19
jne 0x4babf6
cmp dword [ebp + 0xb0], 0
jne 0x4babf6
mov dword [ebp + 0xb0], esi
test eax, eax
jne 0x4b8944
mov esi, dword [esp + 0x14]
mov dword [ebp + 0x80], esi
mov eax, 0xfffffc20
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x158
ret
mov esi, dword [esp + 0x16c]
cmp ebx, esi
jne 0x4bac68
cmp edx, 0x99
je 0x4bac68
cmp dword [ebp + 0xa8], 0
jne 0x4bac68
cmp dword [ebp + 0x5c], 0
jne case.default.0x4b4c49
cmp dword [ebp + 0x60], 0
je 0x4bac68
mov ecx, dword [ebp + 0x98]
mov eax, dword [ebp + 0x78]
lea eax, [eax + ecx*2]
cmp esi, eax
je case.default.0x4b4c49
mov eax, dword [esp + 0x170]
test di, di
mov dword [ebp + 0x84], ebx
mov ecx, 1
mov dword [ebp + 0x90], eax
mov eax, 0xfffffc19
mov dword [ebp + 0x80], esi
cmove eax, ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x158
ret
mov eax, 0xfffffffb
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x158
ret
pop edi
pop esi
pop ebp
mov eax, 0xffffffeb
pop ebx
add esp, 0x158
ret