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

Disassembly:
sub esp, 0x128
push ebx
push ebp
push esi
push edi
mov edi, dword [esp + 0x14c]
mov ecx, dword [edi]
mov eax, dword [edi + 0x38]
mov dword [esp + 0x34], eax
cmp ecx, dword [edi + 4]
jae 0x440a38
mov ebp, dword [esp + 0x140]
mov esi, dword [esp + 0x13c]
mov edx, dword [esp + 0x15c]
inc dword [edi]
cmp edx, dword [edi + 8]
jae 0x440a4a
test byte [esp + 0x158], 2
mov eax, dword [esp + 0x150]
mov dword [esp + 0x3c], eax
je 0x43c8e8
mov ecx, dword [esp + 0x154]
lea edx, [esp + 0x58]
mov dword [esp + 0x5c], esi
mov dword [esp + 0x58], ecx
mov dword [esp + 0x154], edx
movzx eax, byte [ebp]
xor edx, edx
mov dword [esp + 0x38], edx
mov dword [esp + 0x2c], edx
mov dword [esp + 0x28], eax
cmp dword [edi + 0x48], edx
je 0x43c918
cmp esi, dword [edi + 0x5c]
jb 0x43c918
mov ebx, dword [esp + 0x144]
cmp esi, ebx
jbe 0x43c91f
mov dword [edi + 0x4c], 1
jmp 0x43c91f
mov ebx, dword [esp + 0x144]
cmp eax, 0x6f
ja case.0x43c92f.15
movzx eax, byte [eax + 0x4420d6]
jmp dword [eax*4 + 0x441fba]
movzx eax, byte [ebp + 1]
movzx ecx, byte [ebp + 2]
shl eax, 8
or eax, ecx
cmp byte [ebp + 3], 0x53
mov dword [esp + 0x14], eax
jne 0x43ca1b
mov ecx, dword [0x4a35cc]
cmp ecx, edx
je 0x43ca18
movzx edx, byte [ebp + 4]
mov eax, dword [edi + 0xc]
mov dword [esp + 0x98], eax
mov eax, dword [edi + 0x58]
mov dword [esp + 0x94], edx
mov edx, dword [edi + 0x5c]
sub edx, eax
mov dword [esp + 0xa0], edx
mov dword [esp + 0x9c], eax
mov edx, ebx
sub edx, eax
mov dword [esp + 0xa4], edx
mov edx, esi
sub edx, eax
movzx eax, byte [ebp + 5]
shl eax, 8
mov dword [esp + 0xa8], edx
movzx edx, byte [ebp + 6]
or eax, edx
movzx edx, byte [ebp + 8]
mov dword [esp + 0xb8], eax
movzx eax, byte [ebp + 7]
shl eax, 8
or eax, edx
mov dword [esp + 0xbc], eax
mov eax, dword [esp + 0x148]
cdq
sub eax, edx
mov edx, dword [edi + 0x80]
sar eax, 1
mov dword [esp + 0xac], eax
mov eax, dword [edi + 0x6c]
mov dword [esp + 0xb0], eax
lea eax, [esp + 0x90]
push eax
mov dword [esp + 0x94], 1
mov dword [esp + 0xb8], edx
call ecx
add esp, 4
test eax, eax
jg case.0x441e59.14
jl 0x441fae
add ebp, 6
movzx ecx, byte [ebp + 3]
lea eax, [ebp + 3]
cmp ecx, 0x65
jne 0x43ca51
movzx eax, byte [ebp + 4]
movzx ecx, byte [ebp + 5]
shl eax, 8
or eax, ecx
mov ecx, dword [edi + 0x7c]
test ecx, ecx
je 0x43ca77
cmp eax, 0xffff
je 0x43ca47
cmp eax, dword [ecx + 4]
jne 0x43ca77
mov ecx, 1
lea eax, [ecx + 2]
jmp 0x43ca86
cmp ecx, 0x64
jne 0x43caa2
movzx eax, byte [ebp + 4]
movzx ecx, byte [ebp + 5]
shl eax, 8
or eax, ecx
add eax, eax
cmp eax, dword [esp + 0x148]
jge 0x43ca77
mov edx, dword [edi + 0xc]
cmp dword [edx + eax*4], 0
jge 0x43ca47
movzx eax, byte [ebp + 1]
movzx edx, byte [ebp + 2]
shl eax, 8
xor ecx, ecx
or eax, edx
add ebp, eax
test ecx, ecx
jne 0x4407bf
cmp byte [ebp], 0x54
je 0x4407bf
add ebp, 3
jmp 0x43c8e8
cmp ecx, 0x66
jne 0x43cab8
movzx eax, byte [ebp + 1]
movzx ecx, byte [ebp + 2]
shl eax, 8
or eax, ecx
add ebp, eax
jmp 0x43ca90
mov edx, dword [esp + 0x15c]
mov ecx, dword [esp + 0x150]
inc edx
push edx
mov edx, dword [esp + 0x14c]
push 1
push 0
push ecx
push edi
push edx
push ebx
push eax
push esi
call fcn.0043c876
add esp, 0x24
cmp eax, 1
je 0x440792
test eax, eax
je 0x43caf9
cmp eax, 0xfffffc1c
jne 0x441fae
add ebp, dword [esp + 0x14]
jmp 0x43ca90
mov ebp, dword [edi + 0x7c]
cmp ebp, edx
je 0x440d06
cmp dword [ebp + 4], edx
jne 0x440d06
mov eax, dword [ebp]
mov dword [edi + 0x7c], eax
mov ecx, dword [ebp + 0x14]
mov edx, dword [ebp + 0x10]
mov eax, dword [edi + 0xc]
add ecx, ecx
add ecx, ecx
push ecx
push edx
push eax
call fcn.00416980
mov ecx, dword [ebp + 0xc]
mov edx, dword [esp + 0x48]
mov ebp, dword [ebp + 8]
add esp, 0xc
mov dword [esp + 0x144], ecx
mov dword [esp + 0x150], edx
jmp 0x43c8e8
movzx eax, byte [ebp + 1]
mov dword [esp + 0x150], eax
add ebp, 2
jmp 0x43c8e8
mov ecx, dword [esp + 0x15c]
inc ecx
mov dword [esp + 0x1c], ecx
jmp 0x43cb76
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x150]
mov ecx, dword [esp + 0x148]
push edx
push 0
push 0
push eax
push edi
push ecx
push ebx
lea edx, [ebp + 3]
push edx
push esi
call fcn.0043c876
add esp, 0x24
cmp eax, 1
je 0x43cbc7
test eax, eax
je 0x43cbb2
cmp eax, 0xfffffc1c
jne 0x441fae
movzx eax, byte [ebp + 1]
movzx ecx, byte [ebp + 2]
shl eax, 8
or eax, ecx
add ebp, eax
cmp byte [ebp], 0x54
je 0x43cb76
cmp byte [ebp], 0x55
je case.0x441e59.14
test byte [esp + 0x158], 1
jne 0x440d1f
lea esp, [esp]
movzx edx, byte [ebp + 1]
movzx eax, byte [ebp + 2]
shl edx, 8
or edx, eax
add ebp, edx
cmp byte [ebp], 0x54
je 0x43cbe6
mov ecx, dword [edi + 0x68]
add ebp, 3
mov dword [esp + 0x148], ecx
jmp 0x43c8e8
mov edx, dword [esp + 0x15c]
inc edx
mov dword [esp + 0x1c], edx
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x150]
mov edx, dword [esp + 0x148]
push eax
push 0
push 0
push ecx
push edi
push edx
push ebx
lea eax, [ebp + 3]
push eax
push esi
call fcn.0043c876
add esp, 0x24
cmp eax, 1
je case.0x441e59.14
test eax, eax
je 0x43cc59
cmp eax, 0xfffffc1c
jne 0x441fae
movzx ecx, byte [ebp + 1]
movzx edx, byte [ebp + 2]
shl ecx, 8
or ecx, edx
add ebp, ecx
cmp byte [ebp], 0x54
je 0x43cc19
test byte [esp + 0x158], 1
jne 0x440d1f
add ebp, 3
jmp 0x43c8e8
cmp dword [esp + 0x34], edx
je 0x43ccce
movzx eax, byte [ebp + 1]
movzx ecx, byte [ebp + 2]
shl eax, 8
or eax, ecx
jle 0x43cce6
mov ecx, dword [edi + 0x58]
dec esi
dec eax
cmp esi, ecx
jb case.0x441e59.14
mov bl, byte [esi]
and bl, 0xc0
cmp bl, 0x80
jne 0x43ccc2
lea ebx, [ebx]
mov bl, byte [esi - 1]
dec esi
and bl, 0xc0
cmp bl, 0x80
je 0x43ccb6
cmp eax, edx
jg 0x43cc9c
add ebp, 3
jmp 0x43c8e8
movzx edx, byte [ebp + 1]
movzx eax, byte [ebp + 2]
shl edx, 8
or edx, eax
sub esi, edx
cmp esi, dword [edi + 0x58]
jb case.0x441e59.14
add ebp, 3
jmp 0x43c8e8
mov ecx, dword [0x4a35cc]
cmp ecx, edx
je 0x43cd98
movzx edx, byte [ebp + 1]
mov eax, dword [edi + 0xc]
mov dword [esp + 0x68], eax
mov eax, dword [edi + 0x58]
mov dword [esp + 0x64], edx
mov edx, dword [edi + 0x5c]
sub edx, eax
sub ebx, eax
mov dword [esp + 0x6c], eax
mov dword [esp + 0x70], edx
mov edx, esi
sub edx, eax
movzx eax, byte [ebp + 2]
shl eax, 8
mov dword [esp + 0x78], edx
movzx edx, byte [ebp + 3]
or eax, edx
movzx edx, byte [ebp + 5]
mov dword [esp + 0x88], eax
movzx eax, byte [ebp + 4]
shl eax, 8
or eax, edx
mov dword [esp + 0x8c], eax
mov eax, dword [esp + 0x148]
cdq
sub eax, edx
mov edx, dword [edi + 0x80]
sar eax, 1
mov dword [esp + 0x7c], eax
mov eax, dword [edi + 0x6c]
mov dword [esp + 0x80], eax
lea eax, [esp + 0x60]
push eax
mov dword [esp + 0x64], 1
mov dword [esp + 0x78], ebx
mov dword [esp + 0x88], edx
call ecx
add esp, 4
test eax, eax
jg case.0x441e59.14
jl 0x441fae
add ebp, 6
jmp 0x43c8e8
mov dword [esp + 0x38], ebp
mov dword [esp + 0x28], esi
mov eax, dword [esp + 0x15c]
mov ecx, dword [esp + 0x154]
mov edx, dword [esp + 0x150]
inc eax
push eax
mov eax, dword [esp + 0x14c]
push 0
push ecx
push edx
push edi
push eax
push ebx
lea ecx, [ebp + 3]
push ecx
push esi
call fcn.0043c876
add esp, 0x24
cmp eax, 1
je 0x43ce03
test eax, eax
je 0x43cdee
cmp eax, 0xfffffc1c
jne 0x441fae
movzx edx, byte [ebp + 1]
movzx eax, byte [ebp + 2]
shl edx, 8
or edx, eax
add ebp, edx
cmp byte [ebp], 0x54
je 0x43cda8
mov al, byte [ebp]
cmp al, 0x5d
je 0x43ce16
cmp al, 0x54
jne case.0x441e59.14
lea esp, [esp]
movzx ecx, byte [ebp + 1]
movzx edx, byte [ebp + 2]
shl ecx, 8
or ecx, edx
add ebp, ecx
cmp byte [ebp], 0x54
je 0x43ce16
cmp byte [ebp], 0x55
mov eax, dword [edi + 0x68]
mov esi, dword [edi + 0x64]
mov dword [esp + 0x148], eax
je 0x43ce48
cmp esi, dword [esp + 0x28]
jne 0x4408eb
add ebp, 3
jmp 0x43c8e8
movzx eax, byte [ebp + 1]
movzx ecx, byte [ebp + 2]
shl eax, 8
or eax, ecx
add ebp, eax
cmp byte [ebp], 0x54
je case.0x43c92f.84
jmp 0x43c8e8
mov edx, dword [esp + 0x15c]
mov eax, dword [esp + 0x154]
mov ecx, dword [esp + 0x150]
inc edx
push edx
mov edx, dword [esp + 0x14c]
push 0
push eax
push ecx
push edi
push edx
push ebx
inc ebp
push ebp
push esi
call fcn.0043c876
add esp, 0x24
test eax, eax
jne 0x441fae
movzx eax, byte [ebp + 1]
movzx ecx, byte [ebp + 2]
shl eax, 8
or eax, ecx
add ebp, eax
cmp byte [ebp], 0x54
je 0x43cea8
add ebp, 3
jmp 0x43c8e8
inc ebp
mov eax, ebp
movzx edx, byte [eax + 1]
movzx ecx, byte [eax + 2]
shl edx, 8
or edx, ecx
add eax, edx
cmp byte [eax], 0x54
je 0x43cec8
mov edx, dword [esp + 0x15c]
mov ecx, dword [esp + 0x154]
inc edx
push edx
mov edx, dword [esp + 0x154]
push 0
push ecx
mov ecx, dword [esp + 0x154]
push edx
push edi
push ecx
push ebx
add eax, 3
push eax
push esi
call fcn.0043c876
add esp, 0x24
test eax, eax
jne 0x441fae
jmp 0x43c8e8
inc ebp
jmp 0x43cf26
movzx edx, byte [ebp + 1]
movzx eax, byte [ebp + 2]
shl edx, 8
or edx, eax
add ebp, edx
cmp byte [ebp], 0x54
je 0x43cf26
add ebp, 3
jmp 0x43c8e8
movzx ecx, byte [ebp + 1]
movzx edx, byte [ebp + 2]
shl ecx, 8
or ecx, edx
mov edx, ebp
sub edx, ecx
mov al, byte [edx]
mov dword [esp + 0x38], edx
cmp al, 0x61
jb 0x43cf7e
mov ecx, dword [esp + 0x154]
mov ecx, dword [ecx + 4]
mov dword [esp + 0x28], ecx
mov ecx, dword [esp + 0x154]
mov ecx, dword [ecx]
mov dword [esp + 0x154], ecx
jmp 0x43cf86
mov dword [esp + 0x28], 0
cmp al, 0x58
je 0x440f50
cmp al, 0x59
je 0x440f50
cmp al, 0x5a
je 0x440f50
cmp al, 0x5b
je 0x440f50
cmp al, 0x5d
je 0x440f50
cmp al, 0x5f
je 0x43cfba
cmp al, 0x62
jne 0x43d05c
movzx eax, byte [edx + 3]
movzx ecx, byte [edx + 4]
shl eax, 8
or eax, ecx
lea ecx, [eax + eax]
cmp ecx, dword [edi + 0x14]
mov dword [esp + 0x24], eax
mov dword [edi + 0x6c], eax
jl 0x43cfdf
mov dword [edi + 0x2c], 1
jmp 0x43d014
mov edx, dword [edi + 0x10]
sub edx, eax
mov eax, dword [edi + 0xc]
mov edx, dword [eax + edx*4]
mov dword [eax + ecx*4], edx
mov edx, dword [edi + 0xc]
mov eax, esi
sub eax, dword [edi + 0x58]
cmp dword [esp + 0x148], ecx
mov dword [edx + ecx*4 + 4], eax
mov edx, dword [esp + 0x38]
mov eax, dword [esp + 0x24]
jg 0x43d014
add ecx, 2
mov dword [esp + 0x148], ecx
mov ecx, dword [edi + 0x7c]
test ecx, ecx
je 0x43d05c
cmp dword [ecx + 4], eax
jne 0x43d05c
mov ebx, ecx
mov eax, dword [ebx]
mov dword [edi + 0x7c], eax
mov edx, dword [ebx + 0x14]
mov ecx, dword [ebx + 0xc]
mov eax, dword [ebx + 0x10]
add edx, edx
add edx, edx
push edx
mov dword [esp + 0x148], ecx
mov ecx, dword [edi + 0xc]
push eax
push ecx
call fcn.004135d0
mov edx, dword [esp + 0x48]
mov ebp, dword [ebx + 8]
add esp, 0xc
mov dword [esp + 0x150], edx
jmp 0x43c8e8
cmp byte [ebp], 0x55
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x150], eax
je 0x43d077
cmp esi, dword [esp + 0x28]
jne 0x440978
add ebp, 3
jmp 0x43c8e8
cmp dword [edi + 0x30], edx
je 0x43d08d
cmp esi, dword [edi + 0x58]
je case.0x441e59.14
test byte [esp + 0x150], 2
je case.0x43c92f.1
mov eax, dword [edi + 0x58]
cmp esi, eax
je 0x43d105
cmp esi, dword [edi + 0x5c]
je case.0x441e59.14
mov ecx, dword [edi + 0x18]
cmp ecx, edx
je 0x43d0d8
cmp esi, eax
jbe case.0x441e59.14
mov edx, dword [esp + 0x34]
push edx
lea edx, [edi + 0x1c]
push edx
push eax
push ecx
push esi
call fcn.00434979
add esp, 0x14
test eax, eax
je case.0x441e59.14
inc ebp
jmp 0x43c8e8
mov ecx, dword [edi + 0x1c]
add eax, ecx
cmp esi, eax
jb case.0x441e59.14
mov eax, esi
sub eax, ecx
mov dl, byte [eax]
cmp dl, byte [edi + 0x20]
jne case.0x441e59.14
cmp ecx, 1
je 0x43d105
mov al, byte [eax + 1]
cmp al, byte [edi + 0x21]
jne case.0x441e59.14
inc ebp
jmp 0x43c8e8
cmp esi, dword [edi + 0x58]
jne case.0x441e59.14
inc ebp
jmp 0x43c8e8
mov ecx, dword [edi + 0x70]
add ecx, dword [edi + 0x58]
cmp esi, ecx
jne case.0x441e59.14
inc ebp
jmp 0x43c8e8
mov dword [esp + 0x144], esi
inc ebp
jmp 0x43c8e8
test byte [esp + 0x150], 2
je 0x43d1b3
mov eax, dword [edi + 0x5c]
cmp esi, eax
jae 0x43d1a4
mov ecx, dword [edi + 0x18]
cmp ecx, edx
je 0x43d175
mov edx, dword [esp + 0x34]
push edx
lea edx, [edi + 0x1c]
push edx
push eax
push ecx
push esi
call fcn.00434aca
add esp, 0x14
test eax, eax
je case.0x441e59.14
inc ebp
jmp 0x43c8e8
mov ecx, dword [edi + 0x1c]
sub eax, ecx
cmp esi, eax
ja case.0x441e59.14
mov al, byte [esi]
cmp al, byte [edi + 0x20]
jne case.0x441e59.14
cmp ecx, 1
je 0x43d1ad
mov cl, byte [esi + 1]
cmp cl, byte [edi + 0x21]
jne case.0x441e59.14
inc ebp
jmp 0x43c8e8
cmp dword [edi + 0x34], edx
jne case.0x441e59.14
inc ebp
jmp 0x43c8e8
cmp dword [edi + 0x34], edx
jne case.0x441e59.14
cmp dword [edi + 0x40], edx
jne case.0x43c92f.24
mov eax, dword [edi + 0x5c]
cmp esi, eax
je 0x43d22e
mov ecx, dword [edi + 0x18]
cmp ecx, edx
je 0x43d1f5
cmp esi, eax
jae case.0x441e59.14
mov edx, dword [esp + 0x34]
push edx
lea ebx, [edi + 0x1c]
push ebx
push eax
push ecx
push esi
call fcn.00434aca
add esp, 0x14
test eax, eax
je case.0x441e59.14
jmp 0x43d221
mov ecx, dword [edi + 0x1c]
lea ebx, [edi + 0x1c]
sub eax, ecx
cmp esi, eax
ja case.0x441e59.14
mov al, byte [esi]
cmp al, byte [edi + 0x20]
jne case.0x441e59.14
cmp ecx, 1
je 0x43d221
mov cl, byte [esi + 1]
cmp cl, byte [edi + 0x21]
jne case.0x441e59.14
mov edx, dword [edi + 0x5c]
sub edx, dword [ebx]
cmp esi, edx
jne case.0x441e59.14
inc ebp
jmp 0x43c8e8
cmp esi, dword [edi + 0x5c]
jb case.0x441e59.14
inc ebp
jmp 0x43c8e8
cmp dword [esp + 0x34], edx
je 0x43d386
cmp esi, dword [edi + 0x58]
je 0x43d2f5
mov cl, byte [esi - 1]
lea eax, [esi - 1]
and cl, 0xc0
mov dword [esp + 0x14], eax
cmp cl, 0x80
jne 0x43d278
mov dl, byte [eax - 1]
dec eax
and dl, 0xc0
cmp dl, 0x80
je 0x43d268
mov dword [esp + 0x14], eax
movzx edx, byte [eax]
cmp edx, 0xc0
jb 0x43d2dd
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x484750]
mov ebx, dword [eax*4 + 0x484734]
and ebx, edx
lea ecx, [eax + eax*2]
add ecx, ecx
shl ebx, cl
mov edx, ebx
mov ebx, 1
cmp eax, ebx
mov dword [esp + 0x20], edx
mov dword [esp + 0x28], ebx
jl 0x43d2dd
lea esp, [esp]
mov edx, dword [esp + 0x14]
movzx ebx, byte [ebx + edx]
mov edx, dword [esp + 0x20]
and ebx, 0x3f
sub ecx, 6
shl ebx, cl
or edx, ebx
mov ebx, dword [esp + 0x28]
inc ebx
cmp ebx, eax
mov dword [esp + 0x20], edx
mov dword [esp + 0x28], ebx
jle 0x43d2b6
cmp edx, 0x100
jae 0x43d2f5
mov eax, dword [edi + 0x28]
test byte [edx + eax], 0x10
je 0x43d2f5
mov ecx, 1
jmp 0x43d2f7
xor ecx, ecx
mov dword [esp + 0x28], ecx
cmp esi, dword [edi + 0x5c]
jae 0x43d366
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x43d355
mov ecx, edx
and ecx, 0x3f
movzx eax, byte [ecx + 0x484750]
mov ebx, dword [eax*4 + 0x484734]
and ebx, edx
lea ecx, [eax + eax*2]
add ecx, ecx
shl ebx, cl
mov edx, ebx
mov ebx, 1
cmp eax, ebx
mov dword [esp + 0x14], ebx
jl 0x43d351
movzx ebx, byte [ebx + esi]
and ebx, 0x3f
sub ecx, 6
shl ebx, cl
or edx, ebx
mov ebx, dword [esp + 0x14]
inc ebx
cmp ebx, eax
mov dword [esp + 0x14], ebx
jle 0x43d336
mov ecx, dword [esp + 0x28]
cmp edx, 0x100
jae 0x43d366
mov eax, dword [edi + 0x28]
test byte [edx + eax], 0x10
jne 0x43d3b2
xor eax, eax
mov dl, byte [ebp]
inc ebp
cmp dl, 5
jne 0x43d3b9
cmp eax, ecx
jne 0x43c8e8
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
cmp esi, dword [edi + 0x58]
je 0x43d39f
movzx ecx, byte [esi - 1]
mov eax, dword [edi + 0x28]
test byte [ecx + eax], 0x10
je 0x43d39f
mov ecx, 1
jmp 0x43d3a1
xor ecx, ecx
cmp esi, dword [edi + 0x5c]
jae 0x43d366
movzx eax, byte [esi]
mov ebx, dword [edi + 0x28]
test byte [eax + ebx], 0x10
je 0x43d366
mov eax, 1
jmp 0x43d368
cmp eax, ecx
je 0x43c8e8
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
mov ecx, dword [edi + 0x18]
cmp ecx, edx
je 0x43d3fa
mov eax, dword [edi + 0x5c]
cmp esi, eax
jae case.0x43c92f.13
mov edx, dword [esp + 0x34]
push edx
lea edx, [edi + 0x1c]
push edx
push eax
push ecx
push esi
call fcn.00434aca
add esp, 0x14
test eax, eax
jne case.0x441e59.14
jmp case.0x43c92f.13
mov eax, dword [edi + 0x1c]
mov ecx, dword [edi + 0x5c]
sub ecx, eax
cmp esi, ecx
ja case.0x43c92f.13
mov dl, byte [esi]
cmp dl, byte [edi + 0x20]
jne case.0x43c92f.13
cmp eax, 1
je case.0x441e59.14
mov al, byte [esi + 1]
cmp al, byte [edi + 0x21]
je case.0x441e59.14
mov eax, dword [edi + 0x5c]
mov ecx, esi
inc esi
cmp ecx, eax
jae case.0x441e59.14
cmp dword [esp + 0x34], 0
je 0x43d44b
cmp esi, eax
jae 0x43d44b
mov dl, byte [esi]
and dl, 0xc0
cmp dl, 0x80
jne 0x43d44b
inc esi
cmp esi, dword [edi + 0x5c]
jb 0x43d43b
inc ebp
jmp 0x43c8e8
mov eax, esi
inc esi
cmp eax, dword [edi + 0x5c]
jae case.0x441e59.14
inc ebp
jmp 0x43c8e8
cmp esi, dword [edi + 0x5c]
jae case.0x441e59.14
movzx edx, byte [esi]
inc esi
cmp dword [esp + 0x34], 0
je 0x43d4c1
cmp edx, 0xc0
jb 0x43d4c1
mov ecx, edx
and ecx, 0x3f
movzx eax, byte [ecx + 0x484750]
mov ebx, dword [eax*4 + 0x484734]
lea ecx, [eax + eax*2]
and ebx, edx
add ecx, ecx
shl ebx, cl
mov edx, ebx
mov dword [esp + 0x20], edx
test eax, eax
jle 0x43d4c1
nop
movzx ebx, byte [esi]
mov edx, dword [esp + 0x20]
sub ecx, 6
and ebx, 0x3f
shl ebx, cl
dec eax
inc esi
or edx, ebx
mov dword [esp + 0x20], edx
test eax, eax
jg 0x43d4a6
cmp edx, 0x100
jae 0x43d4d6
mov eax, dword [edi + 0x28]
test byte [edx + eax], 4
jne case.0x441e59.14
inc ebp
jmp 0x43c8e8
cmp esi, dword [edi + 0x5c]
jae case.0x441e59.14
movzx edx, byte [esi]
inc esi
cmp dword [esp + 0x34], 0
je 0x43d541
cmp edx, 0xc0
jb 0x43d541
mov ecx, edx
and ecx, 0x3f
movzx eax, byte [ecx + 0x484750]
mov ebx, dword [eax*4 + 0x484734]
lea ecx, [eax + eax*2]
and ebx, edx
add ecx, ecx
shl ebx, cl
mov edx, ebx
mov dword [esp + 0x20], edx
test eax, eax
jle 0x43d541
jmp 0x43d526
movzx ebx, byte [esi]
mov edx, dword [esp + 0x20]
sub ecx, 6
and ebx, 0x3f
shl ebx, cl
dec eax
inc esi
or edx, ebx
mov dword [esp + 0x20], edx
test eax, eax
jg 0x43d526
cmp edx, 0x100
jae case.0x441e59.14
mov eax, dword [edi + 0x28]
test byte [edx + eax], 4
je case.0x441e59.14
inc ebp
jmp 0x43c8e8
cmp esi, dword [edi + 0x5c]
jae case.0x441e59.14
movzx edx, byte [esi]
inc esi
cmp dword [esp + 0x34], 0
je 0x43d5c1
cmp edx, 0xc0
jb 0x43d5c1
mov ecx, edx
and ecx, 0x3f
movzx eax, byte [ecx + 0x484750]
mov ebx, dword [eax*4 + 0x484734]
lea ecx, [eax + eax*2]
and ebx, edx
add ecx, ecx
shl ebx, cl
mov edx, ebx
mov dword [esp + 0x20], edx
test eax, eax
jle 0x43d5c1
lea esp, [esp]
movzx ebx, byte [esi]
mov edx, dword [esp + 0x20]
sub ecx, 6
and ebx, 0x3f
shl ebx, cl
dec eax
inc esi
or edx, ebx
mov dword [esp + 0x20], edx
test eax, eax
jg 0x43d5a6
cmp edx, 0x100
jae 0x43d5d6
mov eax, dword [edi + 0x28]
test byte [edx + eax], 1
jne case.0x441e59.14
inc ebp
jmp 0x43c8e8
cmp esi, dword [edi + 0x5c]
jae case.0x441e59.14
movzx edx, byte [esi]
inc esi
cmp dword [esp + 0x34], 0
je 0x43d641
cmp edx, 0xc0
jb 0x43d641
mov ecx, edx
and ecx, 0x3f
movzx eax, byte [ecx + 0x484750]
mov ebx, dword [eax*4 + 0x484734]
lea ecx, [eax + eax*2]
and ebx, edx
add ecx, ecx
shl ebx, cl
mov edx, ebx
mov dword [esp + 0x20], edx
test eax, eax
jle 0x43d641
jmp 0x43d626
movzx ebx, byte [esi]
mov edx, dword [esp + 0x20]
sub ecx, 6
and ebx, 0x3f
shl ebx, cl
dec eax
inc esi
or edx, ebx
mov dword [esp + 0x20], edx
test eax, eax
jg 0x43d626
cmp edx, 0x100
jae case.0x441e59.14
mov eax, dword [edi + 0x28]
test byte [edx + eax], 1
je case.0x441e59.14
inc ebp
jmp 0x43c8e8
cmp esi, dword [edi + 0x5c]
jae case.0x441e59.14
movzx edx, byte [esi]
inc esi
cmp dword [esp + 0x34], 0
je 0x43d6c1
cmp edx, 0xc0
jb 0x43d6c1
mov ecx, edx
and ecx, 0x3f
movzx eax, byte [ecx + 0x484750]
mov ebx, dword [eax*4 + 0x484734]
lea ecx, [eax + eax*2]
and ebx, edx
add ecx, ecx
shl ebx, cl
mov edx, ebx
mov dword [esp + 0x20], edx
test eax, eax
jle 0x43d6c1
lea esp, [esp]
movzx ebx, byte [esi]
mov edx, dword [esp + 0x20]
sub ecx, 6
and ebx, 0x3f
shl ebx, cl
dec eax
inc esi
or edx, ebx
mov dword [esp + 0x20], edx
test eax, eax
jg 0x43d6a6
cmp edx, 0x100
jae 0x43d6d6
mov eax, dword [edi + 0x28]
test byte [edx + eax], 0x10
jne case.0x441e59.14
inc ebp
jmp 0x43c8e8
cmp esi, dword [edi + 0x5c]
jae case.0x441e59.14
movzx edx, byte [esi]
inc esi
cmp dword [esp + 0x34], 0
je 0x43d741
cmp edx, 0xc0
jb 0x43d741
mov ecx, edx
and ecx, 0x3f
movzx eax, byte [ecx + 0x484750]
mov ebx, dword [eax*4 + 0x484734]
lea ecx, [eax + eax*2]
and ebx, edx
add ecx, ecx
shl ebx, cl
mov edx, ebx
mov dword [esp + 0x20], edx
test eax, eax
jle 0x43d741
jmp 0x43d726
movzx ebx, byte [esi]
mov edx, dword [esp + 0x20]
sub ecx, 6
and ebx, 0x3f
shl ebx, cl
dec eax
inc esi
or edx, ebx
mov dword [esp + 0x20], edx
test eax, eax
jg 0x43d726
cmp edx, 0x100
jae case.0x441e59.14
mov eax, dword [edi + 0x28]
test byte [edx + eax], 0x10
je case.0x441e59.14
inc ebp
jmp 0x43c8e8
cmp esi, dword [edi + 0x5c]
jae case.0x441e59.14
movzx eax, byte [esi]
inc esi
cmp dword [esp + 0x34], edx
je 0x43d7c1
cmp eax, 0xc0
jb 0x43d7c1
mov ecx, eax
and ecx, 0x3f
movzx edx, byte [ecx + 0x484750]
mov ebx, dword [edx*4 + 0x484734]
lea ecx, [edx + edx*2]
and ebx, eax
add ecx, ecx
shl ebx, cl
mov eax, ebx
test edx, edx
jle 0x43d7c1
jmp 0x43d7aa
mov ecx, dword [esp + 0x14]
movzx ebx, byte [esi]
sub ecx, 6
and ebx, 0x3f
shl ebx, cl
dec edx
inc esi
mov dword [esp + 0x14], ecx
or eax, ebx
test edx, edx
jg 0x43d7a6
cmp eax, 0xd
ja 0x43d7ef
je 0x43d7de
cmp eax, 0xa
je 0x43d816
jbe case.0x441e59.14
cmp eax, 0xc
ja case.0x441e59.14
jmp 0x43d80c
cmp esi, dword [edi + 0x5c]
jae 0x43d816
cmp byte [esi], 0xa
jne 0x43d816
inc esi
inc ebp
jmp 0x43c8e8
cmp eax, 0x85
je 0x43d80c
cmp eax, 0x2027
jbe case.0x441e59.14
cmp eax, 0x2029
ja case.0x441e59.14
cmp dword [edi + 0x50], 0
jne case.0x441e59.14
inc ebp
jmp 0x43c8e8
cmp esi, dword [edi + 0x5c]
jae case.0x441e59.14
movzx eax, byte [esi]
inc esi
cmp dword [esp + 0x34], edx
je 0x43d875
cmp eax, 0xc0
jb 0x43d875
mov edx, eax
and edx, 0x3f
movzx edx, byte [edx + 0x484750]
mov ebx, dword [edx*4 + 0x484734]
lea ecx, [edx + edx*2]
and ebx, eax
add ecx, ecx
shl ebx, cl
mov eax, ebx
test edx, edx
jle 0x43d875
jmp 0x43d85e
mov ecx, dword [esp + 0x14]
movzx ebx, byte [esi]
sub ecx, 6
and ebx, 0x3f
shl ebx, cl
dec edx
inc esi
mov dword [esp + 0x14], ecx
or eax, ebx
test edx, edx
jg 0x43d85a
cmp eax, 0x180e
ja 0x43d8b8
je case.0x441e59.14
cmp eax, 0xa0
ja 0x43d8a7
je case.0x441e59.14
cmp eax, 9
je case.0x441e59.14
cmp eax, 0x20
je case.0x441e59.14
inc ebp
jmp 0x43c8e8
cmp eax, 0x1680
je case.0x441e59.14
inc ebp
jmp 0x43c8e8
cmp eax, 0x205f
ja 0x43d8e8
je case.0x441e59.14
cmp eax, 0x2000
jb 0x43d8f3
cmp eax, 0x200a
jbe case.0x441e59.14
cmp eax, 0x202f
je case.0x441e59.14
inc ebp
jmp 0x43c8e8
cmp eax, 0x3000
je case.0x441e59.14
inc ebp
jmp 0x43c8e8
cmp esi, dword [edi + 0x5c]
jae case.0x441e59.14
movzx eax, byte [esi]
inc esi
cmp dword [esp + 0x34], edx
je 0x43d952
cmp eax, 0xc0
jb 0x43d952
mov ecx, eax
and ecx, 0x3f
movzx edx, byte [ecx + 0x484750]
mov ebx, dword [edx*4 + 0x484734]
lea ecx, [edx + edx*2]
and ebx, eax
add ecx, ecx
shl ebx, cl
mov eax, ebx
test edx, edx
jle 0x43d952
jmp 0x43d93b
mov ecx, dword [esp + 0x14]
movzx ebx, byte [esi]
sub ecx, 6
and ebx, 0x3f
shl ebx, cl
dec edx
inc esi
mov dword [esp + 0x14], ecx
or eax, ebx
test edx, edx
jg 0x43d937
cmp eax, 0x180e
ja 0x43d989
je 0x43d9c0
cmp eax, 0xa0
ja 0x43d978
je 0x43d9c0
cmp eax, 9
je 0x43d9c0
cmp eax, 0x20
jne case.0x441e59.14
inc ebp
jmp 0x43c8e8
cmp eax, 0x1680
jne case.0x441e59.14
inc ebp
jmp 0x43c8e8
cmp eax, 0x205f
ja 0x43d9b5
je 0x43d9c0
cmp eax, 0x2000
jb case.0x441e59.14
cmp eax, 0x200a
jbe 0x43d9c0
cmp eax, 0x202f
jne case.0x441e59.14
inc ebp
jmp 0x43c8e8
cmp eax, 0x3000
jne case.0x441e59.14
inc ebp
jmp 0x43c8e8
cmp esi, dword [edi + 0x5c]
jae case.0x441e59.14
movzx eax, byte [esi]
inc esi
cmp dword [esp + 0x34], edx
je 0x43da21
cmp eax, 0xc0
jb 0x43da21
mov edx, eax
and edx, 0x3f
movzx edx, byte [edx + 0x484750]
mov ebx, dword [edx*4 + 0x484734]
lea ecx, [edx + edx*2]
and ebx, eax
add ecx, ecx
shl ebx, cl
mov eax, ebx
test edx, edx
jle 0x43da21
jmp 0x43da0a
mov ecx, dword [esp + 0x14]
movzx ebx, byte [esi]
sub ecx, 6
and ebx, 0x3f
shl ebx, cl
dec edx
inc esi
mov dword [esp + 0x14], ecx
or eax, ebx
test edx, edx
jg 0x43da06
cmp eax, 0x85
ja 0x43da42
je case.0x441e59.14
cmp eax, 0xa
jb 0x43da54
cmp eax, 0xd
jbe case.0x441e59.14
inc ebp
jmp 0x43c8e8
cmp eax, 0x2028
jb 0x43da54
cmp eax, 0x2029
jbe case.0x441e59.14
inc ebp
jmp 0x43c8e8
cmp esi, dword [edi + 0x5c]
jae case.0x441e59.14
movzx eax, byte [esi]
inc esi
cmp dword [esp + 0x34], edx
je 0x43dab3
cmp eax, 0xc0
jb 0x43dab3
mov ecx, eax
and ecx, 0x3f
movzx edx, byte [ecx + 0x484750]
mov ebx, dword [edx*4 + 0x484734]
lea ecx, [edx + edx*2]
and ebx, eax
add ecx, ecx
shl ebx, cl
mov eax, ebx
test edx, edx
jle 0x43dab3
jmp 0x43da9c
mov ecx, dword [esp + 0x14]
movzx ebx, byte [esi]
sub ecx, 6
and ebx, 0x3f
shl ebx, cl
dec edx
inc esi
mov dword [esp + 0x14], ecx
or eax, ebx
test edx, edx
jg 0x43da98
cmp eax, 0x85
ja 0x43dad4
je 0x43daea
cmp eax, 0xa
jb case.0x441e59.14
cmp eax, 0xd
ja case.0x441e59.14
inc ebp
jmp 0x43c8e8
cmp eax, 0x2028
jb case.0x441e59.14
cmp eax, 0x2029
ja case.0x441e59.14
inc ebp
jmp 0x43c8e8
movzx eax, byte [ebp + 1]
movzx ecx, byte [ebp + 2]
shl eax, 8
or eax, ecx
add eax, eax
add ebp, 3
cmp eax, dword [esp + 0x148]
mov dword [esp + 0x28], eax
jge 0x43db22
mov ecx, dword [edi + 0xc]
lea eax, [ecx + eax*4]
mov ecx, dword [eax]
cmp ecx, edx
jl 0x43db22
mov edx, dword [eax + 4]
sub edx, ecx
jmp 0x43db2d
cmp dword [edi + 0x3c], edx
jne 0x43db2d
mov edx, dword [edi + 0x5c]
sub edx, esi
inc edx
movzx eax, byte [ebp]
lea ecx, [eax - 0x46]
mov dword [esp + 0x24], edx
cmp ecx, 7
ja case.default.0x43db48
movzx ecx, byte [ecx + 0x44214e]
jmp dword [ecx*4 + 0x442146]
add eax, 0xffffffba
movzx ecx, al
and ecx, 1
mov dword [esp + 0x2c], ecx
movsx ecx, byte [eax + 0x4851e8]
movsx eax, byte [eax + 0x4851f0]
inc ebp
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
test eax, eax
jne 0x43dbc3
mov eax, accept
mov dword [esp + 0x18], eax
jmp 0x43dbc3
movzx ecx, byte [ebp + 1]
movzx eax, byte [ebp + 2]
xor edx, edx
cmp byte [ebp], 0x4d
sete dl
shl ecx, 8
or ecx, eax
movzx eax, byte [ebp + 3]
shl eax, 8
mov dword [esp + 0x2c], edx
movzx edx, byte [ebp + 4]
or eax, edx
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
jne 0x43dbbc
mov eax, accept
mov dword [esp + 0x18], eax
mov edx, dword [esp + 0x24]
add ebp, 5
test edx, edx
je 0x43c8e8
cmp ecx, 1
mov dword [esp + 0x10], 1
jl 0x43dc25
jmp 0x43dbe6
mov eax, dword [esp + 0x150]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
push eax
push edi
push ecx
push esi
push edx
call fcn.00434c56
add esp, 0x14
test eax, eax
je case.0x441e59.14
mov eax, dword [esp + 0x10]
add esi, dword [esp + 0x24]
inc eax
cmp eax, dword [esp + 0x1c]
mov dword [esp + 0x10], eax
jle 0x43dbe6
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
cmp ecx, eax
je 0x43c8e8
cmp dword [esp + 0x2c], 0
je 0x440f6d
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x154]
mov edx, dword [esp + 0x150]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x15c]
inc eax
push eax
push 0
push ecx
push edx
push edi
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x15c]
push eax
push ebx
push ebp
push esi
call fcn.0043c876
add esp, 0x24
test eax, eax
jne 0x441fae
jmp 0x43dc86
mov ecx, dword [esp + 0x18]
cmp dword [esp + 0x10], ecx
jge case.0x441e59.14
mov edx, dword [esp + 0x150]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
push edx
push edi
push eax
push esi
push ecx
call fcn.00434c56
add esp, 0x14
test eax, eax
je case.0x441e59.14
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x154]
mov ecx, dword [esp + 0x150]
add esi, dword [esp + 0x24]
inc dword [esp + 0x10]
push edx
mov edx, dword [esp + 0x14c]
push 0
push eax
push ecx
push edi
push edx
push ebx
push ebp
push esi
call fcn.0043c876
add esp, 0x24
test eax, eax
je 0x43dc86
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
mov eax, dword [esp + 0x150]
mov ebx, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
push eax
push edi
push ebx
push esi
push ecx
call fcn.00434c56
add esp, 0x14
test eax, eax
je case.0x441e59.14
add esi, ebx
jmp 0x43c8e8
mov al, byte [ebp + 0x21]
lea edx, [ebp + 1]
add ebp, 0x21
movzx ecx, al
mov dword [esp + 0x38], edx
lea edx, [ecx - 0x46]
cmp edx, 7
ja case.default.0x43dd48
movzx edx, byte [edx + 0x44215e]
jmp dword [edx*4 + 0x442156]
add ecx, 0xffffffba
movzx eax, cl
mov edx, 1
and eax, edx
mov dword [esp + 0x2c], eax
movsx eax, byte [ecx + 0x4851e8]
movsx ecx, byte [ecx + 0x4851f0]
add ebp, edx
mov dword [esp + 0x1c], eax
mov dword [esp + 0x18], ecx
test ecx, ecx
jne 0x43ddd6
mov dword [esp + 0x18], accept
jmp 0x43ddd6
movzx edx, byte [ebp + 2]
xor ecx, ecx
cmp al, 0x4d
movzx eax, byte [ebp + 1]
sete cl
shl eax, 8
or eax, edx
movzx edx, byte [ebp + 4]
mov dword [esp + 0x1c], eax
mov dword [esp + 0x2c], ecx
movzx ecx, byte [ebp + 3]
shl ecx, 8
or ecx, edx
mov dword [esp + 0x18], ecx
jne 0x43ddbd
mov dword [esp + 0x18], accept
add ebp, 5
mov edx, 1
jmp 0x43ddd6
mov edx, 1
mov dword [esp + 0x18], edx
mov eax, edx
mov dword [esp + 0x1c], edx
cmp dword [esp + 0x34], 0
mov dword [esp + 0x10], edx
je 0x43deb4
cmp eax, edx
jl 0x43def4
cmp esi, dword [edi + 0x5c]
jae case.0x441e59.14
movzx edx, byte [esi]
inc esi
cmp edx, 0xc0
jb 0x43de66
mov ecx, edx
and ecx, 0x3f
movzx ecx, byte [ecx + 0x484750]
mov dword [esp + 0x24], ecx
lea ecx, [ecx + ecx*2]
add ecx, ecx
mov dword [esp + 0x14], ecx
mov ecx, dword [esp + 0x24]
mov ecx, dword [ecx*4 + 0x484734]
and ecx, edx
mov edx, ecx
mov ecx, dword [esp + 0x14]
shl edx, cl
cmp dword [esp + 0x24], 0
mov dword [esp + 0x20], edx
jle 0x43de66
movzx edx, byte [esi]
mov ecx, dword [esp + 0x14]
dec dword [esp + 0x24]
sub ecx, 6
and edx, 0x3f
shl edx, cl
mov dword [esp + 0x14], ecx
inc esi
mov ecx, edx
mov edx, dword [esp + 0x20]
or edx, ecx
cmp dword [esp + 0x24], 0
mov dword [esp + 0x20], edx
jg 0x43de3b
mov ecx, 0x4e
cmp edx, 0xff
jbe 0x43de7f
cmp dword [esp + 0x28], ecx
je case.0x441e59.14
jmp 0x43dea1
mov ecx, edx
and ecx, 7
mov eax, 1
shl eax, cl
mov ecx, dword [esp + 0x38]
shr edx, 3
mov dl, byte [edx + ecx]
test dl, al
je case.0x441e59.14
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x10]
inc ecx
cmp ecx, eax
mov dword [esp + 0x10], ecx
jle 0x43dded
jmp 0x43def4
cmp eax, edx
jl 0x43def4
cmp esi, dword [edi + 0x5c]
jae case.0x441e59.14
movzx eax, byte [esi]
mov ecx, eax
and ecx, 7
mov edx, 1
shl edx, cl
mov ecx, dword [esp + 0x38]
shr eax, 3
mov al, byte [eax + ecx]
inc esi
test al, dl
je case.0x441e59.14
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x1c]
inc ecx
cmp ecx, eax
mov dword [esp + 0x10], ecx
jle 0x43deb8
mov ecx, dword [esp + 0x18]
cmp eax, ecx
je 0x43c8e8
cmp dword [esp + 0x2c], 0
mov dword [esp + 0x10], eax
je 0x4410fd
mov eax, dword [esp + 0x15c]
mov edx, dword [esp + 0x154]
mov ecx, dword [esp + 0x148]
inc eax
push eax
push 0
push edx
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x15c]
push eax
push edi
push ecx
push ebx
push ebp
push esi
call fcn.0043c876
add esp, 0x24
cmp dword [esp + 0x34], 0
je 0x441075
test eax, eax
jne 0x441fae
nop
mov edx, dword [esp + 0x18]
cmp dword [esp + 0x10], edx
jge case.0x441e59.14
cmp esi, dword [edi + 0x5c]
jae case.0x441e59.14
movzx eax, byte [esi]
inc esi
cmp eax, 0xc0
jb 0x43dfc5
mov ecx, eax
and ecx, 0x3f
movzx edx, byte [ecx + 0x484750]
lea ecx, [edx + edx*2]
add ecx, ecx
mov dword [esp + 0x14], ecx
mov ecx, dword [edx*4 + 0x484734]
and ecx, eax
mov eax, ecx
mov ecx, dword [esp + 0x14]
shl eax, cl
test edx, edx
jle 0x43dfc5
mov ecx, dword [esp + 0x14]
dec edx
mov dword [esp + 0x30], edx
movzx edx, byte [esi]
sub ecx, 6
and edx, 0x3f
shl edx, cl
inc esi
mov dword [esp + 0x14], ecx
or eax, edx
mov edx, dword [esp + 0x30]
test edx, edx
jg 0x43dfa2
cmp eax, 0xff
jbe 0x441015
cmp dword [esp + 0x28], 0x4e
je case.0x441e59.14
jmp 0x441033
movzx edx, byte [ebp + 1]
movzx eax, byte [ebp + 2]
shl edx, 8
or edx, eax
lea ecx, [ebp + 3]
add ebp, edx
mov dword [esp + 0x38], ecx
mov cl, byte [ebp]
movzx eax, cl
lea edx, [eax - 0x46]
cmp edx, 7
ja case.default.0x43e00b
movzx edx, byte [edx + 0x44216e]
jmp dword [edx*4 + 0x442166]
add eax, 0xffffffba
movzx ecx, al
and ecx, 1
mov dword [esp + 0x2c], ecx
movsx ecx, byte [eax + 0x4851e8]
movsx eax, byte [eax + 0x4851f0]
inc ebp
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
test eax, eax
jne 0x43e08e
mov eax, accept
jmp 0x43e08a
movzx edx, byte [ebp + 2]
xor eax, eax
cmp cl, 0x4d
movzx ecx, byte [ebp + 1]
sete al
shl ecx, 8
or ecx, edx
movzx edx, byte [ebp + 4]
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x2c], eax
movzx eax, byte [ebp + 3]
shl eax, 8
or eax, edx
mov dword [esp + 0x18], eax
jne 0x43e07a
mov eax, accept
mov dword [esp + 0x18], eax
add ebp, 5
jmp 0x43e08e
mov eax, 1
mov ecx, eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
cmp ecx, 1
mov dword [esp + 0x10], 1
jl 0x43e13b
cmp esi, dword [edi + 0x5c]
jae case.0x441e59.14
movzx ecx, byte [esi]
inc esi
cmp dword [esp + 0x34], 0
je 0x43e10c
cmp ecx, 0xc0
jb 0x43e10c
mov eax, ecx
and eax, 0x3f
movzx eax, byte [eax + 0x484750]
lea edx, [eax + eax*2]
add edx, edx
mov dword [esp + 0x14], edx
mov edx, dword [eax*4 + 0x484734]
and edx, ecx
mov ecx, dword [esp + 0x14]
shl edx, cl
mov ecx, edx
mov dword [esp + 0x20], ecx
test eax, eax
jle 0x43e10c
movzx edx, byte [esi]
mov ecx, dword [esp + 0x14]
sub ecx, 6
and edx, 0x3f
shl edx, cl
mov dword [esp + 0x14], ecx
mov ecx, dword [esp + 0x20]
dec eax
or ecx, edx
inc esi
mov dword [esp + 0x20], ecx
test eax, eax
jg 0x43e0e9
mov eax, dword [esp + 0x38]
push eax
push ecx
call fcn.00434695
add esp, 8
test eax, eax
je case.0x441e59.14
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x1c]
inc eax
cmp eax, ecx
mov dword [esp + 0x10], eax
jle 0x43e09f
mov eax, dword [esp + 0x18]
cmp ecx, eax
je 0x43c8e8
cmp dword [esp + 0x2c], 0
je 0x44130d
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x154]
mov edx, dword [esp + 0x150]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x15c]
inc eax
push eax
push 0
push ecx
push edx
push edi
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x15c]
push eax
push ebx
push ebp
push esi
call fcn.0043c876
add esp, 0x24
test eax, eax
jne 0x441fae
jmp 0x43e196
mov ecx, dword [esp + 0x18]
cmp dword [esp + 0x10], ecx
jge case.0x441e59.14
cmp esi, dword [edi + 0x5c]
jae case.0x441e59.14
movzx ecx, byte [esi]
inc esi
cmp dword [esp + 0x34], 0
je 0x43e219
cmp ecx, 0xc0
jb 0x43e219
mov edx, ecx
and edx, 0x3f
movzx eax, byte [edx + 0x484750]
lea edx, [eax + eax*2]
add edx, edx
mov dword [esp + 0x14], edx
mov edx, dword [eax*4 + 0x484734]
and edx, ecx
mov ecx, dword [esp + 0x14]
shl edx, cl
mov ecx, edx
mov dword [esp + 0x20], ecx
test eax, eax
jle 0x43e219
jmp 0x43e1f6
movzx edx, byte [esi]
mov ecx, dword [esp + 0x14]
sub ecx, 6
and edx, 0x3f
shl edx, cl
mov dword [esp + 0x14], ecx
mov ecx, dword [esp + 0x20]
dec eax
or ecx, edx
inc esi
mov dword [esp + 0x20], ecx
test eax, eax
jg 0x43e1f6
mov eax, dword [esp + 0x38]
push eax
push ecx
call fcn.00434695
add esp, 8
test eax, eax
je case.0x441e59.14
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x154]
mov eax, dword [esp + 0x150]
inc dword [esp + 0x10]
push ecx
mov ecx, dword [esp + 0x14c]
push 0
push edx
push eax
push edi
push ecx
push ebx
push ebp
push esi
call fcn.0043c876
add esp, 0x24
test eax, eax
je 0x43e196
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
cmp dword [esp + 0x34], edx
je 0x43e2c1
movzx eax, byte [ebp + 1]
inc ebp
mov ecx, 1
cmp eax, 0xc0
jb 0x43e293
and eax, 0x3f
movzx ecx, byte [eax + 0x484750]
inc ecx
mov edx, dword [edi + 0x5c]
sub edx, esi
cmp ecx, edx
jg case.0x441e59.14
test ecx, ecx
jle 0x43c8e8
mov al, byte [ebp]
mov dl, byte [esi]
dec ecx
inc esi
inc ebp
cmp al, dl
jne case.0x441e59.14
test ecx, ecx
jg 0x43e2a8
jmp 0x43c8e8
mov eax, dword [edi + 0x5c]
sub eax, esi
cmp eax, 1
jl case.0x441e59.14
mov cl, byte [esi]
inc esi
cmp byte [ebp + 1], cl
jne case.0x441e59.14
add ebp, 2
jmp 0x43c8e8
cmp dword [esp + 0x34], edx
je 0x43e404
movzx ecx, byte [ebp + 1]
inc ebp
mov edx, ecx
mov eax, 1
mov dword [esp + 0x24], eax
mov dword [esp + 0x30], ecx
cmp edx, 0xc0
jb 0x43e358
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x484750]
mov ebx, dword [eax*4 + 0x484734]
and ebx, edx
lea ecx, [eax + eax*2]
add ecx, ecx
shl ebx, cl
mov edx, ebx
mov ebx, 1
cmp eax, ebx
mov dword [esp + 0x14], ebx
jl 0x43e34f
movzx ebx, byte [ebx + ebp]
and ebx, 0x3f
sub ecx, 6
shl ebx, cl
or edx, ebx
mov ebx, dword [esp + 0x14]
inc ebx
cmp ebx, eax
mov dword [esp + 0x14], ebx
jle 0x43e334
mov ecx, dword [esp + 0x30]
inc eax
mov dword [esp + 0x24], eax
mov ebx, dword [edi + 0x5c]
sub ebx, esi
cmp eax, ebx
jg case.0x441e59.14
cmp edx, 0x80
jae 0x43e38e
movzx edx, byte [esi]
mov eax, dword [edi + 0x24]
mov dl, byte [edx + eax]
inc esi
inc ebp
cmp byte [eax + ecx], dl
je 0x43c8e8
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
movzx ecx, byte [esi]
inc esi
cmp ecx, 0xc0
jb 0x43e3eb
mov eax, ecx
and eax, 0x3f
movzx eax, byte [eax + 0x484750]
lea ebx, [eax + eax*2]
add ebx, ebx
mov dword [esp + 0x14], ebx
mov ebx, dword [eax*4 + 0x484734]
and ebx, ecx
mov ecx, dword [esp + 0x14]
shl ebx, cl
mov ecx, ebx
mov dword [esp + 0x28], ecx
test eax, eax
jle 0x43e3eb
movzx ebx, byte [esi]
mov ecx, dword [esp + 0x14]
sub ecx, 6
and ebx, 0x3f
shl ebx, cl
mov dword [esp + 0x14], ecx
mov ecx, dword [esp + 0x28]
dec eax
or ecx, ebx
inc esi
mov dword [esp + 0x28], ecx
test eax, eax
jg 0x43e3c8
add ebp, dword [esp + 0x24]
cmp edx, ecx
je 0x43c8e8
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
mov ecx, dword [edi + 0x5c]
sub ecx, esi
cmp ecx, 1
jl case.0x441e59.14
movzx ecx, byte [esi]
mov eax, dword [edi + 0x24]
movzx edx, byte [ebp + 1]
mov cl, byte [ecx + eax]
inc esi
cmp byte [edx + eax], cl
jne case.0x441e59.14
add ebp, 2
jmp 0x43c8e8
movzx eax, byte [ebp + 1]
movzx edx, byte [ebp + 2]
shl eax, 8
or eax, edx
mov ecx, eax
mov dword [esp + 0x1c], ecx
add ebp, 3
jmp 0x43e4df
mov dword [esp + 0x38], 1
movzx eax, byte [ebp + 1]
movzx edx, byte [ebp + 2]
shl eax, 8
or eax, edx
xor edx, edx
xor ecx, ecx
cmp byte [ebp], 0x26
mov dword [esp + 0x1c], ecx
sete dl
add ebp, 3
mov dword [esp + 0x2c], edx
jmp 0x43e4df
xor ecx, ecx
mov dword [esp + 0x38], 1
mov dword [esp + 0x1c], ecx
inc ebp
jmp 0x43e4da
mov ecx, 1
mov dword [esp + 0x38], ecx
mov dword [esp + 0x1c], ecx
add ebp, ecx
jmp 0x43e4da
mov eax, 1
xor ecx, ecx
mov dword [esp + 0x38], eax
mov dword [esp + 0x1c], ecx
add ebp, eax
jmp 0x43e4df
movzx eax, byte [ebp]
sub eax, 0x1f
movzx ecx, al
and ecx, 1
mov dword [esp + 0x2c], ecx
movsx ecx, byte [eax + 0x4851e8]
movsx eax, byte [eax + 0x4851f0]
inc ebp
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
test eax, eax
jne 0x43e4e3
mov eax, accept
mov dword [esp + 0x18], eax
cmp dword [esp + 0x34], 0
je 0x43e6d0
movzx edx, byte [ebp]
mov dword [esp + 0x24], 1
mov dword [esp + 0x28], ebp
mov dword [esp + 0x20], edx
cmp edx, 0xc0
jb 0x43e583
and edx, 0x3f
movzx ecx, byte [edx + 0x484750]
lea edx, [ecx + ecx*2]
add edx, edx
mov dword [esp + 0x14], edx
mov edx, dword [ecx*4 + 0x484734]
and edx, dword [esp + 0x20]
mov dword [esp + 0x10], ecx
mov ecx, dword [esp + 0x14]
shl edx, cl
mov ecx, 1
mov dword [esp + 0x24], ecx
mov dword [esp + 0x20], edx
mov edx, dword [esp + 0x10]
cmp edx, ecx
jl 0x43e57a
movzx ecx, byte [ecx + ebp]
mov edx, dword [esp + 0x14]
sub edx, 6
and ecx, 0x3f
mov dword [esp + 0x30], ecx
mov ecx, edx
mov dword [esp + 0x14], edx
mov edx, dword [esp + 0x30]
shl edx, cl
mov ecx, dword [esp + 0x24]
inc ecx
mov dword [esp + 0x24], ecx
or dword [esp + 0x20], edx
mov edx, dword [esp + 0x10]
cmp ecx, edx
jle 0x43e547
mov ecx, dword [esp + 0x1c]
inc edx
mov dword [esp + 0x24], edx
imul ecx, dword [esp + 0x24]
mov edx, dword [edi + 0x5c]
sub edx, esi
cmp ecx, edx
jg case.0x441e59.14
mov ecx, dword [esp + 0x24]
mov edx, 1
add ebp, ecx
cmp ecx, edx
jle 0x43e6ee
cmp dword [esp + 0x1c], edx
mov dword [esp + 0x10], edx
jl 0x43e5e4
lea esp, [esp]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
push eax
push ecx
push esi
call fcn.00413935
add esp, 0xc
test eax, eax
jne case.0x441e59.14
mov eax, dword [esp + 0x10]
add esi, dword [esp + 0x24]
inc eax
cmp eax, dword [esp + 0x1c]
mov dword [esp + 0x10], eax
jle 0x43e5b6
mov edx, dword [esp + 0x18]
cmp dword [esp + 0x1c], edx
je 0x43c8e8
cmp dword [esp + 0x2c], 0
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x10], eax
jne 0x44146c
cmp eax, edx
mov dword [esp + 0x2c], esi
jge 0x43e642
mov eax, dword [edi + 0x5c]
sub eax, dword [esp + 0x24]
cmp esi, eax
ja 0x43e642
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
push ecx
push edx
push esi
call fcn.00413935
add esp, 0xc
test eax, eax
jne 0x43e642
mov eax, dword [esp + 0x10]
add esi, dword [esp + 0x24]
inc eax
cmp eax, dword [esp + 0x18]
mov dword [esp + 0x10], eax
jl 0x43e60d
cmp dword [esp + 0x38], 0
jne 0x43c8e8
mov eax, dword [esp + 0x15c]
mov edx, dword [esp + 0x154]
mov ecx, dword [esp + 0x148]
inc eax
push eax
push 0
push edx
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x15c]
push eax
push edi
push ecx
push ebx
push ebp
push esi
call fcn.0043c876
add esp, 0x24
test eax, eax
jne 0x441fae
cmp esi, dword [esp + 0x2c]
je case.0x441e59.14
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x154]
mov ecx, dword [esp + 0x150]
sub esi, dword [esp + 0x24]
push edx
mov edx, dword [esp + 0x14c]
push 0
push eax
push ecx
push edi
push edx
push ebx
push ebp
push esi
call fcn.0043c876
add esp, 0x24
test eax, eax
je 0x43e688
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
mov edx, dword [edi + 0x5c]
sub edx, esi
cmp ecx, edx
jg case.0x441e59.14
movzx edx, byte [ebp]
mov dword [esp + 0x20], edx
mov edx, 1
add ebp, edx
jmp 0x43e6f2
mov ecx, dword [esp + 0x1c]
test byte [esp + 0x150], 1
je 0x43e7f2
mov edx, dword [esp + 0x20]
mov ecx, dword [edi + 0x24]
movzx ecx, byte [ecx + edx]
mov dword [esp + 0x20], ecx
mov ecx, dword [esp + 0x1c]
cmp ecx, 1
mov dword [esp + 0x10], 1
jl 0x43e74c
lea ebx, [ebx]
movzx edx, byte [esi]
mov ecx, dword [edi + 0x24]
movzx ecx, byte [edx + ecx]
inc esi
cmp dword [esp + 0x20], ecx
jne case.0x441e59.14
mov edx, dword [esp + 0x10]
mov ecx, dword [esp + 0x1c]
inc edx
cmp edx, ecx
mov dword [esp + 0x10], edx
jle 0x43e726
cmp ecx, eax
je 0x43c8e8
cmp dword [esp + 0x2c], 0
jne 0x44151a
cmp ecx, eax
mov dword [esp + 0x2c], esi
mov dword [esp + 0x10], ecx
jge 0x43e78e
cmp esi, dword [edi + 0x5c]
jae 0x43e78e
movzx edx, byte [esi]
mov ecx, dword [edi + 0x24]
movzx ecx, byte [edx + ecx]
cmp dword [esp + 0x20], ecx
jne 0x43e78e
mov ecx, dword [esp + 0x10]
inc ecx
inc esi
cmp ecx, eax
mov dword [esp + 0x10], ecx
jl 0x43e76b
cmp dword [esp + 0x38], 0
jne 0x43c8e8
cmp esi, dword [esp + 0x2c]
jb 0x43e7e5
mov eax, dword [esp + 0x15c]
inc eax
mov dword [esp + 0x1c], eax
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x154]
mov eax, dword [esp + 0x150]
push ecx
mov ecx, dword [esp + 0x14c]
push 0
push edx
push eax
push edi
push ecx
push ebx
push ebp
push esi
call fcn.0043c876
add esp, 0x24
dec esi
test eax, eax
jne 0x441fae
cmp esi, dword [esp + 0x2c]
jae 0x43e7ab
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
cmp ecx, edx
mov dword [esp + 0x10], edx
jl 0x43e819
movzx edx, byte [esi]
inc esi
cmp dword [esp + 0x20], edx
jne case.0x441e59.14
mov edx, dword [esp + 0x10]
mov ecx, dword [esp + 0x1c]
inc edx
cmp edx, ecx
mov dword [esp + 0x10], edx
jle 0x43e7fa
cmp ecx, eax
je 0x43c8e8
cmp dword [esp + 0x2c], 0
jne 0x4415d0
cmp ecx, eax
mov dword [esp + 0x2c], esi
mov dword [esp + 0x10], ecx
jge 0x43e854
cmp esi, dword [edi + 0x5c]
jae 0x43e854
movzx ecx, byte [esi]
cmp dword [esp + 0x20], ecx
jne 0x43e854
mov ecx, dword [esp + 0x10]
inc ecx
inc esi
cmp ecx, eax
mov dword [esp + 0x10], ecx
jl 0x43e838
cmp dword [esp + 0x38], 0
jne 0x43c8e8
cmp esi, dword [esp + 0x2c]
jb 0x43e8b0
mov eax, dword [esp + 0x15c]
inc eax
mov dword [esp + 0x1c], eax
jmp 0x43e876
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x154]
mov eax, dword [esp + 0x150]
push ecx
mov ecx, dword [esp + 0x14c]
push 0
push edx
push eax
push edi
push ecx
push ebx
push ebp
push esi
call fcn.0043c876
add esp, 0x24
dec esi
test eax, eax
jne 0x441fae
cmp esi, dword [esp + 0x2c]
jae 0x43e876
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
cmp esi, dword [edi + 0x5c]
jae case.0x441e59.14
movzx eax, byte [esi]
inc ebp
inc esi
cmp dword [esp + 0x34], edx
je 0x43e917
cmp eax, 0xc0
jb 0x43e917
mov edx, eax
and edx, 0x3f
movzx edx, byte [edx + 0x484750]
mov ebx, dword [edx*4 + 0x484734]
lea ecx, [edx + edx*2]
and ebx, eax
add ecx, ecx
shl ebx, cl
mov eax, ebx
test edx, edx
jle 0x43e917
jmp 0x43e900
mov ecx, dword [esp + 0x30]
movzx ebx, byte [esi]
sub ecx, 6
and ebx, 0x3f
shl ebx, cl
dec edx
inc esi
mov dword [esp + 0x30], ecx
or eax, ebx
test edx, edx
jg 0x43e8fc
test byte [esp + 0x150], 1
je 0x43e950
cmp eax, 0x100
jae 0x43e92f
mov ecx, dword [edi + 0x24]
movzx eax, byte [ecx + eax]
movzx edx, byte [ebp]
mov ecx, dword [edi + 0x24]
movzx edx, byte [ecx + edx]
inc ebp
cmp edx, eax
jne 0x43c8e8
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
movzx ecx, byte [ebp]
inc ebp
cmp ecx, eax
jne 0x43c8e8
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
movzx edx, byte [ebp + 1]
movzx eax, byte [ebp + 2]
shl edx, 8
or edx, eax
mov eax, edx
add ebp, 3
jmp 0x43ea16
movzx edx, byte [ebp + 1]
movzx ecx, byte [ebp + 2]
shl edx, 8
or edx, ecx
xor ecx, ecx
xor eax, eax
cmp byte [ebp], 0x33
sete cl
add ebp, 3
mov dword [esp + 0x2c], ecx
jmp 0x43ea16
mov ecx, 1
xor eax, eax
mov dword [esp + 0x38], ecx
add ebp, ecx
jmp 0x43ea11
mov eax, 1
mov dword [esp + 0x38], eax
add ebp, eax
jmp 0x43ea11
mov edx, 1
xor eax, eax
mov dword [esp + 0x38], edx
add ebp, edx
jmp 0x43ea16
movzx edx, byte [ebp + 1]
movzx ecx, byte [ebp + 2]
shl edx, 8
xor eax, eax
or edx, ecx
mov dword [esp + 0x38], 1
add ebp, 3
jmp 0x43ea16
movzx ecx, byte [ebp]
movsx edx, byte [ecx + 0x4851c4]
sub ecx, 0x2c
movzx eax, cl
and eax, 1
inc ebp
mov dword [esp + 0x2c], eax
movsx eax, byte [ecx + 0x4851e8]
mov dword [esp + 0x18], edx
test edx, edx
jne 0x43ea1a
mov edx, accept
mov dword [esp + 0x18], edx
mov ecx, dword [edi + 0x5c]
sub ecx, esi
cmp eax, ecx
jg case.0x441e59.14
movzx ecx, byte [ebp]
inc ebp
test byte [esp + 0x150], 1
mov dword [esp + 0x20], ecx
mov dword [esp + 0x10], 1
je 0x43ed4d
cmp dword [esp + 0x34], 0
mov edx, dword [edi + 0x24]
movzx edx, byte [edx + ecx]
mov dword [esp + 0x20], edx
je 0x43eaff
cmp eax, 1
jl 0x43eb28
movzx ecx, byte [esi]
inc esi
cmp ecx, 0xc0
jb 0x43ead3
mov edx, ecx
and edx, 0x3f
movzx edx, byte [edx + 0x484750]
mov dword [esp + 0x28], edx
lea edx, [edx + edx*2]
add edx, edx
mov dword [esp + 0x14], edx
mov edx, dword [esp + 0x28]
mov edx, dword [edx*4 + 0x484734]
and edx, ecx
mov ecx, dword [esp + 0x14]
shl edx, cl
cmp dword [esp + 0x28], 0
mov ecx, edx
mov dword [esp + 0x24], ecx
jle 0x43ead3
movzx edx, byte [esi]
mov ecx, dword [esp + 0x14]
dec dword [esp + 0x28]
sub ecx, 6
and edx, 0x3f
shl edx, cl
mov dword [esp + 0x14], ecx
mov ecx, dword [esp + 0x24]
inc esi
or ecx, edx
cmp dword [esp + 0x28], 0
mov dword [esp + 0x24], ecx
jg 0x43eaaa
cmp ecx, 0x100
jae 0x43eae2
mov edx, dword [edi + 0x24]
movzx ecx, byte [edx + ecx]
cmp dword [esp + 0x20], ecx
je case.0x441e59.14
mov ecx, dword [esp + 0x10]
inc ecx
cmp ecx, eax
mov dword [esp + 0x10], ecx
jle 0x43ea65
jmp 0x43eb28
cmp eax, 1
jl 0x43eb28
mov edi, edi
movzx edx, byte [esi]
mov ecx, dword [edi + 0x24]
movzx ecx, byte [edx + ecx]
inc esi
cmp dword [esp + 0x20], ecx
je case.0x441e59.14
mov ecx, dword [esp + 0x10]
inc ecx
cmp ecx, eax
mov dword [esp + 0x10], ecx
jle 0x43eb06
mov ecx, dword [esp + 0x18]
cmp eax, ecx
je 0x43c8e8
cmp dword [esp + 0x2c], 0
mov dword [esp + 0x10], eax
jne 0x441679
cmp dword [esp + 0x34], 0
mov dword [esp + 0x2c], esi
je 0x43ecba
cmp eax, ecx
jge 0x43ec13
mov edx, 1
lea esp, [esp]
mov dword [esp + 0x14], edx
cmp esi, dword [edi + 0x5c]
jae 0x43ec13
movzx eax, byte [esi]
cmp eax, 0xc0
jb 0x43ebe4
mov edx, eax
and edx, 0x3f
movzx edx, byte [edx + 0x484750]
lea ecx, [edx + edx*2]
mov dword [esp + 0x24], edx
mov edx, dword [edx*4 + 0x484734]
and edx, eax
add ecx, ecx
shl edx, cl
mov dword [esp + 0x14], 1
mov eax, edx
mov edx, dword [esp + 0x24]
cmp edx, 1
mov dword [esp + 0x28], eax
jl 0x43ebdb
mov edi, edi
mov eax, dword [esp + 0x14]
movzx edx, byte [eax + esi]
and edx, 0x3f
sub ecx, 6
shl edx, cl
inc eax
mov dword [esp + 0x14], eax
or dword [esp + 0x28], edx
mov edx, dword [esp + 0x24]
cmp eax, edx
jle 0x43ebb6
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x18]
inc edx
mov dword [esp + 0x14], edx
cmp eax, 0x100
jae 0x43ebf2
mov edx, dword [edi + 0x24]
movzx eax, byte [edx + eax]
cmp dword [esp + 0x20], eax
je 0x43ec13
mov eax, dword [esp + 0x10]
add esi, dword [esp + 0x14]
mov edx, 1
add eax, edx
cmp eax, ecx
mov dword [esp + 0x10], eax
jl 0x43eb66
cmp dword [esp + 0x38], 0
jne 0x43c8e8
mov eax, dword [esp + 0x15c]
mov ecx, dword [esp + 0x154]
mov edx, dword [esp + 0x150]
inc eax
push eax
push 0
push ecx
push edx
push edi
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x15c]
push eax
push ebx
push ebp
push esi
call fcn.0043c876
add esp, 0x24
test eax, eax
jne 0x441fae
mov ecx, esi
dec esi
cmp ecx, dword [esp + 0x2c]
je 0x43ed40
mov dl, byte [esi]
and dl, 0xc0
cmp dl, 0x80
jne 0x43ec80
lea ebx, [ebx]
mov al, byte [esi - 1]
dec esi
and al, 0xc0
cmp al, 0x80
je 0x43ec76
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x154]
mov eax, dword [esp + 0x150]
push ecx
mov ecx, dword [esp + 0x14c]
push 0
push edx
push eax
push edi
push ecx
push ebx
push ebp
push esi
call fcn.0043c876
add esp, 0x24
test eax, eax
je 0x43ec59
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
cmp eax, ecx
jge 0x43ece1
cmp esi, dword [edi + 0x5c]
jae 0x43ece1
movzx edx, byte [esi]
mov eax, dword [edi + 0x24]
movzx eax, byte [edx + eax]
cmp dword [esp + 0x20], eax
je 0x43ece1
mov eax, dword [esp + 0x10]
inc eax
inc esi
cmp eax, ecx
mov dword [esp + 0x10], eax
jl 0x43ecbe
cmp dword [esp + 0x38], 0
jne 0x43c8e8
cmp esi, dword [esp + 0x2c]
jb 0x43ed40
mov edx, dword [esp + 0x15c]
inc edx
mov dword [esp + 0x1c], edx
jmp 0x43ed06
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x154]
mov edx, dword [esp + 0x150]
push eax
mov eax, dword [esp + 0x14c]
push 0
push ecx
push edx
push edi
push eax
push ebx
push ebp
push esi
call fcn.0043c876
add esp, 0x24
test eax, eax
jne 0x441fae
dec esi
cmp esi, dword [esp + 0x2c]
jae 0x43ed06
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
cmp dword [esp + 0x34], 0
je 0x43edec
cmp eax, 1
jl 0x43ee13
movzx ecx, byte [esi]
inc esi
cmp ecx, 0xc0
jb 0x43edcf
mov edx, ecx
and edx, 0x3f
movzx edx, byte [edx + 0x484750]
mov dword [esp + 0x28], edx
lea edx, [edx + edx*2]
add edx, edx
mov dword [esp + 0x14], edx
mov edx, dword [esp + 0x28]
mov edx, dword [edx*4 + 0x484734]
and edx, ecx
mov ecx, dword [esp + 0x14]
shl edx, cl
cmp dword [esp + 0x28], 0
mov ecx, edx
mov dword [esp + 0x24], ecx
jle 0x43edcf
movzx edx, byte [esi]
mov ecx, dword [esp + 0x14]
dec dword [esp + 0x28]
sub ecx, 6
and edx, 0x3f
shl edx, cl
mov dword [esp + 0x14], ecx
mov ecx, dword [esp + 0x24]
inc esi
or ecx, edx
cmp dword [esp + 0x28], 0
mov dword [esp + 0x24], ecx
jg 0x43eda6
cmp dword [esp + 0x20], ecx
je case.0x441e59.14
mov ecx, dword [esp + 0x10]
inc ecx
cmp ecx, eax
mov dword [esp + 0x10], ecx
jle 0x43ed61
jmp 0x43ee0f
cmp eax, 1
jl 0x43ee13
jmp 0x43edf6
movzx edx, byte [esi]
inc esi
cmp ecx, edx
je case.0x441e59.14
mov edx, dword [esp + 0x10]
inc edx
cmp edx, eax
mov dword [esp + 0x10], edx
jle 0x43edf6
mov edx, dword [esp + 0x18]
cmp eax, edx
je 0x43c8e8
cmp dword [esp + 0x2c], 0
mov dword [esp + 0x10], eax
jne 0x441810
cmp dword [esp + 0x34], 0
mov dword [esp + 0x2c], esi
je 0x43ef9a
cmp eax, edx
jge 0x43eef5
jmp 0x43ee46
mov dword [esp + 0x14], 1
cmp esi, dword [edi + 0x5c]
jae 0x43eef5
movzx ecx, byte [esi]
mov dword [esp + 0x28], ecx
cmp ecx, 0xc0
jb 0x43eeda
and ecx, 0x3f
movzx eax, byte [ecx + 0x484750]
mov dword [esp + 0x24], eax
lea ecx, [eax + eax*2]
mov eax, dword [eax*4 + 0x484734]
and eax, dword [esp + 0x28]
add ecx, ecx
shl eax, cl
mov dword [esp + 0x14], ecx
mov ecx, eax
mov eax, 1
cmp dword [esp + 0x24], eax
mov dword [esp + 0x28], ecx
mov dword [esp + 0x1c], eax
jl 0x43eed1
lea esp, [esp]
movzx eax, byte [eax + esi]
mov ecx, dword [esp + 0x14]
and eax, 0x3f
sub ecx, 6
shl eax, cl
mov dword [esp + 0x14], ecx
or dword [esp + 0x28], eax
mov eax, dword [esp + 0x1c]
inc eax
cmp eax, dword [esp + 0x24]
mov dword [esp + 0x1c], eax
jle 0x43eea6
mov ecx, dword [esp + 0x28]
mov eax, dword [esp + 0x24]
inc eax
mov dword [esp + 0x14], eax
cmp dword [esp + 0x20], ecx
je 0x43eef5
mov eax, dword [esp + 0x10]
add esi, dword [esp + 0x14]
inc eax
cmp eax, edx
mov dword [esp + 0x10], eax
jl 0x43ee46
cmp dword [esp + 0x38], 0
jne 0x43c8e8
mov eax, dword [esp + 0x15c]
mov ecx, dword [esp + 0x154]
mov edx, dword [esp + 0x150]
inc eax
push eax
push 0
push ecx
push edx
push edi
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x15c]
push eax
push ebx
push ebp
push esi
call fcn.0043c876
add esp, 0x24
test eax, eax
jne 0x441fae
mov ecx, esi
dec esi
cmp ecx, dword [esp + 0x2c]
je 0x43f011
mov dl, byte [esi]
and dl, 0xc0
cmp dl, 0x80
jne 0x43ef60
lea esp, [esp]
mov al, byte [esi - 1]
dec esi
and al, 0xc0
cmp al, 0x80
je 0x43ef56
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x154]
mov eax, dword [esp + 0x150]
push ecx
mov ecx, dword [esp + 0x14c]
push 0
push edx
push eax
push edi
push ecx
push ebx
push ebp
push esi
call fcn.0043c876
add esp, 0x24
test eax, eax
je 0x43ef3b
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
cmp eax, edx
jge 0x43efba
cmp esi, dword [edi + 0x5c]
jae 0x43efba
movzx ecx, byte [esi]
cmp dword [esp + 0x20], ecx
je 0x43efba
mov eax, dword [esp + 0x10]
inc eax
inc esi
cmp eax, edx
mov dword [esp + 0x10], eax
jl 0x43ef9e
cmp dword [esp + 0x38], 0
jne 0x43c8e8
cmp esi, dword [esp + 0x2c]
jb 0x43f011
mov edx, dword [esp + 0x15c]
inc edx
mov dword [esp + 0x1c], edx
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x154]
mov edx, dword [esp + 0x150]
push eax
mov eax, dword [esp + 0x14c]
push 0
push ecx
push edx
push edi
push eax
push ebx
push ebp
push esi
call fcn.0043c876
add esp, 0x24
test eax, eax
jne 0x441fae
dec esi
cmp esi, dword [esp + 0x2c]
jae 0x43efd7
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
movzx ebx, byte [ebp + 1]
movzx edx, byte [ebp + 2]
shl ebx, 8
or ebx, edx
mov dword [esp + 0x18], ebx
mov dword [esp + 0x2c], 1
add ebp, 3
jmp 0x43f0e4
movzx eax, byte [ebp + 1]
movzx ecx, byte [ebp + 2]
shl eax, 8
xor edx, edx
or eax, ecx
xor ebx, ebx
cmp byte [ebp], 0x40
mov dword [esp + 0x18], eax
sete dl
add ebp, 3
mov dword [esp + 0x2c], edx
jmp 0x43f0e4
xor ebx, ebx
mov dword [esp + 0x38], 1
inc ebp
jmp 0x43f0dc
mov ebx, 1
mov dword [esp + 0x38], ebx
add ebp, ebx
jmp 0x43f0dc
mov eax, 1
xor ebx, ebx
mov dword [esp + 0x38], eax
mov dword [esp + 0x18], eax
add ebp, eax
jmp 0x43f0e4
movzx eax, byte [ebp + 1]
movzx ecx, byte [ebp + 2]
shl eax, 8
or eax, ecx
xor ebx, ebx
mov dword [esp + 0x38], 1
mov dword [esp + 0x18], eax
add ebp, 3
jmp 0x43f0e4
movzx eax, byte [ebp]
movsx ebx, byte [eax + 0x4851af]
sub eax, 0x39
movzx ecx, al
movsx eax, byte [eax + 0x4851f0]
and ecx, 1
inc ebp
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x18], eax
test eax, eax
jne 0x43f0e4
mov dword [esp + 0x18], accept
mov eax, dword [edi + 0x5c]
movzx ecx, byte [ebp]
mov edx, eax
sub edx, esi
inc ebp
cmp ebx, edx
mov dword [esp + 0x28], ecx
mov dword [esp + 0x24], eax
jg case.0x441e59.14
test ebx, ebx
jle 0x43fb82
add ecx, 0xfffffffa
cmp dword [esp + 0x34], 0
je 0x43f8a0
cmp ecx, 0xf
ja case.0x441e3f.15
jmp dword [ecx*4 + 0x442176]
mov edx, 1
cmp ebx, edx
mov dword [esp + 0x10], edx
jl 0x43fb82
cmp esi, eax
jae case.0x441e59.14
mov ecx, dword [edi + 0x18]
test ecx, ecx
je 0x43f16b
mov eax, dword [esp + 0x34]
push eax
mov eax, dword [esp + 0x28]
lea edx, [edi + 0x1c]
push edx
push eax
push ecx
push esi
call fcn.00434aca
add esp, 0x14
test eax, eax
jne case.0x441e59.14
lea edx, [eax + 1]
jmp 0x43f18f
mov ecx, dword [edi + 0x1c]
sub eax, ecx
cmp esi, eax
ja 0x43f18f
mov al, byte [esi]
cmp al, byte [edi + 0x20]
jne 0x43f18f
cmp ecx, edx
je case.0x441e59.14
mov cl, byte [esi + 1]
cmp cl, byte [edi + 0x21]
je case.0x441e59.14
mov eax, dword [edi + 0x5c]
add esi, edx
mov dword [esp + 0x24], eax
cmp esi, eax
jae 0x43f1ad
mov cl, byte [esi]
and cl, 0xc0
cmp cl, 0x80
jne 0x43f1ad
add esi, edx
cmp esi, dword [edi + 0x5c]
jb 0x43f19c
mov ecx, dword [esp + 0x10]
add ecx, edx
cmp ecx, ebx
mov dword [esp + 0x10], ecx
jle 0x43f137
jmp 0x43fb82
mov ecx, 1
cmp ebx, ecx
jl 0x43fb82
jmp 0x43f1d6
cmp esi, eax
jae case.0x441e59.14
inc esi
cmp esi, eax
jae 0x43f1f6
lea ecx, [ecx]
mov dl, byte [esi]
and dl, 0xc0
cmp dl, 0x80
jne 0x43f1f6
inc esi
cmp esi, dword [edi + 0x5c]
jb 0x43f1e6
inc ecx
cmp ecx, ebx
jle 0x43f1d6
jmp 0x43fb82
cmp ebx, 1
mov dword [esp + 0x10], 1
jl 0x43fb82
jmp 0x43f21a
mov eax, dword [esp + 0x24]
cmp esi, eax
jae case.0x441e59.14
movzx eax, byte [esi]
inc esi
cmp eax, 0xc0
jb 0x43f27a
mov ecx, eax
and ecx, 0x3f
movzx edx, byte [ecx + 0x484750]
lea ecx, [edx + edx*2]
add ecx, ecx
mov dword [esp + 0x14], ecx
mov ecx, dword [edx*4 + 0x484734]
and ecx, eax
mov eax, ecx
mov ecx, dword [esp + 0x14]
shl eax, cl
test edx, edx
jle 0x43f27a
mov ecx, dword [esp + 0x14]
dec edx
mov dword [esp + 0x30], edx
movzx edx, byte [esi]
sub ecx, 6
and edx, 0x3f
shl edx, cl
inc esi
mov dword [esp + 0x14], ecx
or eax, edx
mov edx, dword [esp + 0x30]
test edx, edx
jg 0x43f257
cmp eax, 0xd
ja 0x43f2a5
je 0x43f297
cmp eax, 0xa
je 0x43f2cc
jbe case.0x441e59.14
cmp eax, 0xc
ja case.0x441e59.14
jmp 0x43f2c2
cmp esi, dword [esp + 0x24]
jae 0x43f2cc
cmp byte [esi], 0xa
jne 0x43f2cc
inc esi
jmp 0x43f2cc
cmp eax, 0x85
je 0x43f2c2
cmp eax, 0x2027
jbe case.0x441e59.14
cmp eax, 0x2029
ja case.0x441e59.14
cmp dword [edi + 0x50], 0
jne case.0x441e59.14
mov eax, dword [esp + 0x10]
inc eax
cmp eax, ebx
mov dword [esp + 0x10], eax
jle 0x43f216
jmp 0x43fb82
cmp ebx, 1
mov dword [esp + 0x10], 1
jl 0x43fb82
jmp 0x43f2fa
mov eax, dword [esp + 0x24]
cmp esi, eax
jae case.0x441e59.14
movzx eax, byte [esi]
inc esi
cmp eax, 0xc0
jb 0x43f35a
mov ecx, eax
and ecx, 0x3f
movzx edx, byte [ecx + 0x484750]
lea ecx, [edx + edx*2]
add ecx, ecx
mov dword [esp + 0x14], ecx
mov ecx, dword [edx*4 + 0x484734]
and ecx, eax
mov eax, ecx
mov ecx, dword [esp + 0x14]
shl eax, cl
test edx, edx
jle 0x43f35a
mov ecx, dword [esp + 0x14]
dec edx
mov dword [esp + 0x30], edx
movzx edx, byte [esi]
sub ecx, 6
and edx, 0x3f
shl edx, cl
inc esi
mov dword [esp + 0x14], ecx
or eax, edx
mov edx, dword [esp + 0x30]
test edx, edx
jg 0x43f337
cmp eax, 0x180e
ja 0x43f395
je case.0x441e59.14
cmp eax, 0xa0
ja 0x43f388
je case.0x441e59.14
cmp eax, 9
je case.0x441e59.14
cmp eax, 0x20
je case.0x441e59.14
jmp 0x43f3cc
cmp eax, 0x1680
je case.0x441e59.14
jmp 0x43f3cc
cmp eax, 0x205f
ja 0x43f3c1
je case.0x441e59.14
cmp eax, 0x2000
jb 0x43f3cc
cmp eax, 0x200a
jbe case.0x441e59.14
cmp eax, 0x202f
je case.0x441e59.14
jmp 0x43f3cc
cmp eax, 0x3000
je case.0x441e59.14
mov eax, dword [esp + 0x10]
inc eax
cmp eax, ebx
mov dword [esp + 0x10], eax
jle 0x43f2f6
jmp 0x43fb82
cmp ebx, 1
mov dword [esp + 0x10], 1
jl 0x43fb82
jmp 0x43f3fa
mov eax, dword [esp + 0x24]
cmp esi, eax
jae case.0x441e59.14
movzx eax, byte [esi]
inc esi
cmp eax, 0xc0
jb 0x43f45a
mov ecx, eax
and ecx, 0x3f
movzx edx, byte [ecx + 0x484750]
lea ecx, [edx + edx*2]
add ecx, ecx
mov dword [esp + 0x14], ecx
mov ecx, dword [edx*4 + 0x484734]
and ecx, eax
mov eax, ecx
mov ecx, dword [esp + 0x14]
shl eax, cl
test edx, edx
jle 0x43f45a
mov ecx, dword [esp + 0x14]
dec edx
mov dword [esp + 0x30], edx
movzx edx, byte [esi]
sub ecx, 6
and edx, 0x3f
shl edx, cl
inc esi
mov dword [esp + 0x14], ecx
or eax, edx
mov edx, dword [esp + 0x30]
test edx, edx
jg 0x43f437
cmp eax, 0x180e
ja 0x43f489
je 0x43f4bc
cmp eax, 0xa0
ja 0x43f47c
je 0x43f4bc
cmp eax, 9
je 0x43f4bc
cmp eax, 0x20
jne case.0x441e59.14
jmp 0x43f4bc
cmp eax, 0x1680
jne case.0x441e59.14
jmp 0x43f4bc
cmp eax, 0x205f
ja 0x43f4b1
je 0x43f4bc
cmp eax, 0x2000
jb case.0x441e59.14
cmp eax, 0x200a
jbe 0x43f4bc
cmp eax, 0x202f
jne case.0x441e59.14
jmp 0x43f4bc
cmp eax, 0x3000
jne case.0x441e59.14
mov eax, dword [esp + 0x10]
inc eax
cmp eax, ebx
mov dword [esp + 0x10], eax
jle 0x43f3f6
jmp 0x43fb82
cmp ebx, 1
mov dword [esp + 0x10], 1
jl 0x43fb82
jmp 0x43f4ea
mov eax, dword [esp + 0x24]
cmp esi, eax
jae case.0x441e59.14
movzx eax, byte [esi]
inc esi
cmp eax, 0xc0
jb 0x43f54a
mov ecx, eax
and ecx, 0x3f
movzx edx, byte [ecx + 0x484750]
lea ecx, [edx + edx*2]
add ecx, ecx
mov dword [esp + 0x14], ecx
mov ecx, dword [edx*4 + 0x484734]
and ecx, eax
mov eax, ecx
mov ecx, dword [esp + 0x14]
shl eax, cl
test edx, edx
jle 0x43f54a
mov ecx, dword [esp + 0x14]
dec edx
mov dword [esp + 0x30], edx
movzx edx, byte [esi]
sub ecx, 6
and edx, 0x3f
shl edx, cl
inc esi
mov dword [esp + 0x14], ecx
or eax, edx
mov edx, dword [esp + 0x30]
test edx, edx
jg 0x43f527
cmp eax, 0x85
ja 0x43f567
je case.0x441e59.14
cmp eax, 0xa
jb 0x43f579
cmp eax, 0xd
jbe case.0x441e59.14
jmp 0x43f579
cmp eax, 0x2028
jb 0x43f579
cmp eax, 0x2029
jbe case.0x441e59.14
mov eax, dword [esp + 0x10]
inc eax
cmp eax, ebx
mov dword [esp + 0x10], eax
jle 0x43f4e6
jmp 0x43fb82
cmp ebx, 1
mov dword [esp + 0x10], 1
jl 0x43fb82
jmp 0x43f5aa
mov eax, dword [esp + 0x24]
cmp esi, eax
jae case.0x441e59.14
movzx eax, byte [esi]
inc esi
cmp eax, 0xc0
jb 0x43f60a
mov ecx, eax
and ecx, 0x3f
movzx edx, byte [ecx + 0x484750]
lea ecx, [edx + edx*2]
add ecx, ecx
mov dword [esp + 0x14], ecx
mov ecx, dword [edx*4 + 0x484734]
and ecx, eax
mov eax, ecx
mov ecx, dword [esp + 0x14]
shl eax, cl
test edx, edx
jle 0x43f60a
mov ecx, dword [esp + 0x14]
dec edx
mov dword [esp + 0x30], edx
movzx edx, byte [esi]
sub ecx, 6
and edx, 0x3f
shl edx, cl
inc esi
mov dword [esp + 0x14], ecx
or eax, edx
mov edx, dword [esp + 0x30]
test edx, edx
jg 0x43f5e7
cmp eax, 0x85
ja 0x43f627
je 0x43f63d
cmp eax, 0xa
jb case.0x441e59.14
cmp eax, 0xd
ja case.0x441e59.14
jmp 0x43f63d
cmp eax, 0x2028
jb case.0x441e59.14
cmp eax, 0x2029
ja case.0x441e59.14
mov eax, dword [esp + 0x10]
inc eax
cmp eax, ebx
mov dword [esp + 0x10], eax
jle 0x43f5a6
jmp 0x43fb82
mov edx, 1
cmp ebx, edx
mov dword [esp + 0x10], edx
jl 0x43fb82
jmp 0x43f66f
mov eax, dword [esp + 0x24]
mov edx, 1
cmp esi, eax
jae case.0x441e59.14
movzx ecx, byte [esi]
add esi, edx
cmp ecx, 0xc0
jb 0x43f6d9
mov eax, ecx
and eax, 0x3f
movzx eax, byte [eax + 0x484750]
lea edx, [eax + eax*2]
add edx, edx
mov dword [esp + 0x14], edx
mov edx, dword [eax*4 + 0x484734]
and edx, ecx
mov ecx, dword [esp + 0x14]
shl edx, cl
mov ecx, edx
mov dword [esp + 0x20], ecx
test eax, eax
jle 0x43f6d9
lea esp, [esp]
movzx edx, byte [esi]
mov ecx, dword [esp + 0x14]
sub ecx, 6
and edx, 0x3f
shl edx, cl
mov dword [esp + 0x14], ecx
mov ecx, dword [esp + 0x20]
dec eax
or ecx, edx
inc esi
mov dword [esp + 0x20], ecx
test eax, eax
jg 0x43f6b6
cmp ecx, 0x80
jae 0x43f6ee
mov eax, dword [edi + 0x28]
test byte [ecx + eax], 4
jne case.0x441e59.14
mov eax, dword [esp + 0x10]
inc eax
cmp eax, ebx
mov dword [esp + 0x10], eax
jle 0x43f666
jmp 0x43fb82
cmp ebx, 1
mov dword [esp + 0x10], 1
jl 0x43fb82
nop
cmp esi, eax
jae case.0x441e59.14
mov cl, byte [esi]
cmp cl, 0x80
jae case.0x441e59.14
mov edx, dword [edi + 0x28]
movzx ecx, cl
mov cl, byte [ecx + edx]
and cl, 4
inc esi
test cl, cl
je case.0x441e59.14
mov ecx, dword [esp + 0x10]
inc ecx
cmp ecx, ebx
mov dword [esp + 0x10], ecx
jle 0x43f716
jmp 0x43fb82
mov edx, 1
cmp ebx, edx
mov dword [esp + 0x10], edx
jl 0x43fb82
jmp 0x43f766
cmp esi, eax
jae case.0x441e59.14
mov cl, byte [esi]
cmp cl, 0x80
jae 0x43f78a
movzx edx, cl
mov ecx, dword [edi + 0x28]
test byte [edx + ecx], 1
jne case.0x441e59.14
mov edx, 1
add esi, edx
cmp esi, eax
jae 0x43f79a
mov cl, byte [esi]
and cl, 0xc0
cmp cl, 0x80
je 0x43f78a
mov ecx, dword [esp + 0x10]
add ecx, edx
cmp ecx, ebx
mov dword [esp + 0x10], ecx
jle 0x43f766
jmp 0x43fb82
cmp ebx, 1
mov dword [esp + 0x10], 1
jl 0x43fb82
cmp esi, eax
jae case.0x441e59.14
mov cl, byte [esi]
cmp cl, 0x80
jae case.0x441e59.14
movzx edx, cl
mov ecx, dword [edi + 0x28]
mov dl, byte [edx + ecx]
and dl, 1
inc esi
test dl, dl
je case.0x441e59.14
mov ecx, dword [esp + 0x10]
inc ecx
cmp ecx, ebx
mov dword [esp + 0x10], ecx
jle 0x43f7be
jmp 0x43fb82
mov edx, 1
cmp ebx, edx
mov dword [esp + 0x10], edx
jl 0x43fb82
cmp esi, eax
jae case.0x441e59.14
mov cl, byte [esi]
cmp cl, 0x80
jae 0x43f82d
mov edx, dword [edi + 0x28]
movzx ecx, cl
test byte [ecx + edx], 0x10
jne case.0x441e59.14
mov edx, 1
add esi, edx
cmp esi, eax
jae 0x43f83d
mov cl, byte [esi]
and cl, 0xc0
cmp cl, 0x80
je 0x43f82d
mov ecx, dword [esp + 0x10]
add ecx, edx
cmp ecx, ebx
mov dword [esp + 0x10], ecx
jle 0x43f809
jmp 0x43fb82
cmp ebx, 1
mov dword [esp + 0x10], 1
jl 0x43fb82
jmp 0x43f866
cmp esi, eax
jae case.0x441e59.14
mov cl, byte [esi]
cmp cl, 0x80
jae case.0x441e59.14
movzx edx, cl
mov ecx, dword [edi + 0x28]
mov dl, byte [edx + ecx]
and dl, 0x10
inc esi
test dl, dl
je case.0x441e59.14
mov ecx, dword [esp + 0x10]
inc ecx
cmp ecx, ebx
mov dword [esp + 0x10], ecx
jle 0x43f866
jmp 0x43fb82
cmp ecx, 0xf
ja case.0x441e3f.15
jmp dword [ecx*4 + 0x4421b6]
mov edx, 1
cmp ebx, edx
mov dword [esp + 0x10], edx
jl 0x43fb82
mov ecx, dword [edi + 0x18]
test ecx, ecx
je 0x43f8ed
mov eax, dword [edi + 0x5c]
cmp esi, eax
jae 0x43f914
push 0
lea edx, [edi + 0x1c]
push edx
push eax
push ecx
push esi
call fcn.00434aca
add esp, 0x14
test eax, eax
jne case.0x441e59.14
lea edx, [eax + 1]
jmp 0x43f914
mov eax, dword [edi + 0x1c]
mov ecx, dword [edi + 0x5c]
sub ecx, eax
cmp esi, ecx
ja 0x43f914
mov cl, byte [esi]
cmp cl, byte [edi + 0x20]
jne 0x43f914
cmp eax, edx
je case.0x441e59.14
mov al, byte [esi + 1]
cmp al, byte [edi + 0x21]
je case.0x441e59.14
mov eax, dword [esp + 0x10]
add eax, edx
add esi, edx
cmp eax, ebx
mov dword [esp + 0x10], eax
jle 0x43f8c1
jmp 0x43fb82
add esi, ebx
jmp 0x43fb82
mov edx, 1
cmp ebx, edx
jl 0x43fb82
cmp esi, eax
jae case.0x441e59.14
movzx ecx, byte [esi]
sub ecx, 0xa
inc esi
cmp ecx, 0x7b
ja case.0x441e59.14
movzx ecx, byte [ecx + 0x442206]
jmp dword [ecx*4 + 0x4421f6]
cmp esi, eax
jae case.0x43f95c.10
cmp byte [esi], 0xa
jne case.0x43f95c.10
inc esi
jmp case.0x43f95c.10
cmp dword [edi + 0x50], 0
jne case.0x441e59.14
inc edx
cmp edx, ebx
jle 0x43f93d
jmp 0x43fb82
mov edx, 1
cmp ebx, edx
jl 0x43fb82
lea ebx, [ebx]
cmp esi, eax
jae case.0x441e59.14
movzx ecx, byte [esi]
inc esi
cmp ecx, 9
je case.0x441e59.14
cmp ecx, 0x20
je case.0x441e59.14
cmp ecx, 0xa0
je case.0x441e59.14
inc edx
cmp edx, ebx
jle 0x43f996
jmp 0x43fb82
mov edx, 1
cmp ebx, edx
jl 0x43fb82
cmp esi, eax
jae case.0x441e59.14
movzx ecx, byte [esi]
inc esi
cmp ecx, 9
je 0x43f9f9
cmp ecx, 0x20
je 0x43f9f9
cmp ecx, 0xa0
jne case.0x441e59.14
inc edx
cmp edx, ebx
jle 0x43f9d7
jmp 0x43fb82
mov edx, 1
cmp ebx, edx
jl 0x43fb82
lea ebx, [ebx]
cmp esi, eax
jae case.0x441e59.14
movzx ecx, byte [esi]
inc esi
cmp ecx, 0xa
jl 0x43fa3c
cmp ecx, 0xd
jle case.0x441e59.14
cmp ecx, 0x85
je case.0x441e59.14
inc edx
cmp edx, ebx
jle 0x43fa16
jmp 0x43fb82
mov edx, 1
cmp ebx, edx
jl 0x43fb82
lea ecx, [ecx]
cmp esi, eax
jae case.0x441e59.14
movzx ecx, byte [esi]
inc esi
cmp ecx, 0xa
jl case.0x441e59.14
cmp ecx, 0xd
jle 0x43fa7c
cmp ecx, 0x85
jne case.0x441e59.14
inc edx
cmp edx, ebx
jle 0x43fa56
jmp 0x43fb82
mov eax, 1
cmp ebx, eax
jl 0x43fb82
mov ecx, dword [edi + 0x28]
movzx edx, byte [esi]
mov dl, byte [edx + ecx]
and dl, 4
inc esi
test dl, dl
jne case.0x441e59.14
inc eax
cmp eax, ebx
jle 0x43fa96
jmp 0x43fb82
mov eax, 1
cmp ebx, eax
jl 0x43fb82
mov ecx, dword [edi + 0x28]
lea esp, [esp]
movzx edx, byte [esi]
mov dl, byte [edx + ecx]
and dl, 4
inc esi
test dl, dl
je case.0x441e59.14
inc eax
cmp eax, ebx
jle 0x43fac6
jmp 0x43fb82
mov eax, 1
cmp ebx, eax
jl 0x43fb82
mov ecx, dword [edi + 0x28]
lea esp, [esp]
movzx edx, byte [esi]
mov dl, byte [edx + ecx]
and dl, 1
inc esi
test dl, dl
jne case.0x441e59.14
inc eax
cmp eax, ebx
jle 0x43faf6
jmp 0x43fb82
mov eax, 1
cmp ebx, eax
jl 0x43fb82
mov ecx, dword [edi + 0x28]
movzx edx, byte [esi]
mov dl, byte [edx + ecx]
and dl, 1
inc esi
test dl, dl
je case.0x441e59.14
inc eax
cmp eax, ebx
jle 0x43fb1b
jmp 0x43fb82
mov eax, 1
cmp ebx, eax
jl 0x43fb82
mov ecx, dword [edi + 0x28]
lea ebx, [ebx]
movzx edx, byte [esi]
mov dl, byte [edx + ecx]
and dl, 0x10
inc esi
test dl, dl
jne case.0x441e59.14
inc eax
cmp eax, ebx
jle 0x43fb46
jmp 0x43fb82
mov eax, 1
cmp ebx, eax
jl 0x43fb82
mov ecx, dword [edi + 0x28]
movzx edx, byte [esi]
mov dl, byte [edx + ecx]
and dl, 0x10
inc esi
test dl, dl
je case.0x441e59.14
inc eax
cmp eax, ebx
jle 0x43fb6b
cmp ebx, dword [esp + 0x18]
je 0x43c8e8
cmp dword [esp + 0x2c], 0
jne 0x441999
mov eax, dword [esp + 0x28]
add eax, 0xfffffffa
cmp dword [esp + 0x34], 0
mov dword [esp + 0x2c], esi
je 0x44042f
cmp eax, 0xf
ja case.0x441e3f.15
jmp dword [eax*4 + 0x442282]
mov edx, dword [esp + 0x18]
cmp edx, 0x7fffffff
jge 0x43fc4e
cmp ebx, edx
jge 0x440384
nop
mov eax, dword [edi + 0x5c]
cmp esi, eax
jae 0x440384
mov ecx, dword [edi + 0x18]
test ecx, ecx
je 0x43fc0a
mov edx, dword [esp + 0x34]
push edx
lea edx, [edi + 0x1c]
push edx
push eax
push ecx
push esi
call fcn.00434aca
add esp, 0x14
test eax, eax
jne 0x440384
mov edx, dword [esp + 0x18]
jmp 0x43fc2f
mov ecx, dword [edi + 0x1c]
sub eax, ecx
cmp esi, eax
ja 0x43fc2f
mov al, byte [esi]
cmp al, byte [edi + 0x20]
jne 0x43fc2f
cmp ecx, 1
je 0x440384
mov cl, byte [esi + 1]
cmp cl, byte [edi + 0x21]
je 0x440384
inc esi
cmp esi, dword [edi + 0x5c]
jae 0x43fc44
nop
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x43fc44
inc esi
cmp esi, dword [edi + 0x5c]
jb 0x43fc36
inc ebx
cmp ebx, edx
jl 0x43fbd6
jmp 0x440384
cmp ebx, edx
jge 0x440384
mov eax, dword [edi + 0x5c]
cmp esi, eax
jae 0x440384
mov ecx, dword [edi + 0x18]
test ecx, ecx
je 0x43fc8a
mov edx, dword [esp + 0x34]
push edx
lea edx, [edi + 0x1c]
push edx
push eax
push ecx
push esi
call fcn.00434aca
add esp, 0x14
test eax, eax
jne 0x440384
mov edx, dword [esp + 0x18]
jmp 0x43fcaf
mov ecx, dword [edi + 0x1c]
sub eax, ecx
cmp esi, eax
ja 0x43fcaf
mov al, byte [esi]
cmp al, byte [edi + 0x20]
jne 0x43fcaf
cmp ecx, 1
je 0x440384
mov cl, byte [esi + 1]
cmp cl, byte [edi + 0x21]
je 0x440384
inc esi
cmp esi, dword [edi + 0x5c]
jae 0x43fcc4
nop
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x43fcc4
inc esi
cmp esi, dword [edi + 0x5c]
jb 0x43fcb6
inc ebx
cmp ebx, edx
jl 0x43fc56
jmp 0x440384
mov ecx, dword [esp + 0x18]
cmp ecx, 0x7fffffff
jge 0x43fd10
cmp ebx, ecx
jge 0x440384
mov eax, dword [edi + 0x5c]
nop
cmp esi, eax
jae 0x440384
inc esi
cmp esi, eax
jae 0x43fd06
lea ecx, [ecx]
mov dl, byte [esi]
and dl, 0xc0
cmp dl, 0x80
jne 0x43fd06
inc esi
cmp esi, dword [edi + 0x5c]
jb 0x43fcf6
inc ebx
cmp ebx, ecx
jl 0x43fce6
jmp 0x440384
mov esi, dword [edi + 0x5c]
jmp 0x440384
mov ecx, dword [esp + 0x18]
mov eax, dword [edi + 0x5c]
sub ecx, ebx
sub eax, esi
cmp ecx, eax
jbe 0x43fd29
mov ecx, eax
add esi, ecx
jmp 0x440384
cmp ebx, dword [esp + 0x18]
mov dword [esp + 0x10], ebx
jge 0x440384
jmp 0x43fd46
mov edx, 1
cmp esi, dword [edi + 0x5c]
jae 0x440384
movzx eax, byte [esi]
cmp eax, 0xc0
jb 0x43fdad
mov ecx, eax
and ecx, 0x3f
movzx edx, byte [ecx + 0x484750]
mov ebx, dword [edx*4 + 0x484734]
and ebx, eax
lea ecx, [edx + edx*2]
add ecx, ecx
shl ebx, cl
mov dword [esp + 0x30], edx
mov eax, ebx
mov ebx, 1
cmp edx, ebx
mov dword [esp + 0x14], ebx
jl 0x43fdac
movzx edx, byte [ebx + esi]
mov ebx, dword [esp + 0x14]
and edx, 0x3f
sub ecx, 6
shl edx, cl
inc ebx
mov dword [esp + 0x14], ebx
or eax, edx
mov edx, dword [esp + 0x30]
cmp ebx, edx
jle 0x43fd8d
inc edx
cmp eax, 0xd
jne 0x43fdc4
inc esi
cmp esi, dword [edi + 0x5c]
jae 0x440384
cmp byte [esi], 0xa
jne 0x43fdf8
inc esi
jmp 0x43fdf8
cmp eax, 0xa
je 0x43fdf6
cmp dword [edi + 0x50], 0
jne 0x440384
cmp eax, 0xb
je 0x43fdf6
cmp eax, 0xc
je 0x43fdf6
cmp eax, 0x85
je 0x43fdf6
cmp eax, 0x2028
je 0x43fdf6
cmp eax, 0x2029
jne 0x440384
add esi, edx
mov eax, dword [esp + 0x10]
inc eax
cmp eax, dword [esp + 0x18]
mov dword [esp + 0x10], eax
jl 0x43fd46
jmp 0x440384
cmp ebx, dword [esp + 0x18]
mov dword [esp + 0x10], ebx
jge 0x440384
mov edx, 1
cmp esi, dword [edi + 0x5c]
jae 0x440384
movzx eax, byte [esi]
cmp eax, 0xc0
jb 0x43fe85
mov ecx, eax
and ecx, 0x3f
movzx edx, byte [ecx + 0x484750]
mov ebx, dword [edx*4 + 0x484734]
and ebx, eax
lea ecx, [edx + edx*2]
add ecx, ecx
shl ebx, cl
mov dword [esp + 0x30], edx
mov eax, ebx
mov ebx, 1
cmp edx, ebx
mov dword [esp + 0x14], ebx
jl 0x43fe84
movzx edx, byte [ebx + esi]
mov ebx, dword [esp + 0x14]
and edx, 0x3f
sub ecx, 6
shl edx, cl
inc ebx
mov dword [esp + 0x14], ebx
or eax, edx
mov edx, dword [esp + 0x30]
cmp ebx, edx
jle 0x43fe65
inc edx
cmp eax, 0x180e
ja 0x43fedd
je 0x43fea1
cmp eax, 0xa0
ja 0x43fed2
je 0x43fea1
cmp eax, 9
je 0x43fea1
cmp eax, 0x20
jne 0x43ff06
mov ecx, 1
xor eax, eax
cmp dword [esp + 0x28], 0x12
sete al
cmp ecx, eax
je 0x440384
mov eax, dword [esp + 0x10]
inc eax
add esi, edx
cmp eax, dword [esp + 0x18]
mov dword [esp + 0x10], eax
jl 0x43fe1e
jmp 0x440384
cmp eax, 0x1680
je 0x43fea1
xor ecx, ecx
jmp 0x43fea6
cmp eax, 0x205f
ja 0x43feff
je 0x43fea1
cmp eax, 0x2000
jb 0x43ff06
cmp eax, 0x200a
jbe 0x43fea1
cmp eax, 0x202f
je 0x43fea1
xor ecx, ecx
jmp 0x43fea6
cmp eax, 0x3000
je 0x43fea1
xor ecx, ecx
jmp 0x43fea6
cmp ebx, dword [esp + 0x18]
mov dword [esp + 0x10], ebx
jge 0x440384
mov edx, 1
cmp esi, dword [edi + 0x5c]
jae 0x440384
movzx eax, byte [esi]
cmp eax, 0xc0
jb 0x43ff7f
mov ecx, eax
and ecx, 0x3f
movzx edx, byte [ecx + 0x484750]
mov ebx, dword [edx*4 + 0x484734]
and ebx, eax
lea ecx, [edx + edx*2]
add ecx, ecx
shl ebx, cl
mov dword [esp + 0x30], edx
mov eax, ebx
mov ebx, 1
cmp edx, ebx
mov dword [esp + 0x14], ebx
jl 0x43ff7e
movzx edx, byte [ebx + esi]
mov ebx, dword [esp + 0x14]
and edx, 0x3f
sub ecx, 6
shl edx, cl
inc ebx
mov dword [esp + 0x14], ebx
or eax, edx
mov edx, dword [esp + 0x30]
cmp ebx, edx
jle 0x43ff5f
inc edx
cmp eax, 0x85
ja 0x43ffc0
je 0x43ffce
cmp eax, 0xa
jb 0x43ff92
cmp eax, 0xd
jbe 0x43ffce
xor ecx, ecx
xor eax, eax
cmp dword [esp + 0x28], 0x14
sete al
cmp ecx, eax
je 0x440384
mov eax, dword [esp + 0x10]
inc eax
add esi, edx
cmp eax, dword [esp + 0x18]
mov dword [esp + 0x10], eax
jl 0x43ff18
jmp 0x440384
cmp eax, 0x2028
jb 0x43ff92
cmp eax, 0x2029
ja 0x43ff92
mov ecx, 1
jmp 0x43ff94
cmp ebx, dword [esp + 0x18]
mov dword [esp + 0x10], ebx
jge 0x440384
lea ecx, [ecx]
mov eax, 1
cmp esi, dword [edi + 0x5c]
jae 0x440384
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x440046
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x484750]
mov ebx, dword [eax*4 + 0x484734]
and ebx, edx
lea ecx, [eax + eax*2]
add ecx, ecx
shl ebx, cl
mov edx, ebx
mov ebx, 1
cmp eax, ebx
mov dword [esp + 0x14], ebx
jl 0x440045
movzx ebx, byte [ebx + esi]
and ebx, 0x3f
sub ecx, 6
shl ebx, cl
or edx, ebx
mov ebx, dword [esp + 0x14]
inc ebx
cmp ebx, eax
mov dword [esp + 0x14], ebx
jle 0x44002a
inc eax
cmp edx, 0x100
jae 0x44005b
mov ecx, dword [edi + 0x28]
test byte [edx + ecx], 4
jne 0x440384
add esi, eax
mov eax, dword [esp + 0x10]
inc eax
cmp eax, dword [esp + 0x18]
mov dword [esp + 0x10], eax
jl 0x43ffe6
jmp 0x440384
cmp ebx, dword [esp + 0x18]
mov dword [esp + 0x10], ebx
jge 0x440384
lea ecx, [ecx]
mov eax, 1
cmp esi, dword [edi + 0x5c]
jae 0x440384
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x4400e6
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x484750]
mov ebx, dword [eax*4 + 0x484734]
and ebx, edx
lea ecx, [eax + eax*2]
add ecx, ecx
shl ebx, cl
mov edx, ebx
mov ebx, 1
cmp eax, ebx
mov dword [esp + 0x14], ebx
jl 0x4400e5
movzx ebx, byte [ebx + esi]
and ebx, 0x3f
sub ecx, 6
shl ebx, cl
or edx, ebx
mov ebx, dword [esp + 0x14]
inc ebx
cmp ebx, eax
mov dword [esp + 0x14], ebx
jle 0x4400ca
inc eax
cmp edx, 0x100
jae 0x440384
mov ecx, dword [edi + 0x28]
test byte [edx + ecx], 4
je 0x440384
add esi, eax
mov eax, dword [esp + 0x10]
inc eax
cmp eax, dword [esp + 0x18]
mov dword [esp + 0x10], eax
jl 0x440086
jmp 0x440384
cmp ebx, dword [esp + 0x18]
mov dword [esp + 0x10], ebx
jge 0x440384
mov eax, 1
cmp esi, dword [edi + 0x5c]
jae 0x440384
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x440187
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x484750]
mov ebx, dword [eax*4 + 0x484734]
and ebx, edx
lea ecx, [eax + eax*2]
add ecx, ecx
shl ebx, cl
mov edx, ebx
mov ebx, 1
cmp eax, ebx
mov dword [esp + 0x14], ebx
jl 0x440186
movzx ebx, byte [ebx + esi]
and ebx, 0x3f
sub ecx, 6
shl ebx, cl
or edx, ebx
mov ebx, dword [esp + 0x14]
inc ebx
cmp ebx, eax
mov dword [esp + 0x14], ebx
jle 0x44016b
inc eax
cmp edx, 0x100
jae 0x44019c
mov ecx, dword [edi + 0x28]
test byte [edx + ecx], 1
jne 0x440384
add esi, eax
mov eax, dword [esp + 0x10]
inc eax
cmp eax, dword [esp + 0x18]
mov dword [esp + 0x10], eax
jl 0x440127
jmp 0x440384
cmp ebx, dword [esp + 0x18]
mov dword [esp + 0x10], ebx
jge 0x440384
mov edi, edi
mov eax, 1
cmp esi, dword [edi + 0x5c]
jae 0x440384
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x440226
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x484750]
mov ebx, dword [eax*4 + 0x484734]
and ebx, edx
lea ecx, [eax + eax*2]
add ecx, ecx
shl ebx, cl
mov edx, ebx
mov ebx, 1
cmp eax, ebx
mov dword [esp + 0x14], ebx
jl 0x440225
movzx ebx, byte [ebx + esi]
and ebx, 0x3f
sub ecx, 6
shl ebx, cl
or edx, ebx
mov ebx, dword [esp + 0x14]
inc ebx
cmp ebx, eax
mov dword [esp + 0x14], ebx
jle 0x44020a
inc eax
cmp edx, 0x100
jae 0x440384
mov ecx, dword [edi + 0x28]
test byte [edx + ecx], 1
je 0x440384
add esi, eax
mov eax, dword [esp + 0x10]
inc eax
cmp eax, dword [esp + 0x18]
mov dword [esp + 0x10], eax
jl 0x4401c6
jmp 0x440384
cmp ebx, dword [esp + 0x18]
mov dword [esp + 0x10], ebx
jge 0x440384
mov eax, 1
cmp esi, dword [edi + 0x5c]
jae 0x440384
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x4402c7
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x484750]
mov ebx, dword [eax*4 + 0x484734]
and ebx, edx
lea ecx, [eax + eax*2]
add ecx, ecx
shl ebx, cl
mov edx, ebx
mov ebx, 1
cmp eax, ebx
mov dword [esp + 0x14], ebx
jl 0x4402c6
movzx ebx, byte [ebx + esi]
and ebx, 0x3f
sub ecx, 6
shl ebx, cl
or edx, ebx
mov ebx, dword [esp + 0x14]
inc ebx
cmp ebx, eax
mov dword [esp + 0x14], ebx
jle 0x4402ab
inc eax
cmp edx, 0x100
jae 0x4402dc
mov ecx, dword [edi + 0x28]
test byte [edx + ecx], 0x10
jne 0x440384
add esi, eax
mov eax, dword [esp + 0x10]
inc eax
cmp eax, dword [esp + 0x18]
mov dword [esp + 0x10], eax
jl 0x440267
jmp 0x440384
cmp ebx, dword [esp + 0x18]
mov dword [esp + 0x10], ebx
jge 0x440384
mov edi, edi
mov eax, 1
cmp esi, dword [edi + 0x5c]
jae 0x440384
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x440362
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x484750]
mov ebx, dword [eax*4 + 0x484734]
and ebx, edx
lea ecx, [eax + eax*2]
add ecx, ecx
shl ebx, cl
mov edx, ebx
mov ebx, 1
cmp eax, ebx
mov dword [esp + 0x14], ebx
jl 0x440361
movzx ebx, byte [ebx + esi]
and ebx, 0x3f
sub ecx, 6
shl ebx, cl
or edx, ebx
mov ebx, dword [esp + 0x14]
inc ebx
cmp ebx, eax
mov dword [esp + 0x14], ebx
jle 0x440346
inc eax
cmp edx, 0x100
jae 0x440384
mov ecx, dword [edi + 0x28]
test byte [edx + ecx], 0x10
je 0x440384
add esi, eax
mov eax, dword [esp + 0x10]
inc eax
cmp eax, dword [esp + 0x18]
mov dword [esp + 0x10], eax
jl 0x440306
cmp dword [esp + 0x38], 0
jne 0x43c8e8
mov ebx, dword [esp + 0x15c]
mov ecx, dword [esp + 0x154]
mov edx, dword [esp + 0x150]
mov eax, dword [esp + 0x148]
inc ebx
push ebx
push 0
push ecx
mov ecx, dword [esp + 0x150]
push edx
push edi
push eax
push ecx
push ebp
push esi
call fcn.0043c876
add esp, 0x24
test eax, eax
jne 0x441fae
mov edx, esi
dec esi
cmp edx, dword [esp + 0x2c]
je 0x440785
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x4403f2
lea esp, [esp]
mov cl, byte [esi - 1]
dec esi
and cl, 0xc0
cmp cl, 0x80
je 0x4403e6
mov edx, dword [esp + 0x154]
mov eax, dword [esp + 0x150]
mov ecx, dword [esp + 0x148]
push ebx
push 0
push edx
mov edx, dword [esp + 0x150]
push eax
push edi
push ecx
push edx
push ebp
push esi
call fcn.0043c876
add esp, 0x24
test eax, eax
je 0x4403cd
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
cmp eax, 0xf
ja case.0x441e3f.15
jmp dword [eax*4 + 0x4422c2]
cmp ebx, dword [esp + 0x18]
jge 0x44072f
mov eax, dword [edi + 0x5c]
cmp esi, eax
jae 0x44072f
mov ecx, dword [edi + 0x18]
test ecx, ecx
je 0x440476
push 0
lea edx, [edi + 0x1c]
push edx
push eax
push ecx
push esi
call fcn.00434aca
add esp, 0x14
test eax, eax
jne 0x44072f
jmp 0x44049b
mov ecx, dword [edi + 0x1c]
sub eax, ecx
cmp esi, eax
ja 0x44049b
mov al, byte [esi]
cmp al, byte [edi + 0x20]
jne 0x44049b
cmp ecx, 1
je 0x44072f
mov cl, byte [esi + 1]
cmp cl, byte [edi + 0x21]
je 0x44072f
inc ebx
inc esi
cmp ebx, dword [esp + 0x18]
jl 0x440449
jmp 0x44072f
mov ecx, dword [esp + 0x18]
mov eax, dword [edi + 0x5c]
sub ecx, ebx
sub eax, esi
cmp ecx, eax
jbe 0x4404b9
mov ecx, eax
add esi, ecx
jmp 0x44072f
mov edx, dword [esp + 0x18]
cmp ebx, edx
jge 0x44072f
mov ecx, dword [edi + 0x5c]
lea esp, [esp]
cmp esi, ecx
jae 0x44072f
movzx eax, byte [esi]
cmp eax, 0xd
jne 0x4404f6
inc esi
cmp esi, ecx
jae 0x44072f
cmp byte [esi], 0xa
jne 0x44051b
jmp 0x44051a
cmp eax, 0xa
je 0x44051a
cmp dword [edi + 0x50], 0
jne 0x44072f
cmp eax, 0xb
je 0x44051a
cmp eax, 0xc
je 0x44051a
cmp eax, 0x85
jne 0x44072f
inc esi
inc ebx
cmp ebx, edx
jl 0x4404d6
jmp 0x44072f
mov ecx, dword [esp + 0x18]
cmp ebx, ecx
jge 0x44072f
mov edx, dword [edi + 0x5c]
mov edi, edi
cmp esi, edx
jae 0x44072f
movzx eax, byte [esi]
cmp eax, 9
je 0x44072f
cmp eax, 0x20
je 0x44072f
cmp eax, 0xa0
je 0x44072f
inc ebx
inc esi
cmp ebx, ecx
jl 0x440536
jmp 0x44072f
mov ecx, dword [esp + 0x18]
cmp ebx, ecx
jge 0x44072f
mov edx, dword [edi + 0x5c]
cmp esi, edx
jae 0x44072f
movzx eax, byte [esi]
cmp eax, 9
je 0x440598
cmp eax, 0x20
je 0x440598
cmp eax, 0xa0
jne 0x44072f
inc ebx
inc esi
cmp ebx, ecx
jl 0x440578
jmp 0x44072f
mov ecx, dword [esp + 0x18]
cmp ebx, ecx
jge 0x44072f
mov edx, dword [edi + 0x5c]
lea esp, [esp]
cmp esi, edx
jae 0x44072f
movzx eax, byte [esi]
cmp eax, 0xa
je 0x44072f
cmp eax, 0xb
je 0x44072f
cmp eax, 0xc
je 0x44072f
cmp eax, 0xd
je 0x44072f
cmp eax, 0x85
je 0x44072f
inc ebx
inc esi
cmp ebx, ecx
jl 0x4405b6
jmp 0x44072f
mov ecx, dword [esp + 0x18]
cmp ebx, ecx
jge 0x44072f
mov edx, dword [edi + 0x5c]
cmp esi, edx
jae 0x44072f
movzx eax, byte [esi]
cmp eax, 0xa
je 0x440634
cmp eax, 0xb
je 0x440634
cmp eax, 0xc
je 0x440634
cmp eax, 0xd
je 0x440634
cmp eax, 0x85
jne 0x44072f
inc ebx
inc esi
cmp ebx, ecx
jl 0x44060a
jmp 0x44072f
mov eax, dword [esp + 0x18]
cmp ebx, eax
jge 0x44072f
cmp esi, dword [edi + 0x5c]
jae 0x44072f
movzx edx, byte [esi]
mov ecx, dword [edi + 0x28]
test byte [edx + ecx], 4
jne 0x44072f
inc ebx
inc esi
cmp ebx, eax
jl 0x44064b
jmp 0x44072f
mov eax, dword [esp + 0x18]
cmp ebx, eax
jge 0x44072f
cmp esi, dword [edi + 0x5c]
jae 0x44072f
movzx edx, byte [esi]
mov ecx, dword [edi + 0x28]
test byte [edx + ecx], 4
je 0x44072f
inc ebx
inc esi
cmp ebx, eax
jl 0x44067b
jmp 0x44072f
mov eax, dword [esp + 0x18]
cmp ebx, eax
jge 0x44072f
cmp esi, dword [edi + 0x5c]
jae 0x44072f
movzx edx, byte [esi]
mov ecx, dword [edi + 0x28]
test byte [edx + ecx], 1
jne 0x44072f
inc ebx
inc esi
cmp ebx, eax
jl 0x4406ab
jmp 0x44072f
mov eax, dword [esp + 0x18]
cmp ebx, eax
jge 0x44072f
lea ebx, [ebx]
cmp esi, dword [edi + 0x5c]
jae 0x44072f
movzx edx, byte [esi]
mov ecx, dword [edi + 0x28]
test byte [edx + ecx], 1
je 0x44072f
inc ebx
inc esi
cmp ebx, eax
jl 0x4406d6
jmp 0x44072f
mov eax, dword [esp + 0x18]
cmp ebx, eax
jge 0x44072f
cmp esi, dword [edi + 0x5c]
jae 0x44072f
movzx edx, byte [esi]
mov ecx, dword [edi + 0x28]
test byte [edx + ecx], 0x10
jne 0x44072f
inc ebx
inc esi
cmp ebx, eax
jl 0x4406f7
jmp 0x44072f
mov eax, dword [esp + 0x18]
cmp ebx, eax
jge 0x44072f
cmp esi, dword [edi + 0x5c]
jae 0x44072f
movzx edx, byte [esi]
mov ecx, dword [edi + 0x28]
test byte [edx + ecx], 0x10
je 0x44072f
inc ebx
inc esi
cmp ebx, eax
jl 0x440718
cmp dword [esp + 0x38], 0
jne 0x43c8e8
cmp esi, dword [esp + 0x2c]
jb 0x440785
mov ebx, dword [esp + 0x15c]
inc ebx
mov eax, dword [esp + 0x154]
mov ecx, dword [esp + 0x150]
mov edx, dword [esp + 0x148]
push ebx
push 0
push eax
mov eax, dword [esp + 0x150]
push ecx
push edi
push edx
push eax
push ebp
push esi
call fcn.0043c876
add esp, 0x24
dec esi
test eax, eax
jne 0x441fae
cmp esi, dword [esp + 0x2c]
jae 0x440748
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
movzx edx, byte [ebp + 4]
movzx eax, byte [ebp + 5]
shl edx, 8
or edx, eax
cmp byte [edx + ebp + 3], 0x54
lea ebp, [edx + ebp + 3]
jne 0x4407bf
movzx ecx, byte [ebp + 1]
movzx edx, byte [ebp + 2]
shl ecx, 8
or ecx, edx
add ebp, ecx
cmp byte [ebp], 0x54
je 0x4407aa
add ebp, 3
cmp dword [esp + 0x28], 0x63
jne 0x440a1b
mov ecx, dword [esp + 0x15c]
mov edx, dword [esp + 0x154]
mov eax, dword [esp + 0x150]
inc ecx
push ecx
mov ecx, dword [esp + 0x14c]
push 2
push edx
push eax
push edi
push ecx
push ebx
push ebp
push esi
call fcn.0043c876
add esp, 0x24
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
movzx ecx, byte [ebp + 3]
movzx eax, byte [ebp + 4]
shl ecx, 8
or ecx, eax
lea edx, [ecx + ecx]
cmp edx, dword [edi + 0x14]
mov dword [esp + 0x24], ecx
jl 0x440bc5
movzx ecx, byte [ebp + 1]
movzx edx, byte [ebp + 2]
xor eax, eax
cmp dword [esp + 0x28], 0x61
setl al
shl ecx, 8
or ecx, edx
dec eax
and eax, 2
cmp byte [ecx + ebp], 0x54
mov dword [esp + 0x158], eax
jne 0x4408d1
lea ebx, [ebx]
mov eax, dword [esp + 0x15c]
mov ecx, dword [esp + 0x154]
mov edx, dword [esp + 0x150]
inc eax
push eax
mov eax, dword [esp + 0x15c]
push eax
mov eax, dword [esp + 0x150]
push ecx
movzx ecx, byte [ebp]
push edx
movzx edx, byte [ecx + 0x484690]
push edi
push eax
push ebx
add edx, ebp
push edx
push esi
call fcn.0043c876
add esp, 0x24
test eax, eax
je 0x4408a7
cmp eax, 0xfffffc1c
jne 0x441fae
movzx eax, byte [ebp + 1]
movzx ecx, byte [ebp + 2]
shl eax, 8
or eax, ecx
movzx edx, byte [ebp + eax + 1]
add ebp, eax
movzx eax, byte [ebp + 2]
shl edx, 8
or edx, eax
cmp byte [edx + ebp], 0x54
je 0x440856
mov eax, dword [esp + 0x158]
test eax, eax
jne 0x440cb9
movzx ecx, byte [ebp]
movzx edx, byte [ecx + 0x484690]
add ebp, edx
jmp 0x440a26
cmp byte [ebp + 3], 0x19
lea ecx, [ebp + 3]
mov dword [esp + 0x14], ecx
jne 0x44090f
mov edx, dword [esp + 0x150]
movzx ecx, byte [ebp + 4]
and edx, 0xfffffff8
or ecx, edx
mov dword [esp + 0x150], ecx
mov ecx, dword [esp + 0x15c]
mov edx, dword [esp + 0x154]
inc ecx
cmp byte [ebp], 0x57
push ecx
mov ecx, dword [esp + 0x154]
jne 0x440952
push 0
push edx
mov edx, dword [esp + 0x20]
push ecx
push edi
push eax
push ebx
push edx
push esi
call fcn.0043c876
add esp, 0x24
test eax, eax
jne 0x441fae
mov ebp, dword [esp + 0x38]
jmp 0x440a1b
push 2
push edx
mov edx, dword [esp + 0x44]
push ecx
push edi
push eax
push ebx
push edx
push esi
call fcn.0043c876
add esp, 0x24
test eax, eax
jne 0x441fae
mov ebp, dword [esp + 0x14]
jmp 0x440a1b
cmp byte [edx], 0x61
sbb eax, eax
and eax, 0xfffffffe
add eax, 2
cmp byte [ebp], 0x57
mov dword [esp + 0x158], eax
jne 0x4409da
mov eax, dword [esp + 0x15c]
mov ecx, dword [esp + 0x154]
mov edx, dword [esp + 0x3c]
inc eax
push eax
mov eax, dword [esp + 0x14c]
push 0
push ecx
push edx
push edi
push eax
push ebx
add ebp, 3
push ebp
push esi
call fcn.0043c876
add esp, 0x24
test eax, eax
jne 0x441fae
cmp dword [esp + 0x158], eax
jne 0x440f0f
mov ebp, dword [esp + 0x38]
jmp 0x440a26
mov ecx, dword [esp + 0x15c]
mov edx, dword [esp + 0x158]
mov eax, dword [esp + 0x154]
inc ecx
push ecx
mov ecx, dword [esp + 0x40]
push edx
mov edx, dword [esp + 0x150]
push eax
mov eax, dword [esp + 0x44]
push ecx
push edi
push edx
push ebx
push eax
push esi
call fcn.0043c876
add esp, 0x24
test eax, eax
jne 0x441fae
add ebp, 3
mov dword [esp + 0x158], 0
mov edx, dword [edi]
mov ecx, dword [edi + 0x38]
mov dword [esp + 0x34], ecx
cmp edx, dword [edi + 4]
jb 0x43c8a7
inc dword [edi]
mov eax, 0xfffffff8
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
mov eax, 0xffffffeb
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
mov eax, dword [esp + 0x15c]
mov ecx, dword [esp + 0x158]
mov edx, dword [esp + 0x154]
inc eax
push eax
mov eax, dword [esp + 0x154]
push ecx
mov ecx, dword [esp + 0x150]
push edx
movzx edx, byte [ebp]
push eax
movzx eax, byte [edx + 0x484690]
push edi
push ecx
push ebx
add eax, ebp
push eax
push esi
call fcn.0043c876
add esp, 0x24
test eax, eax
jne 0x441fae
mov eax, 0xfffffc1a
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
mov ecx, dword [esp + 0x15c]
mov edx, dword [esp + 0x158]
mov eax, dword [esp + 0x154]
inc ecx
push ecx
mov ecx, dword [esp + 0x154]
push edx
mov edx, dword [esp + 0x150]
push eax
movzx eax, byte [ebp]
push ecx
movzx ecx, byte [eax + 0x484690]
push edi
push edx
push ebx
add ecx, ebp
push ecx
push esi
call fcn.0043c876
add esp, 0x24
test eax, eax
jne 0x441fae
mov eax, 0xfffffc19
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
mov edx, dword [esp + 0x15c]
mov eax, dword [esp + 0x158]
mov ecx, dword [esp + 0x154]
inc edx
push edx
mov edx, dword [esp + 0x154]
push eax
mov eax, dword [esp + 0x150]
push ecx
movzx ecx, byte [ebp]
push edx
movzx edx, byte [ecx + 0x484690]
push edi
push eax
push ebx
add edx, ebp
push edx
push esi
call fcn.0043c876
add esp, 0x24
test eax, eax
jne 0x441fae
mov dword [edi + 0x60], esi
mov eax, 0xfffffc1b
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
mov eax, dword [esp + 0x15c]
mov ecx, dword [esp + 0x158]
mov edx, dword [esp + 0x154]
inc eax
push eax
mov eax, dword [esp + 0x154]
push ecx
mov ecx, dword [esp + 0x150]
push edx
movzx edx, byte [ebp]
push eax
movzx eax, byte [edx + 0x484690]
push edi
push ecx
push ebx
add eax, ebp
push eax
push esi
call fcn.0043c876
add esp, 0x24
test eax, eax
jne 0x441fae
mov eax, 0xfffffc1c
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
mov eax, dword [edi + 0xc]
mov edx, dword [eax + edx*4]
mov dword [esp + 0x14], edx
lea edx, [ecx + ecx]
mov edx, dword [eax + edx*4 + 4]
mov dword [esp + 0x3c], edx
mov edx, dword [edi + 0x10]
sub edx, ecx
mov ecx, dword [eax + edx*4]
lea eax, [eax + edx*4]
mov edx, dword [edi + 0x6c]
mov dword [esp + 0x38], ecx
mov dword [esp + 0x30], edx
xor edx, edx
mov ecx, esi
sub ecx, dword [edi + 0x58]
cmp dword [esp + 0x28], 0x62
mov dword [eax], ecx
mov eax, dword [esp + 0x15c]
setne dl
dec edx
and edx, 2
inc eax
mov dword [esp + 0x158], edx
mov dword [esp + 0x1c], eax
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x158]
mov eax, dword [esp + 0x154]
push ecx
mov ecx, dword [esp + 0x154]
push edx
mov edx, dword [esp + 0x150]
push eax
movzx eax, byte [ebp]
push ecx
movzx ecx, byte [eax + 0x484690]
push edi
push edx
push ebx
add ecx, ebp
push ecx
push esi
call fcn.0043c876
add esp, 0x24
test eax, eax
je 0x440c65
cmp eax, 0xfffffc1c
jne 0x441fae
mov edx, dword [esp + 0x30]
mov dword [edi + 0x6c], edx
movzx eax, byte [ebp + 1]
movzx ecx, byte [ebp + 2]
shl eax, 8
or eax, ecx
add ebp, eax
cmp byte [ebp], 0x54
je 0x440c18
mov ecx, dword [esp + 0x24]
mov edx, dword [edi + 0xc]
mov esi, dword [esp + 0x14]
lea eax, [ecx + ecx]
mov dword [edx + eax*4], esi
mov edx, dword [edi + 0xc]
mov esi, dword [esp + 0x3c]
mov dword [edx + eax*4 + 4], esi
mov eax, dword [edi + 0x10]
mov edx, dword [esp + 0x38]
sub eax, ecx
mov ecx, dword [edi + 0xc]
mov dword [ecx + eax*4], edx
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
mov eax, dword [esp + 0x15c]
mov ecx, dword [esp + 0x158]
mov edx, dword [esp + 0x154]
inc eax
push eax
mov eax, dword [esp + 0x154]
push ecx
mov ecx, dword [esp + 0x150]
push edx
movzx edx, byte [ebp]
push eax
movzx eax, byte [edx + 0x484690]
push edi
push ecx
push ebx
add eax, ebp
push eax
push esi
call fcn.0043c876
add esp, 0x24
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
cmp dword [edi + 0x44], edx
je 0x440d0f
cmp esi, ebx
je case.0x441e59.14
mov edx, dword [esp + 0x148]
mov dword [edi + 0x64], esi
mov dword [edi + 0x68], edx
mov dword [edi + 0x60], ebx
mov eax, 1
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
movzx eax, byte [ebp + 1]
movzx edx, byte [ebp + 2]
mov ecx, dword [edi + 0x54]
shl eax, 8
or eax, edx
add eax, ecx
mov dword [esp + 0x30], eax
cmp eax, ecx
jne 0x440d53
mov dword [esp + 0x44], 0
jmp 0x440d64
movzx ecx, byte [eax + 3]
movzx edx, byte [eax + 4]
shl ecx, 8
or ecx, edx
mov dword [esp + 0x44], ecx
mov eax, dword [edi + 0x7c]
lea ecx, [esp + 0x40]
mov dword [edi + 0x7c], ecx
mov ecx, dword [edi + 0x10]
add ebp, 3
cmp ecx, 0x1e
mov dword [esp + 0x40], eax
mov dword [esp + 0x48], ebp
mov dword [esp + 0x54], ecx
jg 0x440d92
lea eax, [esp + 0xc0]
mov dword [esp + 0x50], eax
jmp 0x440dbf
lea edx, [ecx*4]
push edx
call dword [0x490650]
add esp, 4
mov dword [esp + 0x50], eax
test eax, eax
jne 0x440dbb
mov eax, 0xfffffffa
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
mov ecx, dword [esp + 0x54]
mov edx, dword [edi + 0xc]
add ecx, ecx
add ecx, ecx
push ecx
push edx
push eax
call fcn.004135d0
mov ebp, dword [esp + 0x3c]
mov ecx, dword [esp + 0x168]
mov dword [esp + 0x58], ebx
mov al, byte [ebp]
add esp, 0xc
cmp al, 0x61
sbb ebx, ebx
and ebx, 0xfffffffe
add ebx, 2
inc ecx
mov dword [esp + 0x1c], ecx
lea esp, [esp]
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x154]
push edx
mov edx, dword [esp + 0x154]
push ebx
push ecx
mov ecx, dword [esp + 0x154]
push edx
movzx edx, al
movzx eax, byte [edx + 0x484690]
push edi
push ecx
push esi
add eax, ebp
push eax
push esi
call fcn.0043c876
add esp, 0x24
mov dword [esp + 0x14], eax
cmp eax, 1
je 0x440eb3
test eax, eax
je 0x440e48
cmp eax, 0xfffffc1c
jne 0x440ee3
mov edx, dword [esp + 0x54]
lea ecx, [esp + 0x40]
lea eax, [edx*4]
mov edx, dword [edi + 0xc]
mov dword [edi + 0x7c], ecx
mov ecx, dword [esp + 0x50]
push eax
push ecx
push edx
call fcn.004135d0
movzx eax, byte [ebp + 1]
movzx ecx, byte [ebp + 2]
shl eax, 8
or eax, ecx
add ebp, eax
mov al, byte [ebp]
add esp, 0xc
cmp al, 0x54
je 0x440df6
mov eax, dword [esp + 0x40]
mov dword [edi + 0x7c], eax
mov eax, dword [esp + 0x50]
lea ecx, [esp + 0xc0]
cmp eax, ecx
je 0x440ea6
push eax
call dword [0x490654]
add esp, 4
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
mov eax, dword [esp + 0x50]
mov edx, dword [esp + 0x40]
lea ecx, [esp + 0xc0]
mov dword [edi + 0x7c], edx
cmp eax, ecx
je 0x440ed3
push eax
call dword [0x490654]
add esp, 4
mov eax, 1
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
mov ecx, dword [esp + 0x50]
lea edx, [esp + 0xc0]
cmp ecx, edx
je 0x441fae
push ecx
call dword [0x490654]
mov eax, dword [esp + 0x18]
add esp, 4
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
mov edx, dword [esp + 0x15c]
mov eax, dword [esp + 0x158]
mov ecx, dword [esp + 0x154]
inc edx
push edx
mov edx, dword [esp + 0x40]
push eax
mov eax, dword [esp + 0x150]
push ecx
mov ecx, dword [esp + 0x44]
push edx
push edi
push eax
push ebx
push ecx
push esi
call fcn.0043c876
add esp, 0x24
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
mov edx, dword [esp + 0x148]
mov dword [edi + 0x64], esi
mov dword [edi + 0x68], edx
mov eax, 1
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
cmp ecx, eax
mov dword [esp + 0x2c], esi
mov dword [esp + 0x10], ecx
jge 0x440fbf
jmp 0x440f86
mov eax, dword [esp + 0x150]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
push eax
push edi
push ecx
push esi
push edx
call fcn.00434c56
add esp, 0x14
test eax, eax
je 0x440fb9
mov eax, dword [esp + 0x10]
add esi, dword [esp + 0x24]
inc eax
cmp eax, dword [esp + 0x18]
mov dword [esp + 0x10], eax
jl 0x440f86
cmp esi, dword [esp + 0x2c]
jb 0x441008
mov eax, dword [esp + 0x15c]
inc eax
mov dword [esp + 0x1c], eax
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x154]
mov eax, dword [esp + 0x150]
push ecx
mov ecx, dword [esp + 0x14c]
push 0
push edx
push eax
push edi
push ecx
push ebx
push ebp
push esi
call fcn.0043c876
add esp, 0x24
test eax, eax
jne 0x441fae
sub esi, dword [esp + 0x24]
cmp esi, dword [esp + 0x2c]
jae 0x440fcb
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
mov ecx, eax
and ecx, 7
mov edx, 1
shl edx, cl
mov ecx, dword [esp + 0x38]
shr eax, 3
mov al, byte [eax + ecx]
test al, dl
je case.0x441e59.14
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x154]
mov eax, dword [esp + 0x150]
inc dword [esp + 0x10]
push ecx
mov ecx, dword [esp + 0x14c]
push 0
push edx
push eax
push edi
push ecx
push ebx
push ebp
push esi
call fcn.0043c876
add esp, 0x24
test eax, eax
je 0x43df56
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
test eax, eax
jne 0x441fae
jmp 0x441086
mov edx, dword [esp + 0x18]
cmp dword [esp + 0x10], edx
jge case.0x441e59.14
cmp esi, dword [edi + 0x5c]
jae case.0x441e59.14
movzx eax, byte [esi]
mov ecx, eax
and ecx, 7
mov edx, 1
shl edx, cl
mov ecx, dword [esp + 0x38]
shr eax, 3
mov al, byte [eax + ecx]
inc esi
test al, dl
je case.0x441e59.14
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x154]
mov eax, dword [esp + 0x150]
inc dword [esp + 0x10]
push ecx
mov ecx, dword [esp + 0x14c]
push 0
push edx
push eax
push edi
push ecx
push ebx
push ebp
push esi
call fcn.0043c876
add esp, 0x24
test eax, eax
je 0x441086
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
cmp dword [esp + 0x34], 0
mov dword [esp + 0x2c], esi
je 0x44127a
cmp eax, ecx
jge 0x4411e1
mov dword [esp + 0x14], 1
cmp esi, dword [edi + 0x5c]
jae 0x4411e1
movzx eax, byte [esi]
cmp eax, 0xc0
jb 0x4411a0
mov edx, eax
and edx, 0x3f
movzx edx, byte [edx + 0x484750]
lea ecx, [edx + edx*2]
add ecx, ecx
mov dword [esp + 0x14], ecx
mov ecx, dword [edx*4 + 0x484734]
and ecx, eax
mov eax, ecx
mov ecx, dword [esp + 0x14]
shl eax, cl
mov ecx, 1
cmp edx, ecx
mov dword [esp + 0x24], edx
mov dword [esp + 0x3c], ecx
jl 0x44119b
movzx ecx, byte [ecx + esi]
mov edx, dword [esp + 0x14]
sub edx, 6
and ecx, 0x3f
mov dword [esp + 0x30], ecx
mov ecx, edx
mov dword [esp + 0x14], edx
mov edx, dword [esp + 0x30]
shl edx, cl
mov ecx, dword [esp + 0x3c]
inc ecx
mov dword [esp + 0x3c], ecx
or eax, edx
mov edx, dword [esp + 0x24]
cmp ecx, edx
jle 0x44116a
inc edx
mov dword [esp + 0x14], edx
cmp eax, 0xff
jbe 0x4411b0
cmp dword [esp + 0x28], 0x4e
je 0x4411e1
jmp 0x4411ca
mov ecx, eax
and ecx, 7
mov edx, 1
shl edx, cl
mov ecx, dword [esp + 0x38]
shr eax, 3
mov al, byte [eax + ecx]
test al, dl
je 0x4411e1
mov eax, dword [esp + 0x10]
add esi, dword [esp + 0x14]
inc eax
cmp eax, dword [esp + 0x18]
mov dword [esp + 0x10], eax
jl 0x441114
mov eax, dword [esp + 0x15c]
mov ecx, dword [esp + 0x154]
mov edx, dword [esp + 0x150]
inc eax
push eax
push 0
push ecx
push edx
push edi
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x15c]
push eax
push ebx
push ebp
push esi
call fcn.0043c876
add esp, 0x24
test eax, eax
jne 0x441fae
mov ecx, esi
dec esi
cmp ecx, dword [esp + 0x2c]
je 0x441300
mov dl, byte [esi]
and dl, 0xc0
cmp dl, 0x80
jne 0x441240
lea ecx, [ecx]
mov al, byte [esi - 1]
dec esi
and al, 0xc0
cmp al, 0x80
je 0x441236
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x154]
mov eax, dword [esp + 0x150]
push ecx
mov ecx, dword [esp + 0x14c]
push 0
push edx
push eax
push edi
push ecx
push ebx
push ebp
push esi
call fcn.0043c876
add esp, 0x24
test eax, eax
je 0x44121c
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
cmp eax, ecx
jge 0x4412b6
cmp esi, dword [edi + 0x5c]
jae 0x4412b0
movzx eax, byte [esi]
mov ecx, eax
and ecx, 7
mov edx, 1
shl edx, cl
mov ecx, dword [esp + 0x38]
shr eax, 3
mov al, byte [eax + ecx]
test al, dl
je 0x4412b0
mov eax, dword [esp + 0x10]
inc eax
inc esi
cmp eax, dword [esp + 0x18]
mov dword [esp + 0x10], eax
jl 0x44127e
cmp esi, dword [esp + 0x2c]
jb 0x441300
mov ecx, dword [esp + 0x15c]
inc ecx
mov dword [esp + 0x1c], ecx
lea esp, [esp]
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x154]
mov ecx, dword [esp + 0x150]
push edx
mov edx, dword [esp + 0x14c]
push 0
push eax
push ecx
push edi
push edx
push ebx
push ebp
push esi
call fcn.0043c876
add esp, 0x24
test eax, eax
jne 0x441fae
dec esi
cmp esi, dword [esp + 0x2c]
jae 0x4412c6
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
cmp ecx, eax
mov dword [esp + 0x2c], esi
mov dword [esp + 0x10], ecx
jge 0x4413ce
mov dword [esp + 0x14], 1
cmp esi, dword [edi + 0x5c]
jae 0x4413ce
cmp dword [esp + 0x34], 0
movzx edx, byte [esi]
je 0x4413a5
cmp edx, 0xc0
jb 0x4413a5
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x484750]
lea ecx, [eax + eax*2]
mov dword [esp + 0x3c], eax
mov eax, dword [eax*4 + 0x484734]
and eax, edx
add ecx, ecx
shl eax, cl
mov dword [esp + 0x14], 1
mov edx, eax
mov eax, dword [esp + 0x3c]
cmp eax, 1
mov dword [esp + 0x20], edx
jl 0x4413a0
mov edx, dword [esp + 0x14]
movzx eax, byte [edx + esi]
and eax, 0x3f
sub ecx, 6
shl eax, cl
inc edx
mov dword [esp + 0x14], edx
or dword [esp + 0x20], eax
mov eax, dword [esp + 0x3c]
cmp edx, eax
jle 0x44137b
mov edx, dword [esp + 0x20]
inc eax
mov dword [esp + 0x14], eax
mov ecx, dword [esp + 0x38]
push ecx
push edx
call fcn.00434695
add esp, 8
test eax, eax
je 0x4413ce
mov eax, dword [esp + 0x10]
add esi, dword [esp + 0x14]
inc eax
cmp eax, dword [esp + 0x18]
mov dword [esp + 0x10], eax
jl 0x44131d
mov eax, dword [esp + 0x15c]
mov edx, dword [esp + 0x154]
mov ecx, dword [esp + 0x148]
inc eax
push eax
push 0
push edx
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x15c]
push eax
push edi
push ecx
push ebx
push ebp
push esi
call fcn.0043c876
add esp, 0x24
test eax, eax
jne 0x441fae
mov edx, esi
dec esi
cmp edx, dword [esp + 0x2c]
je case.0x441e59.14
cmp dword [esp + 0x34], 0
je 0x441432
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x441432
nop
mov cl, byte [esi - 1]
dec esi
and cl, 0xc0
cmp cl, 0x80
je 0x441426
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x154]
mov ecx, dword [esp + 0x150]
push edx
mov edx, dword [esp + 0x14c]
push 0
push eax
push ecx
push edi
push edx
push ebx
push ebp
push esi
call fcn.0043c876
add esp, 0x24
test eax, eax
je 0x441409
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
mov eax, dword [esp + 0x15c]
mov ecx, dword [esp + 0x154]
mov edx, dword [esp + 0x150]
inc eax
push eax
push 0
push ecx
push edx
push edi
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x15c]
push eax
push ebx
push ebp
push esi
call fcn.0043c876
add esp, 0x24
test eax, eax
jne 0x441fae
mov ecx, dword [esp + 0x18]
cmp dword [esp + 0x10], ecx
jge case.0x441e59.14
cmp esi, dword [edi + 0x5c]
jae case.0x441e59.14
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x28]
push edx
push eax
push esi
call fcn.00413935
add esp, 0xc
test eax, eax
jne case.0x441e59.14
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x154]
add esi, dword [esp + 0x24]
inc dword [esp + 0x10]
push ecx
mov ecx, dword [esp + 0x14c]
push eax
mov eax, dword [esp + 0x158]
push edx
push eax
push edi
push ecx
push ebx
push ebp
push esi
call fcn.0043c876
add esp, 0x24
test eax, eax
je 0x4414a7
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x154]
mov edx, dword [esp + 0x150]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x15c]
inc eax
push eax
push 0
push ecx
push edx
push edi
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x15c]
push eax
push ebx
push ebp
push esi
call fcn.0043c876
add esp, 0x24
test eax, eax
jne 0x441fae
jmp 0x441566
mov ecx, dword [esp + 0x18]
cmp dword [esp + 0x10], ecx
jge case.0x441e59.14
cmp esi, dword [edi + 0x5c]
jae case.0x441e59.14
movzx edx, byte [esi]
mov eax, dword [edi + 0x24]
movzx ecx, byte [edx + eax]
inc esi
cmp dword [esp + 0x20], ecx
jne case.0x441e59.14
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x154]
mov ecx, dword [esp + 0x150]
inc dword [esp + 0x10]
push edx
mov edx, dword [esp + 0x14c]
push 0
push eax
push ecx
push edi
push edx
push ebx
push ebp
push esi
call fcn.0043c876
add esp, 0x24
test eax, eax
je 0x441566
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
mov eax, dword [esp + 0x15c]
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x150]
inc eax
push eax
push 0
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x15c]
push eax
push ecx
push edi
mov dword [esp + 0x24], edx
mov edx, dword [esp + 0x15c]
push edx
push ebx
push ebp
push esi
call fcn.0043c876
add esp, 0x24
test eax, eax
jne 0x441fae
lea ecx, [ecx]
mov eax, dword [esp + 0x18]
cmp dword [esp + 0x10], eax
jge case.0x441e59.14
cmp esi, dword [edi + 0x5c]
jae case.0x441e59.14
movzx ecx, byte [esi]
inc esi
cmp dword [esp + 0x20], ecx
jne case.0x441e59.14
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x154]
mov ecx, dword [esp + 0x150]
inc dword [esp + 0x10]
push edx
mov edx, dword [esp + 0x14c]
push 0
push eax
push ecx
push edi
push edx
push ebx
push ebp
push esi
call fcn.0043c876
add esp, 0x24
test eax, eax
je 0x441616
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
mov eax, dword [esp + 0x15c]
mov edx, dword [esp + 0x154]
mov ecx, dword [esp + 0x148]
inc eax
push eax
push 0
push edx
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x15c]
push eax
push edi
push ecx
push ebx
push ebp
push esi
call fcn.0043c876
add esp, 0x24
cmp dword [esp + 0x34], 0
je 0x441795
test eax, eax
jne 0x441fae
lea esp, [esp]
mov edx, dword [esp + 0x18]
cmp dword [esp + 0x10], edx
jge case.0x441e59.14
cmp esi, dword [edi + 0x5c]
jae case.0x441e59.14
movzx ecx, byte [esi]
inc esi
cmp ecx, 0xc0
jb 0x44173a
mov eax, ecx
and eax, 0x3f
movzx eax, byte [eax + 0x484750]
lea edx, [eax + eax*2]
add edx, edx
mov dword [esp + 0x14], edx
mov edx, dword [eax*4 + 0x484734]
and edx, ecx
mov ecx, dword [esp + 0x14]
shl edx, cl
mov ecx, edx
mov dword [esp + 0x3c], ecx
test eax, eax
jle 0x44173a
movzx edx, byte [esi]
mov ecx, dword [esp + 0x14]
sub ecx, 6
and edx, 0x3f
shl edx, cl
mov dword [esp + 0x14], ecx
mov ecx, dword [esp + 0x3c]
dec eax
or ecx, edx
inc esi
mov dword [esp + 0x3c], ecx
test eax, eax
jg 0x441717
cmp ecx, 0x100
jae 0x441749
mov eax, dword [edi + 0x24]
movzx ecx, byte [eax + ecx]
cmp dword [esp + 0x20], ecx
je case.0x441e59.14
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x154]
mov eax, dword [esp + 0x150]
inc dword [esp + 0x10]
push ecx
mov ecx, dword [esp + 0x14c]
push 0
push edx
push eax
push edi
push ecx
push ebx
push ebp
push esi
call fcn.0043c876
add esp, 0x24
test eax, eax
je 0x4416c6
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
test eax, eax
jne 0x441fae
jmp 0x4417a6
mov edx, dword [esp + 0x18]
cmp dword [esp + 0x10], edx
jge case.0x441e59.14
cmp esi, dword [edi + 0x5c]
jae case.0x441e59.14
movzx eax, byte [esi]
mov ecx, dword [edi + 0x24]
movzx edx, byte [eax + ecx]
inc esi
cmp dword [esp + 0x20], edx
je case.0x441e59.14
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x154]
mov edx, dword [esp + 0x150]
inc dword [esp + 0x10]
push eax
mov eax, dword [esp + 0x14c]
push 0
push ecx
push edx
push edi
push eax
push ebx
push ebp
push esi
call fcn.0043c876
add esp, 0x24
test eax, eax
je 0x4417a6
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
mov eax, dword [esp + 0x15c]
mov ecx, dword [esp + 0x154]
mov edx, dword [esp + 0x150]
inc eax
push eax
push 0
push ecx
push edx
push edi
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x15c]
push eax
push ebx
push ebp
push esi
call fcn.0043c876
add esp, 0x24
cmp dword [esp + 0x34], 0
je 0x441916
test eax, eax
jne 0x441fae
mov ecx, dword [esp + 0x18]
cmp dword [esp + 0x10], ecx
jge case.0x441e59.14
cmp esi, dword [edi + 0x5c]
jae case.0x441e59.14
movzx ecx, byte [esi]
inc esi
cmp ecx, 0xc0
jb 0x4418ca
mov edx, ecx
and edx, 0x3f
movzx eax, byte [edx + 0x484750]
lea edx, [eax + eax*2]
add edx, edx
mov dword [esp + 0x14], edx
mov edx, dword [eax*4 + 0x484734]
and edx, ecx
mov ecx, dword [esp + 0x14]
shl edx, cl
mov ecx, edx
mov dword [esp + 0x3c], ecx
test eax, eax
jle 0x4418ca
movzx edx, byte [esi]
mov ecx, dword [esp + 0x14]
sub ecx, 6
and edx, 0x3f
shl edx, cl
mov dword [esp + 0x14], ecx
mov ecx, dword [esp + 0x3c]
dec eax
or ecx, edx
inc esi
mov dword [esp + 0x3c], ecx
test eax, eax
jg 0x4418a7
cmp dword [esp + 0x20], ecx
je case.0x441e59.14
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x154]
mov edx, dword [esp + 0x150]
inc dword [esp + 0x10]
push eax
mov eax, dword [esp + 0x14c]
push 0
push ecx
push edx
push edi
push eax
push ebx
push ebp
push esi
call fcn.0043c876
add esp, 0x24
test eax, eax
je 0x441856
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
test eax, eax
jne 0x441fae
jmp 0x441926
mov ecx, dword [esp + 0x18]
cmp dword [esp + 0x10], ecx
jge case.0x441e59.14
cmp esi, dword [edi + 0x5c]
jae case.0x441e59.14
movzx edx, byte [esi]
inc esi
cmp dword [esp + 0x20], edx
je case.0x441e59.14
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x154]
mov edx, dword [esp + 0x150]
inc dword [esp + 0x10]
push eax
mov eax, dword [esp + 0x14c]
push 0
push ecx
push edx
push edi
push eax
push ebx
push ebp
push esi
call fcn.0043c876
add esp, 0x24
test eax, eax
je 0x441926
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
mov eax, 0xfffffff2
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
cmp dword [esp + 0x34], 0
mov dword [esp + 0x10], ebx
je 0x441d86
mov eax, dword [esp + 0x15c]
mov ecx, dword [esp + 0x154]
mov edx, dword [esp + 0x150]
inc eax
push eax
push 0
push ecx
mov ecx, dword [esp + 0x150]
push edx
push edi
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x15c]
push eax
push ecx
push ebp
push esi
call fcn.0043c876
add esp, 0x24
test eax, eax
jne 0x441fae
cmp ebx, dword [esp + 0x18]
jge case.0x441e59.14
mov eax, dword [edi + 0x5c]
cmp esi, eax
jae case.0x441e59.14
cmp dword [esp + 0x28], 0xc
jne 0x441a50
mov ecx, dword [edi + 0x18]
test ecx, ecx
je 0x441a2b
mov edx, dword [esp + 0x34]
push edx
lea edx, [edi + 0x1c]
push edx
push eax
push ecx
push esi
call fcn.00434aca
add esp, 0x14
test eax, eax
jne case.0x441e59.14
jmp 0x441a50
mov ecx, dword [edi + 0x1c]
sub eax, ecx
cmp esi, eax
ja 0x441a50
mov al, byte [esi]
cmp al, byte [edi + 0x20]
jne 0x441a50
cmp ecx, 1
je case.0x441e59.14
mov cl, byte [esi + 1]
cmp cl, byte [edi + 0x21]
je case.0x441e59.14
movzx eax, byte [esi]
inc esi
cmp eax, 0xc0
jb 0x441aa1
mov edx, eax
and edx, 0x3f
movzx edx, byte [edx + 0x484750]
mov ebx, dword [edx*4 + 0x484734]
lea ecx, [edx + edx*2]
and ebx, eax
add ecx, ecx
shl ebx, cl
mov eax, ebx
test edx, edx
jle 0x441aa1
jmp 0x441a8a
mov ecx, dword [esp + 0x30]
movzx ebx, byte [esi]
sub ecx, 6
and ebx, 0x3f
shl ebx, cl
dec edx
inc esi
mov dword [esp + 0x30], ecx
or eax, ebx
test edx, edx
jg 0x441a86
mov ecx, dword [esp + 0x28]
add ecx, 0xfffffffa
cmp ecx, 0xf
ja case.0x441e3f.15
jmp dword [ecx*4 + 0x442302]
cmp eax, 0xd
ja 0x441af1
je 0x441ad9
cmp eax, 0xa
je case.0x441ab1.12
jbe case.0x441e59.14
cmp eax, 0xc
ja case.0x441e59.14
jmp 0x441b0e
cmp esi, dword [edi + 0x5c]
jae case.0x441ab1.12
cmp byte [esi], 0xa
jne case.0x441ab1.12
inc esi
jmp case.0x441ab1.12
cmp eax, 0x85
je 0x441b0e
cmp eax, 0x2027
jbe case.0x441e59.14
cmp eax, 0x2029
ja case.0x441e59.14
cmp dword [edi + 0x50], 0
jne case.0x441e59.14
jmp case.0x441ab1.12
cmp eax, 0x180e
ja 0x441b5e
je case.0x441e59.14
cmp eax, 0xa0
ja 0x441b4e
je case.0x441e59.14
cmp eax, 9
je case.0x441e59.14
cmp eax, 0x20
je case.0x441e59.14
jmp case.0x441ab1.12
cmp eax, 0x1680
je case.0x441e59.14
jmp case.0x441ab1.12
cmp eax, 0x205f
ja 0x441b91
je case.0x441e59.14
cmp eax, 0x2000
jb case.0x441ab1.12
cmp eax, 0x200a
jbe case.0x441e59.14
cmp eax, 0x202f
je case.0x441e59.14
jmp case.0x441ab1.12
cmp eax, 0x3000
je case.0x441e59.14
jmp case.0x441ab1.12
cmp eax, 0x180e
ja 0x441be2
je case.0x441ab1.12
cmp eax, 0xa0
ja 0x441bd2
je case.0x441ab1.12
cmp eax, 9
je case.0x441ab1.12
cmp eax, 0x20
jne case.0x441e59.14
jmp case.0x441ab1.12
cmp eax, 0x1680
jne case.0x441e59.14
jmp case.0x441ab1.12
cmp eax, 0x205f
ja 0x441c15
je case.0x441ab1.12
cmp eax, 0x2000
jb case.0x441e59.14
cmp eax, 0x200a
jbe case.0x441ab1.12
cmp eax, 0x202f
jne case.0x441e59.14
jmp case.0x441ab1.12
cmp eax, 0x3000
jne case.0x441e59.14
jmp case.0x441ab1.12
cmp eax, 0x85
ja 0x441c49
je case.0x441e59.14
cmp eax, 0xa
jb case.0x441ab1.12
cmp eax, 0xd
jbe case.0x441e59.14
jmp case.0x441ab1.12
cmp eax, 0x2028
jb case.0x441ab1.12
cmp eax, 0x2029
jbe case.0x441e59.14
jmp case.0x441ab1.12
cmp eax, 0x85
ja 0x441c88
je case.0x441ab1.12
cmp eax, 0xa
jb case.0x441e59.14
cmp eax, 0xd
ja case.0x441e59.14
jmp case.0x441ab1.12
cmp eax, 0x2028
jb case.0x441e59.14
cmp eax, 0x2029
ja case.0x441e59.14
jmp case.0x441ab1.12
cmp eax, 0x100
jae case.0x441ab1.12
mov ecx, dword [edi + 0x28]
test byte [eax + ecx], 4
jne case.0x441e59.14
jmp case.0x441ab1.12
cmp eax, 0x100
jae case.0x441e59.14
mov edx, dword [edi + 0x28]
test byte [eax + edx], 4
je case.0x441e59.14
jmp case.0x441ab1.12
cmp eax, 0x100
jae case.0x441ab1.12
mov ecx, dword [edi + 0x28]
test byte [eax + ecx], 1
jne case.0x441e59.14
jmp case.0x441ab1.12
cmp eax, 0x100
jae case.0x441e59.14
mov edx, dword [edi + 0x28]
test byte [eax + edx], 1
je case.0x441e59.14
jmp case.0x441ab1.12
cmp eax, 0x100
jae case.0x441ab1.12
mov ecx, dword [edi + 0x28]
test byte [eax + ecx], 0x10
jne case.0x441e59.14
jmp case.0x441ab1.12
cmp eax, 0x100
jae case.0x441e59.14
mov edx, dword [edi + 0x28]
test byte [eax + edx], 0x10
je case.0x441e59.14
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x154]
mov edx, dword [esp + 0x150]
mov ebx, dword [esp + 0x10]
push eax
mov eax, dword [esp + 0x14c]
push 0
push ecx
mov ecx, dword [esp + 0x150]
push edx
push edi
push eax
push ecx
push ebp
inc ebx
push esi
mov dword [esp + 0x34], ebx
call fcn.0043c876
add esp, 0x24
test eax, eax
je 0x4419ea
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
mov ebx, dword [esp + 0x15c]
mov edx, dword [esp + 0x154]
mov eax, dword [esp + 0x150]
mov ecx, dword [esp + 0x148]
inc ebx
push ebx
push 0
push edx
mov edx, dword [esp + 0x150]
push eax
push edi
push ecx
push edx
push ebp
push esi
call fcn.0043c876
add esp, 0x24
test eax, eax
jne 0x441fae
mov eax, dword [esp + 0x10]
cmp eax, dword [esp + 0x18]
jge case.0x441e59.14
mov eax, dword [edi + 0x5c]
cmp esi, eax
jae case.0x441e59.14
cmp dword [esp + 0x28], 0xc
jne 0x441e2b
mov ecx, dword [edi + 0x18]
test ecx, ecx
je 0x441e06
push 0
lea edx, [edi + 0x1c]
push edx
push eax
push ecx
push esi
call fcn.00434aca
add esp, 0x14
test eax, eax
jne case.0x441e59.14
jmp 0x441e2b
mov ecx, dword [edi + 0x1c]
sub eax, ecx
cmp esi, eax
ja 0x441e2b
mov al, byte [esi]
cmp al, byte [edi + 0x20]
jne 0x441e2b
cmp ecx, 1
je case.0x441e59.14
mov cl, byte [esi + 1]
cmp cl, byte [edi + 0x21]
je case.0x441e59.14
mov ecx, dword [esp + 0x28]
movzx eax, byte [esi]
add ecx, 0xfffffffa
inc esi
cmp ecx, 0xf
ja case.0x441e3f.15
jmp dword [ecx*4 + 0x442342]
add eax, 0xfffffff6
cmp eax, 0x7b
ja case.0x441e59.14
movzx edx, byte [eax + 0x442392]
jmp dword [edx*4 + 0x442382]
cmp esi, dword [edi + 0x5c]
jae case.0x441e3f.12
cmp byte [esi], 0xa
jne case.0x441e3f.12
inc esi
jmp case.0x441e3f.12
cmp dword [edi + 0x50], 0
jne case.0x441e59.14
jmp case.0x441e3f.12
cmp eax, 9
je case.0x441e59.14
cmp eax, 0x20
je case.0x441e59.14
cmp eax, 0xa0
je case.0x441e59.14
jmp case.0x441e3f.12
cmp eax, 9
je case.0x441e3f.12
cmp eax, 0x20
je case.0x441e3f.12
cmp eax, 0xa0
jne case.0x441e59.14
jmp case.0x441e3f.12
cmp eax, 0xa
jb case.0x441e3f.12
cmp eax, 0xd
jbe case.0x441e59.14
cmp eax, 0x85
je case.0x441e59.14
jmp case.0x441e3f.12
cmp eax, 0xa
jb case.0x441e59.14
cmp eax, 0xd
jbe case.0x441e3f.12
cmp eax, 0x85
jne case.0x441e59.14
jmp case.0x441e3f.12
mov ecx, dword [edi + 0x28]
test byte [eax + ecx], 4
jne case.0x441e59.14
jmp case.0x441e3f.12
mov edx, dword [edi + 0x28]
test byte [eax + edx], 4
je case.0x441e59.14
jmp case.0x441e3f.12
mov ecx, dword [edi + 0x28]
test byte [eax + ecx], 1
jne case.0x441e59.14
jmp case.0x441e3f.12
mov edx, dword [edi + 0x28]
test byte [eax + edx], 1
je case.0x441e59.14
jmp case.0x441e3f.12
mov ecx, dword [edi + 0x28]
test byte [eax + ecx], 0x10
jne case.0x441e59.14
jmp case.0x441e3f.12
mov edx, dword [edi + 0x28]
test byte [eax + edx], 0x10
je case.0x441e59.14
mov eax, dword [esp + 0x154]
mov ecx, dword [esp + 0x150]
mov edx, dword [esp + 0x148]
inc dword [esp + 0x10]
push ebx
push 0
push eax
mov eax, dword [esp + 0x150]
push ecx
push edi
push edx
push eax
push ebp
push esi
call fcn.0043c876
add esp, 0x24
test eax, eax
je 0x441dc4
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret
mov eax, 0xfffffffb
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x128
ret