Function at 0x448894
Capabilities:
Parse credit card information
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xec
push ebx
push esi
push edi
mov edi, dword [ebp + 0x18]
mov eax, dword [edi + 0x38]
mov dword [ebp - 0x18], eax
mov eax, dword [edi]
cmp eax, dword [edi + 4]
jae 0x44ba6e
mov esi, dword [ebp + 8]
mov eax, dword [ebp + 0x28]
inc dword [edi]
cmp eax, dword [edi + 8]
jae 0x44ba77
test byte [ebp + 0x24], 2
mov eax, dword [ebp + 0x1c]
mov dword [ebp - 0x20], eax
je 0x4488e0
mov eax, dword [ebp + 0x20]
mov dword [ebp - 0x44], eax
lea eax, [ebp - 0x44]
mov dword [ebp - 0x40], esi
mov dword [ebp + 0x20], eax
mov ebx, dword [ebp + 0xc]
movzx ecx, byte [ebx]
xor edx, edx
cmp dword [edi + 0x44], edx
mov dword [ebp - 0x1c], edx
mov dword [ebp - 0x24], edx
mov dword [ebp - 8], ecx
je 0x448907
cmp esi, dword [edi + 0x58]
jb 0x448907
cmp esi, dword [ebp + 0x10]
jbe 0x448907
mov dword [edi + 0x48], 1
cmp ecx, 0x6d
ja case.0x448917.14
movzx eax, byte [ecx + 0x44ccb0]
jmp dword [eax*4 + 0x44cb9c]
lea eax, [ebx + 3]
mov cl, byte [eax]
cmp cl, 0x64
jne 0x448952
mov eax, dword [edi + 0x78]
xor ecx, ecx
cmp eax, edx
mov ch, byte [ebx + 4]
mov cl, byte [ebx + 5]
je 0x448944
cmp ecx, 0xffff
je 0x44896e
cmp ecx, dword [eax + 4]
je 0x44896e
xor ecx, ecx
xor eax, eax
mov ah, byte [ebx + 1]
mov al, byte [ebx + 2]
add ebx, eax
jmp 0x4489ca
cmp cl, 0x63
jne 0x448976
xor eax, eax
mov ah, byte [ebx + 4]
mov al, byte [ebx + 5]
add eax, eax
cmp eax, dword [ebp + 0x14]
jge 0x448944
mov ecx, dword [edi + 0xc]
cmp dword [ecx + eax*4], edx
jl 0x448944
xor ecx, ecx
push 3
inc ecx
pop eax
jmp 0x44894e
cmp cl, 0x65
jne 0x448987
xor eax, eax
mov ah, byte [ebx + 1]
mov al, byte [ebx + 2]
add ebx, eax
jmp 0x4489d2
mov ecx, dword [ebp + 0x28]
inc ecx
push ecx
push 1
push 0
push dword [ebp + 0x1c]
push edi
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push eax
push esi
call fcn.00448894
add esp, 0x24
cmp eax, 1
je 0x44b8c8
test eax, eax
je 0x4489bc
cmp eax, 0xfffffc1c
jne 0x44cb97
xor eax, eax
mov ah, byte [ebx + 1]
xor ecx, ecx
mov al, byte [ebx + 2]
add ebx, eax
xor edx, edx
cmp ecx, edx
jne 0x44b8f3
cmp byte [ebx], 0x53
je 0x44b8f3
jmp 0x448b07
mov ebx, dword [edi + 0x78]
test ebx, ebx
je 0x44bc83
cmp dword [ebx + 4], 0
jne 0x44bc83
mov eax, dword [ebx]
mov dword [edi + 0x78], eax
mov eax, dword [ebx + 0x14]
shl eax, 2
push eax
push dword [ebx + 0x10]
push dword [edi + 0xc]
call fcn.004517f0
mov eax, dword [ebx + 0xc]
mov dword [ebp + 0x10], eax
mov eax, dword [ebp - 0x20]
mov dword [ebp + 0x1c], eax
mov eax, dword [ebx + 8]
add esp, 0xc
mov dword [ebp + 0xc], eax
jmp 0x4488e0
movzx eax, byte [ebx + 1]
mov dword [ebp + 0x1c], eax
inc ebx
inc ebx
jmp 0x448b0a
mov eax, dword [ebp + 0x28]
mov ebx, dword [ebp + 0xc]
inc eax
mov dword [ebp - 0x10], eax
push dword [ebp - 0x10]
lea eax, [ebx + 3]
push 0
push 0
push dword [ebp + 0x1c]
push edi
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push eax
push esi
call fcn.00448894
add esp, 0x24
cmp eax, 1
je 0x448a7f
test eax, eax
je 0x448a70
cmp eax, 0xfffffc1c
jne 0x44cb97
xor eax, eax
mov ah, byte [ebx + 1]
mov al, byte [ebx + 2]
add ebx, eax
cmp byte [ebx], 0x53
je 0x448a3e
cmp byte [ebx], 0x54
je case.0x448917.108
test byte [ebp + 0x24], 1
jne 0x44bca1
xor eax, eax
mov ah, byte [ebx + 1]
mov al, byte [ebx + 2]
add ebx, eax
cmp byte [ebx], 0x53
je 0x448a92
mov eax, dword [edi + 0x64]
add ebx, 3
mov dword [ebp + 0xc], ebx
mov dword [ebp + 0x14], eax
jmp 0x4488e0
mov eax, dword [ebp + 0x28]
mov ebx, dword [ebp + 0xc]
inc eax
mov dword [ebp - 0x10], eax
push dword [ebp - 0x10]
lea eax, [ebx + 3]
push 0
push 0
push dword [ebp + 0x1c]
push edi
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push eax
push esi
call fcn.00448894
add esp, 0x24
cmp eax, 1
je case.0x448917.108
test eax, eax
je 0x448aee
cmp eax, 0xfffffc1c
jne 0x44cb97
xor eax, eax
mov ah, byte [ebx + 1]
mov al, byte [ebx + 2]
add ebx, eax
cmp byte [ebx], 0x53
je 0x448abc
test byte [ebp + 0x24], 1
jne 0x44bca1
add ebx, 3
mov dword [ebp + 0xc], ebx
jmp 0x4488e0
xor eax, eax
cmp dword [ebp - 0x18], edx
mov ah, byte [ebx + 1]
mov al, byte [ebx + 2]
je 0x448b44
cmp eax, edx
jle 0x448b07
mov ecx, dword [edi + 0x54]
dec eax
dec esi
cmp esi, ecx
jae 0x448b34
xor eax, eax
jmp 0x44cb97
dec esi
mov dl, byte [esi]
and dl, 0xc0
cmp dl, 0x80
je 0x448b33
test eax, eax
jg 0x448b26
jmp 0x448b07
sub esi, eax
cmp esi, dword [edi + 0x54]
jb case.0x448917.108
jmp 0x448b07
mov ecx, dword [0x4739c0]
cmp ecx, edx
je 0x448bca
movzx eax, byte [ebx + 1]
mov edx, dword [edi + 0x58]
mov dword [ebp - 0x70], eax
mov eax, dword [edi + 0xc]
mov dword [ebp - 0x6c], eax
mov eax, dword [edi + 0x54]
sub edx, eax
mov dword [ebp - 0x68], eax
mov dword [ebp - 0x64], edx
mov edx, dword [ebp + 0x10]
sub edx, eax
mov dword [ebp - 0x60], edx
mov edx, esi
sub edx, eax
xor eax, eax
mov ah, byte [ebx + 2]
mov dword [ebp - 0x5c], edx
mov dword [ebp - 0x74], 1
mov al, byte [ebx + 3]
mov dword [ebp - 0x4c], eax
xor eax, eax
mov ah, byte [ebx + 4]
mov al, byte [ebx + 5]
mov dword [ebp - 0x48], eax
mov eax, dword [ebp + 0x14]
cdq
sub eax, edx
sar eax, 1
mov dword [ebp - 0x58], eax
mov eax, dword [edi + 0x68]
mov dword [ebp - 0x54], eax
mov eax, dword [edi + 0x7c]
mov dword [ebp - 0x50], eax
lea eax, [ebp - 0x74]
push eax
call ecx
test eax, eax
pop ecx
jg case.0x448917.108
jl 0x44cb97
add ebx, 6
jmp 0x448b0a
mov eax, dword [ebp + 0x28]
inc eax
mov dword [ebp + 0x18], ebx
mov ebx, dword [ebp + 0xc]
mov dword [ebp - 0x1c], esi
mov dword [ebp - 0x10], eax
push dword [ebp - 0x10]
lea eax, [ebx + 3]
push 0
push dword [ebp + 0x20]
push dword [ebp + 0x1c]
push edi
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push eax
push esi
call fcn.00448894
add esp, 0x24
cmp eax, 1
je 0x448c24
test eax, eax
je 0x448c15
cmp eax, 0xfffffc1c
jne 0x44cb97
xor eax, eax
mov ah, byte [ebx + 1]
mov al, byte [ebx + 2]
add ebx, eax
cmp byte [ebx], 0x53
je 0x448be2
mov al, byte [ebx]
cmp al, 0x5c
je 0x448c32
cmp al, 0x53
jne case.0x448917.108
xor eax, eax
mov ah, byte [ebx + 1]
mov al, byte [ebx + 2]
add ebx, eax
cmp byte [ebx], 0x53
je 0x448c32
cmp byte [ebx], 0x54
mov eax, dword [edi + 0x64]
mov esi, dword [edi + 0x60]
mov dword [ebp + 0x14], eax
je 0x448b07
cmp esi, dword [ebp - 0x1c]
je 0x448b07
lea ecx, [ebx + 3]
cmp byte [ecx], 0x18
mov dword [ebp - 0x20], ecx
jne 0x448c76
mov edx, dword [ebp + 0x1c]
movzx ecx, byte [ebx + 4]
and edx, 0xfffffff8
or ecx, edx
mov dword [ebp + 0x1c], ecx
mov ecx, dword [ebp + 0x28]
inc ecx
cmp byte [ebx], 0x56
push ecx
jne 0x44b9b1
push 0
push dword [ebp + 0x20]
push dword [ebp + 0x1c]
push edi
push eax
push dword [ebp + 0x10]
push dword [ebp - 0x20]
push esi
call fcn.00448894
add esp, 0x24
test eax, eax
jne 0x44cb97
mov eax, dword [ebp + 0x18]
mov dword [ebp + 0xc], eax
jmp 0x44ba59
xor eax, eax
mov ah, byte [ebx + 1]
mov al, byte [ebx + 2]
add ebx, eax
cmp byte [ebx], 0x53
je case.0x448917.83
jmp 0x448b0a
mov ebx, dword [ebp + 0xc]
mov eax, dword [ebp + 0x28]
inc ebx
inc eax
push eax
push 0
push dword [ebp + 0x20]
push dword [ebp + 0x1c]
push edi
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push ebx
push esi
call fcn.00448894
add esp, 0x24
test eax, eax
jne 0x44cb97
xor eax, eax
mov ah, byte [ebx + 1]
mov al, byte [ebx + 2]
add ebx, eax
cmp byte [ebx], 0x53
je 0x448cee
jmp 0x448b07
inc ebx
mov eax, ebx
xor ecx, ecx
mov ch, byte [eax + 1]
mov cl, byte [eax + 2]
add eax, ecx
cmp byte [eax], 0x53
je 0x448d05
mov ecx, dword [ebp + 0x28]
inc ecx
push ecx
push 0
push dword [ebp + 0x20]
add eax, 3
push dword [ebp + 0x1c]
push edi
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push eax
push esi
call fcn.00448894
add esp, 0x24
test eax, eax
jne 0x44cb97
jmp 0x448b0a
xor eax, eax
mov ah, byte [ebx + 1]
mov al, byte [ebx + 2]
sub ebx, eax
mov al, byte [ebx]
cmp al, 0x60
mov dword [ebp + 0x18], ebx
jb 0x448d60
mov ecx, dword [ebp + 0x20]
mov edx, dword [ecx + 4]
mov ecx, dword [ecx]
mov dword [ebp + 0x20], ecx
cmp al, 0x57
mov dword [ebp - 0x1c], edx
je 0x44be0c
cmp al, 0x58
je 0x44be0c
cmp al, 0x59
je 0x44be0c
cmp al, 0x5a
je 0x44be0c
cmp al, 0x5c
je 0x44be0c
cmp al, 0x5e
je 0x448d9a
cmp al, 0x61
jne 0x448e1e
mov ebx, dword [ebp + 0x18]
xor edx, edx
mov dh, byte [ebx + 3]
mov dl, byte [ebx + 4]
lea ecx, [edx + edx]
cmp ecx, dword [edi + 0x14]
mov dword [ebp - 0xc], edx
mov dword [edi + 0x68], edx
jl 0x448db9
mov dword [edi + 0x2c], 1
jmp 0x448de1
mov ebx, dword [edi + 0x10]
mov eax, dword [edi + 0xc]
sub ebx, edx
mov edx, dword [eax + ebx*4]
mov dword [eax + ecx*4], edx
mov edx, dword [edi + 0xc]
mov eax, esi
sub eax, dword [edi + 0x54]
cmp dword [ebp + 0x14], ecx
mov dword [edx + ecx*4 + 4], eax
mov edx, dword [ebp - 0xc]
jg 0x448de1
add ecx, 2
mov dword [ebp + 0x14], ecx
mov ebx, dword [edi + 0x78]
test ebx, ebx
je 0x448e1e
cmp dword [ebx + 4], edx
jne 0x448e1e
mov eax, dword [ebx]
mov dword [edi + 0x78], eax
mov eax, dword [ebx + 0xc]
mov dword [ebp + 0x10], eax
mov eax, dword [ebx + 0x14]
shl eax, 2
push eax
push dword [ebx + 0x10]
push dword [edi + 0xc]
call fcn.00450220
mov eax, dword [ebx + 8]
mov dword [ebp + 0xc], eax
mov eax, dword [ebp - 0x20]
add esp, 0xc
mov dword [ebp + 0x1c], eax
jmp 0x4488e0
mov eax, dword [ebp - 0x20]
mov dword [ebp + 0x1c], eax
mov eax, dword [ebp + 0xc]
cmp byte [eax], 0x54
je 0x448e35
cmp esi, dword [ebp - 0x1c]
jne 0x44b9da
add eax, 3
jmp 0x448a1e
cmp dword [edi + 0x30], edx
je 0x448e4b
cmp esi, dword [edi + 0x54]
je case.0x448917.108
test byte [ebp + 0x1c], 2
je case.0x448917.1
mov ecx, dword [edi + 0x54]
cmp esi, ecx
je 0x448eb9
cmp esi, dword [edi + 0x58]
je case.0x448917.108
mov eax, dword [edi + 0x18]
test eax, eax
je 0x448e8c
cmp esi, ecx
jbe case.0x448917.108
push dword [ebp - 0x18]
lea edx, [edi + 0x1c]
push edx
push ecx
push eax
push esi
call fcn.0044d77b
add esp, 0x14
test eax, eax
je case.0x448917.108
jmp 0x448eb9
mov eax, dword [edi + 0x1c]
add ecx, eax
cmp esi, ecx
jb case.0x448917.108
mov ecx, esi
sub ecx, eax
mov dl, byte [ecx]
cmp dl, byte [edi + 0x20]
jne case.0x448917.108
cmp eax, 1
je 0x448eb9
mov al, byte [ecx + 1]
cmp al, byte [edi + 0x21]
jne case.0x448917.108
inc ebx
jmp 0x448b0a
cmp esi, dword [edi + 0x54]
jmp 0x448eb3
mov eax, dword [edi + 0x6c]
add eax, dword [edi + 0x54]
cmp esi, eax
jmp 0x448eb3
mov dword [ebp + 0x10], esi
jmp 0x448eb9
test byte [ebp + 0x1c], 2
je 0x448f1f
mov eax, dword [edi + 0x58]
cmp esi, eax
jae 0x448f1a
mov ecx, dword [edi + 0x18]
test ecx, ecx
je 0x448ef8
push dword [ebp - 0x18]
lea edx, [edi + 0x1c]
push edx
push eax
push ecx
push esi
call fcn.0044d6b0
jmp 0x448e7f
mov ecx, dword [edi + 0x1c]
sub eax, ecx
cmp esi, eax
ja case.0x448917.108
mov al, byte [esi]
cmp al, byte [edi + 0x20]
jne case.0x448917.108
cmp ecx, 1
je 0x448eb9
mov al, byte [esi + 1]
jmp 0x448eb0
cmp dword [edi + 0x34], edx
jmp 0x448eb3
cmp dword [edi + 0x34], edx
jne case.0x448917.108
cmp dword [edi + 0x3c], edx
jne case.0x448917.23
mov eax, dword [edi + 0x58]
cmp esi, eax
je 0x448f97
mov ecx, dword [edi + 0x18]
test ecx, ecx
je 0x448f5f
cmp esi, eax
jae case.0x448917.108
push dword [ebp - 0x18]
lea ebx, [edi + 0x1c]
push ebx
push eax
push ecx
push esi
call fcn.0044d6b0
add esp, 0x14
test eax, eax
je case.0x448917.108
jmp 0x448f8a
lea ebx, [edi + 0x1c]
mov ecx, dword [ebx]
sub eax, ecx
cmp esi, eax
ja case.0x448917.108
mov al, byte [esi]
cmp al, byte [edi + 0x20]
jne case.0x448917.108
cmp ecx, 1
je 0x448f8a
mov al, byte [esi + 1]
cmp al, byte [edi + 0x21]
jne case.0x448917.108
mov eax, dword [edi + 0x58]
sub eax, dword [ebx]
cmp esi, eax
jne case.0x448917.108
inc dword [ebp + 0xc]
jmp 0x4488e0
cmp esi, dword [edi + 0x58]
jb case.0x448917.108
jmp 0x448eb9
cmp dword [ebp - 0x18], edx
je 0x4490c2
cmp esi, dword [edi + 0x54]
jne 0x448fc3
mov dword [ebp + 0x18], edx
jmp 0x44904c
lea eax, [esi - 1]
jmp 0x448fc9
dec eax
mov cl, byte [eax]
and cl, 0xc0
cmp cl, 0x80
je 0x448fc8
movzx edx, byte [eax]
cmp edx, 0xc0
jb 0x44902e
mov ecx, edx
and ecx, 0x3f
movzx ebx, byte [ecx + 0x466610]
mov ecx, ebx
imul ecx, ecx, 6
mov dword [ebp - 0xc], ebx
mov ebx, dword [ebx*4 + 0x4665f4]
and ebx, edx
shl ebx, cl
mov edx, ebx
xor ebx, ebx
inc ebx
cmp dword [ebp - 0xc], ebx
mov dword [ebp - 8], edx
mov dword [ebp + 0x18], ebx
jl 0x44902b
movzx edx, byte [ebx + eax]
mov ebx, dword [ebp + 0x18]
sub ecx, 6
and edx, 0x3f
shl edx, cl
or dword [ebp - 8], edx
inc ebx
cmp ebx, dword [ebp - 0xc]
mov dword [ebp + 0x18], ebx
jle 0x44900d
mov edx, dword [ebp - 8]
mov ebx, dword [ebp + 0xc]
cmp edx, 0x100
jae 0x449048
mov eax, dword [edi + 0x28]
test byte [edx + eax], 0x10
je 0x449048
mov dword [ebp + 0x18], 1
jmp 0x44904c
and dword [ebp + 0x18], 0
cmp esi, dword [edi + 0x58]
jb 0x449055
xor eax, eax
jmp 0x4490be
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x4490a3
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x466610]
mov ebx, dword [eax*4 + 0x4665f4]
mov ecx, eax
imul ecx, ecx, 6
and ebx, edx
shl ebx, cl
cmp eax, 1
mov dword [ebp - 0xc], 1
mov edx, ebx
jl 0x4490a3
mov ebx, dword [ebp - 0xc]
movzx ebx, byte [ebx + esi]
sub ecx, 6
and ebx, 0x3f
shl ebx, cl
or edx, ebx
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], eax
jle 0x44908a
cmp edx, 0x100
jae 0x4490b9
mov eax, dword [edi + 0x28]
test byte [edx + eax], 0x10
je 0x4490b9
xor eax, eax
inc eax
jmp 0x4490bb
xor eax, eax
mov ebx, dword [ebp + 0xc]
xor edx, edx
jmp 0x4490f6
cmp esi, dword [edi + 0x54]
je 0x4490db
movzx eax, byte [esi - 1]
mov ecx, dword [edi + 0x28]
test byte [eax + ecx], 0x10
mov dword [ebp + 0x18], 1
jne 0x4490de
mov dword [ebp + 0x18], edx
cmp esi, dword [edi + 0x58]
jae 0x4490f4
movzx eax, byte [esi]
mov ecx, dword [edi + 0x28]
test byte [eax + ecx], 0x10
je 0x4490f4
xor eax, eax
inc eax
jmp 0x4490f6
xor eax, eax
mov cl, byte [ebx]
inc ebx
cmp cl, 5
mov dword [ebp + 0xc], ebx
jne 0x44910b
xor ecx, ecx
cmp eax, dword [ebp + 0x18]
sete cl
jmp 0x449113
xor ecx, ecx
cmp eax, dword [ebp + 0x18]
setne cl
mov eax, ecx
cmp eax, edx
je 0x4488e0
jmp case.0x448917.108
test byte [ebp + 0x1c], 4
jne 0x44917a
mov ecx, dword [edi + 0x18]
test ecx, ecx
je 0x449152
mov eax, dword [edi + 0x58]
cmp esi, eax
jae 0x44917a
push dword [ebp - 0x18]
lea edx, [edi + 0x1c]
push edx
push eax
push ecx
push esi
call fcn.0044d6b0
add esp, 0x14
test eax, eax
jne case.0x448917.108
jmp 0x44917a
mov eax, dword [edi + 0x1c]
mov ecx, dword [edi + 0x58]
sub ecx, eax
cmp esi, ecx
ja 0x44917a
mov cl, byte [esi]
cmp cl, byte [edi + 0x20]
jne 0x44917a
cmp eax, 1
je case.0x448917.108
mov al, byte [esi + 1]
cmp al, byte [edi + 0x21]
je case.0x448917.108
mov eax, dword [edi + 0x58]
mov ecx, esi
inc esi
cmp ecx, eax
jae case.0x448917.108
cmp dword [ebp - 0x18], 0
je 0x448eb9
cmp esi, eax
jae 0x448eb9
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x448eb9
inc esi
cmp esi, dword [edi + 0x58]
jb 0x44919a
jmp 0x448eb9
mov eax, esi
inc esi
cmp eax, dword [edi + 0x58]
jae case.0x448917.108
jmp 0x448eb9
cmp esi, dword [edi + 0x58]
jae case.0x448917.108
movzx edx, byte [esi]
inc esi
cmp dword [ebp - 0x18], 0
je 0x449216
cmp edx, 0xc0
jb 0x449216
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x466610]
mov ebx, dword [eax*4 + 0x4665f4]
mov ecx, eax
imul ecx, ecx, 6
and ebx, edx
shl ebx, cl
mov edx, ebx
jmp 0x44920f
movzx ebx, byte [esi]
mov edx, dword [ebp - 8]
sub ecx, 6
and ebx, 0x3f
shl ebx, cl
dec eax
or edx, ebx
inc esi
test eax, eax
mov dword [ebp - 8], edx
jg 0x4491fd
cmp edx, 0x100
jae 0x448f97
mov eax, dword [edi + 0x28]
test byte [edx + eax], 4
jmp 0x448f91
cmp esi, dword [edi + 0x58]
jae case.0x448917.108
movzx edx, byte [esi]
inc esi
cmp dword [ebp - 0x18], 0
je 0x449282
cmp edx, 0xc0
jb 0x449282
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x466610]
mov ebx, dword [eax*4 + 0x4665f4]
mov ecx, eax
imul ecx, ecx, 6
and ebx, edx
shl ebx, cl
mov edx, ebx
jmp 0x44927b
movzx ebx, byte [esi]
mov edx, dword [ebp - 8]
sub ecx, 6
and ebx, 0x3f
shl ebx, cl
dec eax
or edx, ebx
inc esi
test eax, eax
mov dword [ebp - 8], edx
jg 0x449269
cmp edx, 0x100
jae case.0x448917.108
mov eax, dword [edi + 0x28]
test byte [edx + eax], 4
je case.0x448917.108
jmp 0x448f97
cmp esi, dword [edi + 0x58]
jae case.0x448917.108
movzx edx, byte [esi]
inc esi
cmp dword [ebp - 0x18], 0
je 0x4492f4
cmp edx, 0xc0
jb 0x4492f4
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x466610]
mov ebx, dword [eax*4 + 0x4665f4]
mov ecx, eax
imul ecx, ecx, 6
and ebx, edx
shl ebx, cl
mov edx, ebx
jmp 0x4492ed
movzx ebx, byte [esi]
mov edx, dword [ebp - 8]
sub ecx, 6
and ebx, 0x3f
shl ebx, cl
dec eax
or edx, ebx
inc esi
test eax, eax
mov dword [ebp - 8], edx
jg 0x4492db
cmp edx, 0x100
jae 0x448f97
mov eax, dword [edi + 0x28]
test byte [edx + eax], 1
jmp 0x448f91
cmp esi, dword [edi + 0x58]
jae case.0x448917.108
movzx edx, byte [esi]
inc esi
cmp dword [ebp - 0x18], 0
je 0x449360
cmp edx, 0xc0
jb 0x449360
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x466610]
mov ebx, dword [eax*4 + 0x4665f4]
mov ecx, eax
imul ecx, ecx, 6
and ebx, edx
shl ebx, cl
mov edx, ebx
jmp 0x449359
movzx ebx, byte [esi]
mov edx, dword [ebp - 8]
sub ecx, 6
and ebx, 0x3f
shl ebx, cl
dec eax
or edx, ebx
inc esi
test eax, eax
mov dword [ebp - 8], edx
jg 0x449347
cmp edx, 0x100
jae case.0x448917.108
mov eax, dword [edi + 0x28]
test byte [edx + eax], 1
jmp 0x449295
cmp esi, dword [edi + 0x58]
jae case.0x448917.108
movzx edx, byte [esi]
inc esi
cmp dword [ebp - 0x18], 0
je 0x4493cc
cmp edx, 0xc0
jb 0x4493cc
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x466610]
mov ebx, dword [eax*4 + 0x4665f4]
mov ecx, eax
imul ecx, ecx, 6
and ebx, edx
shl ebx, cl
mov edx, ebx
jmp 0x4493c5
movzx ebx, byte [esi]
mov edx, dword [ebp - 8]
sub ecx, 6
and ebx, 0x3f
shl ebx, cl
dec eax
or edx, ebx
inc esi
test eax, eax
mov dword [ebp - 8], edx
jg 0x4493b3
cmp edx, 0x100
jae 0x448f97
mov eax, dword [edi + 0x28]
test byte [edx + eax], 0x10
jmp 0x448f91
cmp esi, dword [edi + 0x58]
jae case.0x448917.108
movzx edx, byte [esi]
inc esi
cmp dword [ebp - 0x18], 0
je 0x449438
cmp edx, 0xc0
jb 0x449438
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x466610]
mov ebx, dword [eax*4 + 0x4665f4]
mov ecx, eax
imul ecx, ecx, 6
and ebx, edx
shl ebx, cl
mov edx, ebx
jmp 0x449431
movzx ebx, byte [esi]
mov edx, dword [ebp - 8]
sub ecx, 6
and ebx, 0x3f
shl ebx, cl
dec eax
or edx, ebx
inc esi
test eax, eax
mov dword [ebp - 8], edx
jg 0x44941f
cmp edx, 0x100
jae case.0x448917.108
mov eax, dword [edi + 0x28]
test byte [edx + eax], 0x10
jmp 0x449295
cmp esi, dword [edi + 0x58]
jae case.0x448917.108
movzx edx, byte [esi]
inc esi
cmp dword [ebp - 0x18], 0
je 0x4494a4
cmp edx, 0xc0
jb 0x4494a4
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x466610]
mov ebx, dword [eax*4 + 0x4665f4]
mov ecx, eax
imul ecx, ecx, 6
and ebx, edx
shl ebx, cl
mov edx, ebx
jmp 0x44949d
movzx ebx, byte [esi]
mov edx, dword [ebp - 8]
sub ecx, 6
and ebx, 0x3f
shl ebx, cl
dec eax
or edx, ebx
inc esi
test eax, eax
mov dword [ebp - 8], edx
jg 0x44948b
cmp edx, 0xa
je 0x448f97
jbe case.0x448917.108
cmp edx, 0xc
jbe 0x4494dd
cmp edx, 0xd
je 0x4494e6
cmp edx, 0x85
je 0x4494dd
cmp edx, 0x2027
jbe case.0x448917.108
cmp edx, 0x2029
ja case.0x448917.108
cmp dword [edi + 0x4c], 0
jmp 0x448f91
cmp esi, dword [edi + 0x58]
jae 0x448f97
cmp byte [esi], 0xa
jne 0x448f97
inc esi
jmp 0x448f97
cmp esi, dword [edi + 0x58]
jae case.0x448917.108
movzx eax, byte [esi]
inc esi
cmp dword [ebp - 0x18], edx
je 0x449554
cmp eax, 0xc0
jb 0x449554
mov ecx, eax
and ecx, 0x3f
movzx edx, byte [ecx + 0x466610]
mov ebx, dword [edx*4 + 0x4665f4]
mov ecx, edx
imul ecx, ecx, 6
and ebx, eax
shl ebx, cl
test edx, edx
mov eax, ebx
jle 0x449554
jmp 0x44953e
mov ecx, dword [ebp + 0x18]
movzx ebx, byte [esi]
sub ecx, 6
and ebx, 0x3f
shl ebx, cl
dec edx
mov dword [ebp + 0x18], ecx
or eax, ebx
inc esi
test edx, edx
jg 0x44953b
mov ecx, 0x180e
cmp eax, ecx
ja 0x44958a
je case.0x448917.108
cmp eax, 9
je case.0x448917.108
cmp eax, 0x20
je case.0x448917.108
cmp eax, 0xa0
je case.0x448917.108
cmp eax, 0x1680
jmp 0x449295
cmp eax, 0x2000
jb 0x448f97
cmp eax, 0x200a
jbe case.0x448917.108
cmp eax, 0x202f
je case.0x448917.108
cmp eax, 0x205f
je case.0x448917.108
cmp eax, 0x3000
jmp 0x449295
cmp esi, dword [edi + 0x58]
jae case.0x448917.108
movzx eax, byte [esi]
inc esi
cmp dword [ebp - 0x18], edx
je 0x449616
cmp eax, 0xc0
jb 0x449616
mov ecx, eax
and ecx, 0x3f
movzx edx, byte [ecx + 0x466610]
mov ebx, dword [edx*4 + 0x4665f4]
mov ecx, edx
imul ecx, ecx, 6
and ebx, eax
shl ebx, cl
test edx, edx
mov eax, ebx
jle 0x449616
jmp 0x449600
mov ecx, dword [ebp + 0x18]
movzx ebx, byte [esi]
sub ecx, 6
and ebx, 0x3f
shl ebx, cl
dec edx
mov dword [ebp + 0x18], ecx
or eax, ebx
inc esi
test edx, edx
jg 0x4495fd
mov ecx, 0x180e
cmp eax, ecx
ja 0x44964c
je 0x448f97
cmp eax, 9
je 0x448f97
cmp eax, 0x20
je 0x448f97
cmp eax, 0xa0
je 0x448f97
cmp eax, 0x1680
jmp 0x448f91
cmp eax, 0x2000
jb case.0x448917.108
cmp eax, 0x200a
jbe 0x448f97
cmp eax, 0x202f
je 0x448f97
cmp eax, 0x205f
je 0x448f97
cmp eax, 0x3000
jmp 0x448f91
cmp esi, dword [edi + 0x58]
jae case.0x448917.108
movzx edx, byte [esi]
inc esi
cmp dword [ebp - 0x18], 0
je 0x4496d6
cmp edx, 0xc0
jb 0x4496d6
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x466610]
mov ebx, dword [eax*4 + 0x4665f4]
mov ecx, eax
imul ecx, ecx, 6
and ebx, edx
shl ebx, cl
mov edx, ebx
jmp 0x4496cf
movzx ebx, byte [esi]
mov edx, dword [ebp - 8]
sub ecx, 6
and ebx, 0x3f
shl ebx, cl
dec eax
or edx, ebx
inc esi
test eax, eax
mov dword [ebp - 8], edx
jg 0x4496bd
cmp edx, 0xa
jb 0x448f97
cmp edx, 0xd
jbe case.0x448917.108
cmp edx, 0x85
je case.0x448917.108
cmp edx, 0x2027
jbe 0x448f97
cmp edx, 0x2029
jbe case.0x448917.108
jmp 0x448f97
cmp esi, dword [edi + 0x58]
jae case.0x448917.108
movzx edx, byte [esi]
inc esi
cmp dword [ebp - 0x18], 0
je 0x449765
cmp edx, 0xc0
jb 0x449765
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x466610]
mov ebx, dword [eax*4 + 0x4665f4]
mov ecx, eax
imul ecx, ecx, 6
and ebx, edx
shl ebx, cl
mov edx, ebx
jmp 0x44975e
movzx ebx, byte [esi]
mov edx, dword [ebp - 8]
sub ecx, 6
and ebx, 0x3f
shl ebx, cl
dec eax
or edx, ebx
inc esi
test eax, eax
mov dword [ebp - 8], edx
jg 0x44974c
cmp edx, 0xa
jb case.0x448917.108
cmp edx, 0xd
jbe 0x448f97
cmp edx, 0x85
je 0x448f97
cmp edx, 0x2027
jbe case.0x448917.108
cmp edx, 0x2029
ja case.0x448917.108
jmp 0x448f97
xor edx, edx
mov dh, byte [ebx + 1]
add ebx, 3
mov dword [ebp + 0xc], ebx
mov dl, byte [ebx - 1]
add edx, edx
cmp edx, dword [ebp + 0x14]
mov dword [ebp - 0xc], edx
jge 0x4497cb
mov eax, dword [edi + 0xc]
lea eax, [eax + edx*4]
mov ecx, dword [eax]
test ecx, ecx
jl 0x4497cb
mov ebx, dword [eax + 4]
sub ebx, ecx
jmp 0x4497d1
mov ebx, dword [edi + 0x58]
sub ebx, esi
inc ebx
mov eax, dword [ebp + 0xc]
mov al, byte [eax]
cmp al, 0x45
mov dword [ebp - 0x10], ebx
jb 0x4498a6
cmp al, 0x4a
jbe 0x449820
cmp al, 0x4c
ja 0x4498a6
xor ecx, ecx
cmp al, 0x4c
mov eax, dword [ebp + 0xc]
sete cl
xor ebx, ebx
mov bh, byte [eax + 1]
mov dword [ebp - 0x24], ecx
xor ecx, ecx
mov ch, byte [eax + 3]
mov bl, byte [eax + 2]
mov cl, byte [eax + 4]
test ecx, ecx
mov dword [ebp - 4], ecx
jne 0x449818
mov dword [ebp - 4], connect
add eax, 5
mov dword [ebp + 0xc], eax
jmp 0x44984d
movzx eax, al
movsx ebx, byte [eax + 0x4664fb]
sub eax, 0x45
inc dword [ebp + 0xc]
mov ecx, eax
movsx eax, byte [eax + 0x466548]
and ecx, 1
test eax, eax
mov dword [ebp - 0x24], ecx
mov dword [ebp - 4], eax
jne 0x44984d
mov dword [ebp - 4], connect
cmp dword [ebp - 0x10], 0
je 0x4488e0
xor eax, eax
inc eax
cmp ebx, eax
mov dword [ebp + 0x18], eax
jl 0x449887
push dword [ebp + 0x1c]
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0xc]
push esi
mov ecx, edi
call fcn.00448836
test eax, eax
pop ecx
pop ecx
je case.0x448917.108
add esi, dword [ebp - 0x10]
inc dword [ebp + 0x18]
cmp dword [ebp + 0x18], ebx
jle 0x449861
cmp ebx, dword [ebp - 4]
je 0x4488e0
cmp dword [ebp - 0x24], 0
je 0x44be69
mov dword [ebp + 0x18], ebx
mov ebx, dword [ebp + 0x28]
inc ebx
jmp 0x44be44
push dword [ebp + 0x1c]
mov ecx, edi
push esi
mov eax, ebx
call fcn.00448836
test eax, eax
pop ecx
pop ecx
je case.0x448917.108
add esi, ebx
jmp 0x4488e0
lea eax, [ebx + 1]
add ebx, 0x21
mov dword [ebp - 0x1c], eax
mov al, byte [ebx]
cmp al, 0x45
mov dword [ebp + 0xc], ebx
jb 0x449944
cmp al, 0x4a
jbe 0x449911
cmp al, 0x4c
ja 0x449944
xor ecx, ecx
cmp al, 0x4c
sete cl
xor eax, eax
mov ah, byte [ebx + 3]
xor edx, edx
mov dh, byte [ebx + 1]
mov dword [ebp - 0x24], ecx
mov al, byte [ebx + 4]
mov dl, byte [ebx + 2]
test eax, eax
mov dword [ebp - 4], eax
mov dword [ebp - 0x14], edx
jne 0x449909
mov dword [ebp - 4], connect
add ebx, 5
mov dword [ebp + 0xc], ebx
jmp 0x44994d
movzx eax, al
movsx edx, byte [eax + 0x4664fb]
sub eax, 0x45
mov ecx, eax
movsx eax, byte [eax + 0x466548]
inc ebx
and ecx, 1
test eax, eax
mov dword [ebp + 0xc], ebx
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x14], edx
mov dword [ebp - 4], eax
jne 0x44994d
mov dword [ebp - 4], connect
jmp 0x44994d
xor edx, edx
inc edx
mov dword [ebp - 4], edx
mov dword [ebp - 0x14], edx
xor eax, eax
inc eax
cmp dword [ebp - 0x18], 0
mov dword [ebp + 0x18], eax
je 0x4499f2
cmp edx, eax
jl 0x449a29
cmp esi, dword [edi + 0x58]
jae case.0x448917.108
movzx eax, byte [esi]
inc esi
cmp eax, 0xc0
jb 0x4499b9
mov ecx, eax
and ecx, 0x3f
movzx edx, byte [ecx + 0x466610]
mov ebx, dword [edx*4 + 0x4665f4]
mov ecx, edx
imul ecx, ecx, 6
and ebx, eax
shl ebx, cl
test edx, edx
mov eax, ebx
jle 0x4499b6
jmp 0x4499a0
mov ecx, dword [ebp - 0xc]
movzx ebx, byte [esi]
sub ecx, 6
and ebx, 0x3f
shl ebx, cl
dec edx
mov dword [ebp - 0xc], ecx
or eax, ebx
inc esi
test edx, edx
jg 0x44999d
mov edx, dword [ebp - 0x14]
cmp eax, 0xff
jbe 0x4499c6
cmp dword [ebp - 8], 0x4d
jmp 0x4499db
mov ecx, eax
xor ebx, ebx
and ecx, 7
inc ebx
shl ebx, cl
mov ecx, dword [ebp - 0x1c]
shr eax, 3
mov al, byte [eax + ecx]
test al, bl
je case.0x448917.108
inc dword [ebp + 0x18]
cmp dword [ebp + 0x18], edx
jle 0x449965
mov ebx, dword [ebp + 0xc]
jmp 0x449a29
cmp edx, eax
jl 0x449a29
cmp esi, dword [edi + 0x58]
jae case.0x448917.108
movzx eax, byte [esi]
mov ecx, eax
xor edx, edx
and ecx, 7
inc edx
shl edx, cl
mov ecx, dword [ebp - 0x1c]
shr eax, 3
mov al, byte [eax + ecx]
inc esi
test al, dl
je case.0x448917.108
inc dword [ebp + 0x18]
mov edx, dword [ebp - 0x14]
cmp dword [ebp + 0x18], edx
jle 0x4499f6
cmp edx, dword [ebp - 4]
je 0x4488e0
xor eax, eax
cmp dword [ebp - 0x24], eax
je 0x44bfe4
cmp dword [ebp - 0x18], eax
mov dword [ebp + 0x18], edx
je 0x44bf82
mov eax, dword [ebp + 0x28]
inc eax
push eax
push 0
push dword [ebp + 0x20]
mov dword [ebp - 0x10], eax
push dword [ebp + 0x1c]
push edi
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push ebx
jmp 0x44bf6c
lea eax, [ebx + 3]
mov dword [ebp - 0x1c], eax
xor eax, eax
mov ah, byte [ebx + 1]
mov al, byte [ebx + 2]
add ebx, eax
mov al, byte [ebx]
cmp al, 0x45
mov dword [ebp + 0xc], ebx
jb 0x449aed
cmp al, 0x4a
jbe 0x449aba
cmp al, 0x4c
ja 0x449aed
xor ecx, ecx
cmp al, 0x4c
sete cl
xor eax, eax
mov ah, byte [ebx + 1]
mov dword [ebp - 0x24], ecx
mov al, byte [ebx + 2]
mov dword [ebp - 0x14], eax
xor eax, eax
mov ah, byte [ebx + 3]
mov al, byte [ebx + 4]
cmp eax, edx
mov dword [ebp - 4], eax
jne 0x449ab2
mov dword [ebp - 4], connect
add ebx, 5
mov dword [ebp + 0xc], ebx
jmp 0x449af6
movzx eax, al
sub eax, 0x45
mov ecx, eax
and ecx, 1
mov dword [ebp - 0x24], ecx
movsx ecx, byte [eax + 0x466540]
movsx eax, byte [eax + 0x466548]
inc ebx
cmp eax, edx
mov dword [ebp + 0xc], ebx
mov dword [ebp - 0x14], ecx
mov dword [ebp - 4], eax
jne 0x449af6
mov dword [ebp - 4], connect
jmp 0x449af6
xor eax, eax
inc eax
mov dword [ebp - 4], eax
mov dword [ebp - 0x14], eax
xor eax, eax
inc eax
cmp dword [ebp - 0x14], eax
mov dword [ebp + 0x18], eax
jl 0x449b71
cmp esi, dword [edi + 0x58]
jae case.0x448917.108
movzx eax, byte [esi]
inc esi
cmp eax, 0xc0
mov dword [ebp - 8], eax
jb 0x449b4c
and eax, 0x3f
movzx eax, byte [eax + 0x466610]
mov edx, dword [eax*4 + 0x4665f4]
and edx, dword [ebp - 8]
mov ecx, eax
imul ecx, ecx, 6
shl edx, cl
mov dword [ebp - 8], edx
jmp 0x449b48
movzx edx, byte [esi]
sub ecx, 6
and edx, 0x3f
shl edx, cl
dec eax
or dword [ebp - 8], edx
inc esi
test eax, eax
jg 0x449b38
push dword [ebp - 0x1c]
push dword [ebp - 8]
call fcn.0044da9e
test eax, eax
pop ecx
pop ecx
je case.0x448917.108
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 0x14]
jle 0x449b01
mov ebx, dword [ebp + 0xc]
xor edx, edx
mov eax, dword [ebp - 0x14]
cmp eax, dword [ebp - 4]
je 0x4488e0
cmp dword [ebp - 0x24], edx
je 0x44c1e3
mov dword [ebp + 0x18], eax
mov eax, dword [ebp + 0x28]
inc eax
push eax
push 0
push dword [ebp + 0x20]
mov dword [ebp - 0x10], eax
push dword [ebp + 0x1c]
push edi
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push ebx
jmp 0x44c1cd
cmp dword [ebp - 0x18], edx
je 0x449bf1
xor ecx, ecx
inc ecx
inc ebx
movzx eax, byte [ebx]
cmp eax, 0xc0
mov dword [ebp + 0xc], ebx
jb 0x449bc7
and eax, 0x3f
movzx ecx, byte [eax + 0x466610]
inc ecx
mov eax, dword [edi + 0x58]
sub eax, esi
cmp ecx, eax
jg case.0x448917.108
jmp 0x449be8
mov dl, byte [esi]
mov al, byte [ebx]
dec ecx
inc esi
inc ebx
cmp al, dl
mov dword [ebp + 0xc], ebx
jne case.0x448917.108
test ecx, ecx
jg 0x449bd6
jmp 0x4488e0
mov eax, dword [edi + 0x58]
sub eax, esi
cmp eax, 1
jl case.0x448917.108
mov al, byte [esi]
inc esi
cmp byte [ebx + 1], al
jne case.0x448917.108
jmp 0x448a2d
cmp dword [ebp - 0x18], edx
je 0x449d05
xor eax, eax
inc eax
inc ebx
movzx ecx, byte [ebx]
mov edx, ecx
cmp edx, 0xc0
mov dword [ebp - 0x10], eax
mov dword [ebp + 0xc], ebx
mov dword [ebp - 0xc], ecx
mov dword [ebp - 8], edx
jb 0x449c86
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x466610]
mov ebx, dword [eax*4 + 0x4665f4]
mov ecx, eax
imul ecx, ecx, 6
and ebx, edx
shl ebx, cl
xor edx, edx
inc edx
cmp eax, edx
mov dword [ebp - 8], ebx
mov dword [ebp + 0x18], edx
jl 0x449c7c
mov ebx, dword [ebp + 0x18]
mov edx, dword [ebp + 0xc]
movzx edx, byte [ebx + edx]
sub ecx, 6
and edx, 0x3f
shl edx, cl
or dword [ebp - 8], edx
inc dword [ebp + 0x18]
cmp dword [ebp + 0x18], eax
jle 0x449c5f
mov ecx, dword [ebp - 0xc]
mov ebx, dword [ebp + 0xc]
inc eax
mov dword [ebp - 0x10], eax
mov edx, dword [edi + 0x58]
sub edx, esi
cmp eax, edx
jg case.0x448917.108
cmp dword [ebp - 8], 0x80
jae 0x449cb2
movzx edx, byte [esi]
mov eax, dword [edi + 0x24]
mov dl, byte [edx + eax]
inc esi
inc ebx
cmp byte [eax + ecx], dl
mov dword [ebp + 0xc], ebx
jmp 0x449117
movzx eax, byte [esi]
inc esi
cmp eax, 0xc0
mov dword [ebp + 0x18], eax
jb 0x449cf4
and eax, 0x3f
movzx edx, byte [eax + 0x466610]
mov eax, dword [edx*4 + 0x4665f4]
and eax, dword [ebp + 0x18]
mov ecx, edx
imul ecx, ecx, 6
shl eax, cl
mov dword [ebp + 0x18], eax
jmp 0x449cf0
movzx eax, byte [esi]
sub ecx, 6
and eax, 0x3f
shl eax, cl
dec edx
or dword [ebp + 0x18], eax
inc esi
test edx, edx
jg 0x449ce0
mov eax, dword [ebp - 0x10]
add dword [ebp + 0xc], eax
mov eax, dword [ebp + 0x18]
cmp dword [ebp - 8], eax
jmp 0x449117
mov eax, dword [edi + 0x58]
sub eax, esi
cmp eax, 1
jl case.0x448917.108
movzx edx, byte [esi]
mov eax, dword [edi + 0x24]
movzx ecx, byte [ebx + 1]
mov dl, byte [edx + eax]
inc esi
cmp byte [ecx + eax], dl
jmp 0x449c05
mov eax, dword [ebp + 0xc]
xor ebx, ebx
mov bh, byte [eax + 1]
mov bl, byte [eax + 2]
mov dword [ebp - 4], ebx
add eax, 3
mov dword [ebp + 0xc], eax
jmp 0x449db9
mov dword [ebp - 0x1c], 1
mov eax, dword [ebp + 0xc]
xor ecx, ecx
mov ch, byte [eax + 1]
xor ebx, ebx
mov cl, byte [eax + 2]
mov dword [ebp - 4], ecx
xor ecx, ecx
cmp byte [eax], 0x25
sete cl
mov dword [ebp - 0x24], ecx
jmp 0x449d37
mov dword [ebp - 0x1c], 1
xor ebx, ebx
inc dword [ebp + 0xc]
jmp 0x449db2
xor ebx, ebx
inc ebx
mov dword [ebp - 0x1c], ebx
jmp 0x449d6c
xor eax, eax
inc eax
xor ebx, ebx
inc dword [ebp + 0xc]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], eax
jmp 0x449db9
mov eax, dword [ebp + 0xc]
movzx eax, byte [eax]
movsx ebx, byte [eax + 0x466522]
sub eax, 0x1e
inc dword [ebp + 0xc]
mov ecx, eax
movsx eax, byte [eax + 0x466548]
and ecx, 1
test eax, eax
mov dword [ebp - 0x24], ecx
mov dword [ebp - 4], eax
jne 0x449db9
mov dword [ebp - 4], connect
cmp dword [ebp - 0x18], 0
je 0x449ed5
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0xc], eax
movzx eax, byte [eax]
cmp eax, 0xc0
mov dword [ebp - 0x10], 1
mov dword [ebp - 8], eax
jb 0x449e37
mov ecx, eax
and ecx, 0x3f
movzx edx, byte [ecx + 0x466610]
mov ecx, edx
imul ecx, ecx, 6
mov dword [ebp - 0x10], edx
mov edx, dword [edx*4 + 0x4665f4]
and edx, eax
shl edx, cl
mov dword [ebp + 0x18], 1
mov eax, edx
mov edx, dword [ebp - 0x10]
cmp edx, 1
mov dword [ebp - 8], eax
jl 0x449e33
mov edx, dword [ebp + 0x18]
mov eax, dword [ebp + 0xc]
movzx eax, byte [edx + eax]
mov edx, dword [ebp - 0x10]
sub ecx, 6
and eax, 0x3f
shl eax, cl
or dword [ebp - 8], eax
inc dword [ebp + 0x18]
cmp dword [ebp + 0x18], edx
jle 0x449e10
mov eax, dword [ebp - 8]
inc edx
mov dword [ebp - 0x10], edx
mov edx, dword [edi + 0x58]
mov ecx, ebx
imul ecx, dword [ebp - 0x10]
sub edx, esi
cmp ecx, edx
jg case.0x448917.108
mov ecx, dword [ebp - 0x10]
add dword [ebp + 0xc], ecx
xor edx, edx
inc edx
cmp ecx, edx
jle 0x449ef1
cmp ebx, edx
mov dword [ebp + 0x18], edx
jl 0x449e84
push dword [ebp - 0x10]
push dword [ebp - 0xc]
push esi
call fcn.0044e9fc
add esp, 0xc
test eax, eax
jne case.0x448917.108
add esi, dword [ebp - 0x10]
inc dword [ebp + 0x18]
cmp dword [ebp + 0x18], ebx
jle 0x449e62
cmp ebx, dword [ebp - 4]
je 0x4488e0
cmp dword [ebp - 0x24], 0
jne 0x44c2a8
mov dword [ebp - 0x14], esi
jmp 0x449ebd
mov eax, dword [edi + 0x58]
sub eax, dword [ebp - 0x10]
cmp esi, eax
ja 0x449ec2
push dword [ebp - 0x10]
push dword [ebp - 0xc]
push esi
call fcn.0044e9fc
add esp, 0xc
test eax, eax
jne 0x449ec2
add esi, dword [ebp - 0x10]
inc ebx
cmp ebx, dword [ebp - 4]
jl 0x449e9c
cmp dword [ebp - 0x1c], 0
jne 0x4488e0
mov ebx, dword [ebp + 0x28]
inc ebx
jmp 0x44c314
mov eax, dword [edi + 0x58]
sub eax, esi
cmp ebx, eax
jg case.0x448917.108
mov eax, dword [ebp + 0xc]
movzx eax, byte [eax]
inc dword [ebp + 0xc]
xor edx, edx
mov dword [ebp - 8], eax
inc edx
test byte [ebp + 0x1c], 1
je 0x449f97
cmp ebx, edx
mov ecx, dword [edi + 0x24]
movzx eax, byte [ecx + eax]
mov dword [ebp - 8], eax
mov eax, edx
jl 0x449f21
movzx edx, byte [esi]
movzx edx, byte [edx + ecx]
inc esi
cmp dword [ebp - 8], edx
jne case.0x448917.108
inc eax
cmp eax, ebx
jle 0x449f0b
cmp ebx, dword [ebp - 4]
je 0x4488e0
cmp dword [ebp - 0x24], 0
jne 0x44c339
mov dword [ebp - 0x14], esi
jmp 0x449f4c
cmp esi, dword [edi + 0x58]
jae 0x449f51
movzx eax, byte [esi]
movzx eax, byte [eax + ecx]
cmp dword [ebp - 8], eax
jne 0x449f51
inc esi
inc ebx
cmp ebx, dword [ebp - 4]
jl 0x449f39
cmp dword [ebp - 0x1c], 0
jne 0x4488e0
cmp esi, dword [ebp - 0x14]
jb case.0x448917.108
mov ebx, dword [ebp + 0x28]
inc ebx
push ebx
push 0
push dword [ebp + 0x20]
push dword [ebp + 0x1c]
push edi
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push esi
call fcn.00448894
add esp, 0x24
dec esi
test eax, eax
jne 0x44cb97
cmp esi, dword [ebp - 0x14]
jae 0x449f68
jmp case.0x448917.108
cmp ebx, edx
mov ecx, edx
jl 0x449fae
movzx edx, byte [esi]
inc esi
cmp eax, edx
jne case.0x448917.108
inc ecx
cmp ecx, ebx
jle 0x449f9d
cmp ebx, dword [ebp - 4]
je 0x4488e0
cmp dword [ebp - 0x24], 0
jne 0x44c393
mov dword [ebp - 0x14], esi
jmp 0x449fd5
cmp esi, dword [edi + 0x58]
jae 0x449fda
movzx eax, byte [esi]
cmp dword [ebp - 8], eax
jne 0x449fda
inc esi
inc ebx
cmp ebx, dword [ebp - 4]
jl 0x449fc6
cmp dword [ebp - 0x1c], 0
jne 0x4488e0
cmp esi, dword [ebp - 0x14]
jb case.0x448917.108
mov ebx, dword [ebp + 0x28]
inc ebx
push ebx
push 0
push dword [ebp + 0x20]
push dword [ebp + 0x1c]
push edi
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push esi
call fcn.00448894
add esp, 0x24
dec esi
test eax, eax
jne 0x44cb97
cmp esi, dword [ebp - 0x14]
jae 0x449ff1
jmp case.0x448917.108
cmp esi, dword [edi + 0x58]
jae case.0x448917.108
movzx edx, byte [esi]
inc ebx
inc esi
cmp dword [ebp - 0x18], 0
mov dword [ebp + 0xc], ebx
je 0x44a078
cmp edx, 0xc0
jb 0x44a078
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x466610]
mov ebx, dword [eax*4 + 0x4665f4]
mov ecx, eax
imul ecx, ecx, 6
and ebx, edx
shl ebx, cl
mov edx, ebx
jmp 0x44a071
movzx ebx, byte [esi]
mov edx, dword [ebp - 8]
sub ecx, 6
and ebx, 0x3f
shl ebx, cl
dec eax
or edx, ebx
inc esi
test eax, eax
mov dword [ebp - 8], edx
jg 0x44a05f
test byte [ebp + 0x1c], 1
je 0x44a0aa
cmp edx, 0x100
jae 0x44a08d
mov eax, dword [edi + 0x24]
movzx edx, byte [eax + edx]
mov eax, dword [ebp + 0xc]
movzx eax, byte [eax]
mov ecx, dword [edi + 0x24]
movzx eax, byte [ecx + eax]
inc dword [ebp + 0xc]
cmp eax, edx
jne 0x4488e0
jmp case.0x448917.108
mov eax, dword [ebp + 0xc]
movzx eax, byte [eax]
jmp 0x44a09a
xor edx, edx
mov dh, byte [ebx + 1]
mov dl, byte [ebx + 2]
mov dword [ebp - 4], edx
add ebx, 3
jmp 0x44a13f
xor eax, eax
mov ah, byte [ebx + 1]
xor edx, edx
mov al, byte [ebx + 2]
mov dword [ebp - 4], eax
xor eax, eax
cmp byte [ebx], 0x32
sete al
mov dword [ebp - 0x24], eax
jmp 0x44a0bd
mov dword [ebp - 0x1c], 1
xor edx, edx
inc ebx
jmp 0x44a138
xor edx, edx
inc edx
mov dword [ebp - 0x1c], edx
jmp 0x44a0e5
xor eax, eax
inc eax
xor edx, edx
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], eax
inc ebx
jmp 0x44a13f
xor edx, edx
xor eax, eax
mov ah, byte [ebx + 1]
mov dword [ebp - 0x1c], 1
mov al, byte [ebx + 2]
mov dword [ebp - 4], eax
jmp 0x44a0bd
movzx eax, byte [ebx]
movsx edx, byte [eax + 0x466515]
sub eax, 0x2b
mov ecx, eax
movsx eax, byte [eax + 0x466548]
and ecx, 1
inc ebx
test eax, eax
mov dword [ebp - 0x24], ecx
mov dword [ebp - 4], eax
jne 0x44a13f
mov dword [ebp - 4], connect
mov eax, dword [edi + 0x58]
sub eax, esi
cmp edx, eax
jg case.0x448917.108
movzx ecx, byte [ebx]
inc ebx
test byte [ebp + 0x1c], 1
mov dword [ebp - 8], ecx
mov dword [ebp + 0xc], ebx
je 0x44a337
cmp dword [ebp - 0x18], 0
mov eax, dword [edi + 0x24]
movzx ecx, byte [eax + ecx]
mov dword [ebp - 8], ecx
je 0x44a1fa
xor eax, eax
inc eax
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44a21d
movzx ebx, byte [esi]
inc esi
cmp ebx, 0xc0
jb 0x44a1d5
mov eax, ebx
and eax, 0x3f
movzx eax, byte [eax + 0x466610]
mov ecx, eax
imul ecx, ecx, 6
mov dword [ebp - 0xc], ecx
mov ecx, dword [eax*4 + 0x4665f4]
and ecx, ebx
mov ebx, ecx
mov ecx, dword [ebp - 0xc]
shl ebx, cl
jmp 0x44a1ce
movzx ecx, byte [esi]
sub dword [ebp - 0xc], 6
and ecx, 0x3f
mov ebx, ecx
mov ecx, dword [ebp - 0xc]
shl ebx, cl
dec eax
mov ecx, ebx
mov ebx, dword [ebp - 0x10]
or ebx, ecx
inc esi
test eax, eax
mov dword [ebp - 0x10], ebx
jg 0x44a1b4
cmp ebx, 0x100
jae 0x44a1e4
mov eax, dword [edi + 0x24]
movzx ebx, byte [eax + ebx]
cmp dword [ebp - 8], ebx
je case.0x448917.108
inc dword [ebp + 0x18]
cmp dword [ebp + 0x18], edx
jle 0x44a182
mov ebx, dword [ebp + 0xc]
jmp 0x44a21d
xor ecx, ecx
inc ecx
cmp edx, ecx
mov dword [ebp + 0x18], ecx
jl 0x44a21d
movzx ecx, byte [esi]
movzx ecx, byte [ecx + eax]
inc esi
cmp dword [ebp - 8], ecx
je case.0x448917.108
inc dword [ebp + 0x18]
cmp dword [ebp + 0x18], edx
jle 0x44a204
cmp edx, dword [ebp - 4]
je 0x4488e0
xor ecx, ecx
cmp dword [ebp - 0x24], ecx
jne 0x44c3e6
cmp dword [ebp - 0x18], ecx
mov dword [ebp - 0x14], esi
je 0x44a2ed
cmp edx, dword [ebp - 4]
mov dword [ebp + 0x18], edx
jge 0x44a2c0
xor eax, eax
inc eax
cmp esi, dword [edi + 0x58]
jae 0x44a2c0
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x44a29f
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x466610]
mov ebx, dword [eax*4 + 0x4665f4]
mov ecx, eax
imul ecx, ecx, 6
and ebx, edx
shl ebx, cl
cmp eax, 1
mov dword [ebp - 0xc], 1
mov edx, ebx
jl 0x44a29b
mov ebx, dword [ebp - 0xc]
movzx ebx, byte [ebx + esi]
sub ecx, 6
and ebx, 0x3f
shl ebx, cl
or edx, ebx
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], eax
jle 0x44a282
mov ebx, dword [ebp + 0xc]
inc eax
cmp edx, 0x100
jae 0x44a2ae
mov ecx, dword [edi + 0x24]
movzx edx, byte [ecx + edx]
cmp dword [ebp - 8], edx
je 0x44a2c0
add esi, eax
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jl 0x44a245
cmp dword [ebp - 0x1c], 0
jne 0x4488e0
mov eax, dword [ebp + 0x28]
inc eax
mov dword [ebp - 0x10], eax
push eax
jmp 0x44c520
cmp esi, dword [edi + 0x58]
jae 0x44a2f2
movzx ebx, byte [esi]
mov eax, dword [edi + 0x24]
movzx eax, byte [ebx + eax]
cmp dword [ebp - 8], eax
je 0x44a2f2
inc esi
inc edx
cmp edx, dword [ebp - 4]
jl 0x44a2d7
cmp dword [ebp - 0x1c], ecx
jne 0x4488e0
cmp esi, dword [ebp - 0x14]
jb case.0x448917.108
mov ebx, dword [ebp + 0x28]
inc ebx
push ebx
push 0
push dword [ebp + 0x20]
push dword [ebp + 0x1c]
push edi
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push esi
call fcn.00448894
add esp, 0x24
test eax, eax
jne 0x44cb97
dec esi
cmp esi, dword [ebp - 0x14]
jae 0x44a308
jmp case.0x448917.108
xor eax, eax
inc eax
cmp dword [ebp - 0x18], 0
je 0x44a3b0
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44a3c6
movzx ebx, byte [esi]
inc esi
cmp ebx, 0xc0
jb 0x44a39a
mov eax, ebx
and eax, 0x3f
movzx eax, byte [eax + 0x466610]
mov ecx, eax
imul ecx, ecx, 6
mov dword [ebp - 0xc], ecx
mov ecx, dword [eax*4 + 0x4665f4]
and ecx, ebx
mov ebx, ecx
mov ecx, dword [ebp - 0xc]
shl ebx, cl
jmp 0x44a393
movzx ecx, byte [esi]
sub dword [ebp - 0xc], 6
and ecx, 0x3f
mov ebx, ecx
mov ecx, dword [ebp - 0xc]
shl ebx, cl
dec eax
mov ecx, ebx
mov ebx, dword [ebp - 0x10]
or ebx, ecx
inc esi
test eax, eax
mov dword [ebp - 0x10], ebx
jg 0x44a379
cmp dword [ebp - 8], ebx
je case.0x448917.108
inc dword [ebp + 0x18]
cmp dword [ebp + 0x18], edx
jle 0x44a347
mov ebx, dword [ebp + 0xc]
jmp 0x44a3c6
cmp edx, eax
jl 0x44a3c6
movzx ecx, byte [esi]
inc esi
cmp dword [ebp - 8], ecx
je case.0x448917.108
inc eax
cmp eax, edx
jle 0x44a3b4
cmp edx, dword [ebp - 4]
je 0x4488e0
xor ecx, ecx
cmp dword [ebp - 0x24], ecx
jne 0x44c542
cmp dword [ebp - 0x18], ecx
mov dword [ebp - 0x14], esi
je 0x44a486
cmp edx, dword [ebp - 4]
mov dword [ebp + 0x18], edx
jge 0x44a460
jmp 0x44a3f2
xor ecx, ecx
xor eax, eax
inc eax
cmp esi, dword [edi + 0x58]
jae 0x44a460
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x44a44c
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x466610]
mov ebx, dword [eax*4 + 0x4665f4]
mov ecx, eax
imul ecx, ecx, 6
and ebx, edx
shl ebx, cl
cmp eax, 1
mov dword [ebp - 0xc], 1
mov edx, ebx
jl 0x44a448
mov ebx, dword [ebp - 0xc]
movzx ebx, byte [ebx + esi]
sub ecx, 6
and ebx, 0x3f
shl ebx, cl
or edx, ebx
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], eax
jle 0x44a42f
mov ebx, dword [ebp + 0xc]
inc eax
cmp dword [ebp - 8], edx
je 0x44a45e
add esi, eax
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jl 0x44a3f0
xor ecx, ecx
cmp dword [ebp - 0x1c], ecx
jne 0x4488e0
mov eax, dword [ebp + 0x28]
inc eax
push eax
mov dword [ebp - 0x10], eax
push ecx
jmp 0x44c666
cmp esi, dword [edi + 0x58]
jae 0x44a48b
movzx eax, byte [esi]
cmp dword [ebp - 8], eax
je 0x44a48b
inc esi
inc edx
cmp edx, dword [ebp - 4]
jl 0x44a477
cmp dword [ebp - 0x1c], ecx
jne 0x4488e0
cmp esi, dword [ebp - 0x14]
jb case.0x448917.108
mov ebx, dword [ebp + 0x28]
inc ebx
push ebx
push 0
push dword [ebp + 0x20]
push dword [ebp + 0x1c]
push edi
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push esi
call fcn.00448894
add esp, 0x24
test eax, eax
jne 0x44cb97
dec esi
cmp esi, dword [ebp - 0x14]
jae 0x44a4a1
jmp case.0x448917.108
xor eax, eax
mov ah, byte [ebx + 1]
mov al, byte [ebx + 2]
mov dword [ebp - 0x14], eax
mov edx, dword [ebp - 0x14]
mov dword [ebp - 4], eax
xor eax, eax
inc eax
mov dword [ebp - 0x24], eax
add ebx, 3
jmp 0x44a589
and dword [ebp - 0x14], 0
xor eax, eax
mov ah, byte [ebx + 1]
mov al, byte [ebx + 2]
mov dword [ebp - 4], eax
xor eax, eax
cmp byte [ebx], 0x3f
sete al
mov dword [ebp - 0x24], eax
add ebx, 3
mov edx, dword [ebp - 0x14]
jmp 0x44a586
and dword [ebp - 0x14], 0
mov dword [ebp - 0x1c], 1
mov dword [ebp - 4], connect
inc ebx
jmp 0x44a50c
xor eax, eax
inc eax
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x14], eax
jmp 0x44a51c
xor eax, eax
inc eax
and dword [ebp - 0x14], 0
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], eax
jmp 0x44a523
and dword [ebp - 0x14], 0
xor eax, eax
mov ah, byte [ebx + 1]
mov dword [ebp - 0x1c], 1
mov al, byte [ebx + 2]
mov dword [ebp - 4], eax
jmp 0x44a509
movzx eax, byte [ebx]
movsx edx, byte [eax + 0x466508]
sub eax, 0x38
mov ecx, eax
movsx eax, byte [eax + 0x466548]
and ecx, 1
inc ebx
test eax, eax
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x14], edx
mov dword [ebp - 4], eax
jne 0x44a586
mov dword [ebp - 4], connect
xor eax, eax
inc eax
movzx ecx, byte [ebx]
mov dword [ebp - 0xc], ecx
mov ecx, dword [edi + 0x58]
mov dword [ebp - 0x10], ecx
inc ebx
sub ecx, esi
cmp edx, ecx
mov dword [ebp + 0xc], ebx
jg case.0x448917.108
test edx, edx
jle 0x44ae66
mov ecx, dword [ebp - 0xc]
add ecx, 0xfffffffa
cmp dword [ebp - 0x18], 0
je 0x44abad
cmp ecx, 0xe
ja case.0x44ca4c.14
jmp dword [ecx*4 + 0x44cd20]
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44ae66
mov ecx, dword [ebp - 0x10]
cmp esi, ecx
jae case.0x448917.108
test byte [ebp + 0x1c], 4
jne 0x44a62f
mov edx, dword [edi + 0x18]
test edx, edx
je 0x44a60b
push dword [ebp - 0x18]
lea eax, [edi + 0x1c]
push eax
push ecx
push edx
push esi
call fcn.0044d6b0
add esp, 0x14
test eax, eax
jne case.0x448917.108
inc eax
jmp 0x44a62f
mov edx, dword [edi + 0x1c]
sub ecx, edx
cmp esi, ecx
ja 0x44a62f
mov cl, byte [esi]
cmp cl, byte [edi + 0x20]
jne 0x44a62f
cmp edx, eax
je case.0x448917.108
mov cl, byte [esi + 1]
cmp cl, byte [edi + 0x21]
je case.0x448917.108
mov ecx, dword [edi + 0x58]
inc esi
cmp esi, ecx
mov dword [ebp - 0x10], ecx
jae 0x44a64a
mov cl, byte [esi]
and cl, 0xc0
cmp cl, 0x80
jne 0x44a64a
inc esi
cmp esi, dword [edi + 0x58]
jb 0x44a63a
inc dword [ebp + 0x18]
mov ecx, dword [ebp + 0x18]
cmp ecx, dword [ebp - 0x14]
jle 0x44a5d6
mov edx, dword [ebp - 0x14]
jmp 0x44ae66
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44ae66
cmp esi, dword [ebp - 0x10]
jae case.0x448917.108
movzx edx, byte [esi]
inc esi
cmp edx, 0xc0
jb 0x44a6b6
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x466610]
mov ebx, dword [eax*4 + 0x4665f4]
mov ecx, eax
imul ecx, ecx, 6
and ebx, edx
shl ebx, cl
mov edx, ebx
jmp 0x44a6af
movzx ebx, byte [esi]
mov edx, dword [ebp - 8]
sub ecx, 6
and ebx, 0x3f
shl ebx, cl
dec eax
or edx, ebx
inc esi
test eax, eax
mov dword [ebp - 8], edx
jg 0x44a69d
cmp edx, 0xa
je 0x44a6f5
jbe case.0x448917.108
cmp edx, 0xc
jbe 0x44a6eb
cmp edx, 0xd
je 0x44a70c
cmp edx, 0x85
je 0x44a6eb
cmp edx, 0x2027
jbe case.0x448917.108
cmp edx, 0x2029
ja case.0x448917.108
cmp dword [edi + 0x4c], 0
jne case.0x448917.108
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 0x14]
jle 0x44a668
mov ebx, dword [ebp + 0xc]
jmp 0x44a655
cmp esi, dword [ebp - 0x10]
jae 0x44a6f5
cmp byte [esi], 0xa
jne 0x44a6f5
inc esi
jmp 0x44a6f5
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44ae66
cmp esi, dword [ebp - 0x10]
jae case.0x448917.108
movzx eax, byte [esi]
inc esi
cmp eax, 0xc0
jb 0x44a775
mov ecx, eax
and ecx, 0x3f
movzx edx, byte [ecx + 0x466610]
mov ebx, dword [edx*4 + 0x4665f4]
mov ecx, edx
imul ecx, ecx, 6
and ebx, eax
shl ebx, cl
test edx, edx
mov eax, ebx
jle 0x44a775
jmp 0x44a75f
mov ecx, dword [ebp - 8]
movzx ebx, byte [esi]
sub ecx, 6
and ebx, 0x3f
shl ebx, cl
dec edx
mov dword [ebp - 8], ecx
or eax, ebx
inc esi
test edx, edx
jg 0x44a75c
mov ecx, 0x180e
cmp eax, ecx
ja 0x44a7a8
je case.0x448917.108
cmp eax, 9
je case.0x448917.108
cmp eax, 0x20
je case.0x448917.108
cmp eax, 0xa0
je case.0x448917.108
cmp eax, 0x1680
jmp 0x44a7d5
cmp eax, 0x2000
jb 0x44a7db
cmp eax, 0x200a
jbe case.0x448917.108
cmp eax, 0x202f
je case.0x448917.108
cmp eax, 0x205f
je case.0x448917.108
cmp eax, 0x3000
je case.0x448917.108
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 0x14]
jle 0x44a724
jmp 0x44a704
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44ae66
cmp esi, dword [ebp - 0x10]
jae case.0x448917.108
movzx eax, byte [esi]
inc esi
cmp eax, 0xc0
jb 0x44a84b
mov ecx, eax
and ecx, 0x3f
movzx edx, byte [ecx + 0x466610]
mov ebx, dword [edx*4 + 0x4665f4]
mov ecx, edx
imul ecx, ecx, 6
and ebx, eax
shl ebx, cl
test edx, edx
mov eax, ebx
jle 0x44a84b
jmp 0x44a835
mov ecx, dword [ebp - 8]
movzx ebx, byte [esi]
sub ecx, 6
and ebx, 0x3f
shl ebx, cl
dec edx
mov dword [ebp - 8], ecx
or eax, ebx
inc esi
test edx, edx
jg 0x44a832
mov ecx, 0x180e
cmp eax, ecx
ja 0x44a86e
je 0x44a899
cmp eax, 9
je 0x44a899
cmp eax, 0x20
je 0x44a899
cmp eax, 0xa0
je 0x44a899
cmp eax, 0x1680
jmp 0x44a893
cmp eax, 0x2000
jb case.0x448917.108
cmp eax, 0x200a
jbe 0x44a899
cmp eax, 0x202f
je 0x44a899
cmp eax, 0x205f
je 0x44a899
cmp eax, 0x3000
jne case.0x448917.108
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 0x14]
jle 0x44a7fa
jmp 0x44a704
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44ae66
cmp esi, dword [ebp - 0x10]
jae case.0x448917.108
movzx edx, byte [esi]
inc esi
cmp edx, 0xc0
jb 0x44a906
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x466610]
mov ebx, dword [eax*4 + 0x4665f4]
mov ecx, eax
imul ecx, ecx, 6
and ebx, edx
shl ebx, cl
mov edx, ebx
jmp 0x44a8ff
movzx ebx, byte [esi]
mov edx, dword [ebp - 8]
sub ecx, 6
and ebx, 0x3f
shl ebx, cl
dec eax
or edx, ebx
inc esi
test eax, eax
mov dword [ebp - 8], edx
jg 0x44a8ed
cmp edx, 0xa
jb 0x44a934
cmp edx, 0xd
jbe case.0x448917.108
cmp edx, 0x85
je case.0x448917.108
cmp edx, 0x2027
jbe 0x44a934
cmp edx, 0x2029
jbe case.0x448917.108
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 0x14]
jle 0x44a8b8
jmp 0x44a704
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44ae66
cmp esi, dword [ebp - 0x10]
jae case.0x448917.108
movzx edx, byte [esi]
inc esi
cmp edx, 0xc0
jb 0x44a9a1
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x466610]
mov ebx, dword [eax*4 + 0x4665f4]
mov ecx, eax
imul ecx, ecx, 6
and ebx, edx
shl ebx, cl
mov edx, ebx
jmp 0x44a99a
movzx ebx, byte [esi]
mov edx, dword [ebp - 8]
sub ecx, 6
and ebx, 0x3f
shl ebx, cl
dec eax
or edx, ebx
inc esi
test eax, eax
mov dword [ebp - 8], edx
jg 0x44a988
cmp edx, 0xa
jb case.0x448917.108
cmp edx, 0xd
jbe 0x44a9cf
cmp edx, 0x85
je 0x44a9cf
cmp edx, 0x2027
jbe case.0x448917.108
cmp edx, 0x2029
ja case.0x448917.108
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 0x14]
jle 0x44a953
jmp 0x44a704
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44ae66
cmp esi, dword [ebp - 0x10]
jae case.0x448917.108
movzx edx, byte [esi]
inc esi
cmp edx, 0xc0
jb 0x44aa3c
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x466610]
mov ebx, dword [eax*4 + 0x4665f4]
mov ecx, eax
imul ecx, ecx, 6
and ebx, edx
shl ebx, cl
mov edx, ebx
jmp 0x44aa35
movzx ebx, byte [esi]
mov edx, dword [ebp - 8]
sub ecx, 6
and ebx, 0x3f
shl ebx, cl
dec eax
or edx, ebx
inc esi
test eax, eax
mov dword [ebp - 8], edx
jg 0x44aa23
cmp edx, 0x80
jae 0x44aa51
mov eax, dword [edi + 0x28]
test byte [edx + eax], 4
jne case.0x448917.108
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 0x14]
jle 0x44a9ee
jmp 0x44a704
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44ae66
cmp esi, dword [ebp - 0x10]
jae case.0x448917.108
mov cl, byte [esi]
cmp cl, 0x80
jae case.0x448917.108
movzx eax, cl
mov ecx, dword [edi + 0x28]
mov al, byte [eax + ecx]
and al, 4
inc esi
test al, al
je case.0x448917.108
inc dword [ebp + 0x18]
cmp dword [ebp + 0x18], edx
jle 0x44aa6c
jmp 0x44ae66
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44ae66
cmp esi, dword [ebp - 0x10]
jae case.0x448917.108
mov cl, byte [esi]
cmp cl, 0x80
jae 0x44aacc
movzx eax, cl
mov ecx, dword [edi + 0x28]
test byte [eax + ecx], 1
jne case.0x448917.108
inc esi
cmp esi, dword [ebp - 0x10]
jae 0x44aada
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
je 0x44aacc
inc dword [ebp + 0x18]
cmp dword [ebp + 0x18], edx
jle 0x44aaac
jmp 0x44ae66
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44ae66
cmp esi, dword [ebp - 0x10]
jae case.0x448917.108
mov cl, byte [esi]
cmp cl, 0x80
jae case.0x448917.108
movzx eax, cl
mov ecx, dword [edi + 0x28]
mov al, byte [eax + ecx]
and al, 1
inc esi
test al, al
je case.0x448917.108
inc dword [ebp + 0x18]
cmp dword [ebp + 0x18], edx
jle 0x44aaf2
jmp 0x44ae66
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44ae66
cmp esi, dword [ebp - 0x10]
jae case.0x448917.108
mov cl, byte [esi]
cmp cl, 0x80
jae 0x44ab52
movzx eax, cl
mov ecx, dword [edi + 0x28]
test byte [eax + ecx], 0x10
jne case.0x448917.108
inc esi
cmp esi, dword [ebp - 0x10]
jae 0x44ab60
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
je 0x44ab52
inc dword [ebp + 0x18]
cmp dword [ebp + 0x18], edx
jle 0x44ab32
jmp 0x44ae66
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44ae66
cmp esi, dword [ebp - 0x10]
jae case.0x448917.108
mov cl, byte [esi]
cmp cl, 0x80
jae case.0x448917.108
movzx eax, cl
mov ecx, dword [edi + 0x28]
mov al, byte [eax + ecx]
and al, 0x10
inc esi
test al, al
je case.0x448917.108
inc dword [ebp + 0x18]
cmp dword [ebp + 0x18], edx
jle 0x44ab78
jmp 0x44ae66
cmp ecx, 0xe
ja case.0x44ca4c.14
jmp dword [ecx*4 + 0x44cd5c]
test byte [ebp + 0x1c], 4
jne case.0x44abb6.7
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44ae66
mov edx, dword [edi + 0x18]
test edx, edx
je 0x44abf8
mov ecx, dword [edi + 0x58]
cmp esi, ecx
jae 0x44ac1f
push 0
lea eax, [edi + 0x1c]
push eax
push ecx
push edx
push esi
call fcn.0044d6b0
add esp, 0x14
test eax, eax
jne case.0x448917.108
inc eax
jmp 0x44ac1f
mov ecx, dword [edi + 0x1c]
mov edx, dword [edi + 0x58]
sub edx, ecx
cmp esi, edx
ja 0x44ac1f
mov dl, byte [esi]
cmp dl, byte [edi + 0x20]
jne 0x44ac1f
cmp ecx, eax
je case.0x448917.108
mov cl, byte [esi + 1]
cmp cl, byte [edi + 0x21]
je case.0x448917.108
inc esi
inc dword [ebp + 0x18]
mov ecx, dword [ebp + 0x18]
cmp ecx, dword [ebp - 0x14]
jle 0x44abce
jmp 0x44a655
add esi, edx
jmp 0x44ae66
cmp edx, eax
jl 0x44ae66
cmp esi, dword [ebp - 0x10]
jae case.0x448917.108
movzx ecx, byte [esi]
inc esi
cmp ecx, 0xa
je 0x44ac77
jle case.0x448917.108
cmp ecx, 0xc
jle 0x44ac6d
cmp ecx, 0xd
je 0x44ac81
cmp ecx, 0x85
jne case.0x448917.108
cmp dword [edi + 0x4c], 0
jne case.0x448917.108
inc eax
cmp eax, edx
jle 0x44ac3f
jmp 0x44ae66
cmp esi, dword [ebp - 0x10]
jae 0x44ac77
cmp byte [esi], 0xa
jne 0x44ac77
inc esi
jmp 0x44ac77
cmp edx, eax
jl 0x44ae66
cmp esi, dword [ebp - 0x10]
jae case.0x448917.108
movzx ecx, byte [esi]
inc esi
cmp ecx, 9
je case.0x448917.108
cmp ecx, 0x20
je case.0x448917.108
cmp ecx, 0xa0
je case.0x448917.108
inc eax
cmp eax, edx
jle 0x44ac96
jmp 0x44ae66
cmp edx, eax
jl 0x44ae66
cmp esi, dword [ebp - 0x10]
jae case.0x448917.108
movzx ecx, byte [esi]
inc esi
cmp ecx, 9
je 0x44acf6
cmp ecx, 0x20
je 0x44acf6
cmp ecx, 0xa0
jne case.0x448917.108
inc eax
cmp eax, edx
jle 0x44acd3
jmp 0x44ae66
cmp edx, eax
jl 0x44ae66
cmp esi, dword [ebp - 0x10]
jae case.0x448917.108
movzx ecx, byte [esi]
inc esi
cmp ecx, 0xa
jl 0x44ad2f
cmp ecx, 0xd
jle case.0x448917.108
cmp ecx, 0x85
je case.0x448917.108
inc eax
cmp eax, edx
jle 0x44ad08
jmp 0x44ae66
cmp edx, eax
jl 0x44ae66
cmp esi, dword [ebp - 0x10]
jae case.0x448917.108
movzx ecx, byte [esi]
inc esi
cmp ecx, 0xa
jl case.0x448917.108
cmp ecx, 0xd
jle 0x44ad68
cmp ecx, 0x85
jne case.0x448917.108
inc eax
cmp eax, edx
jle 0x44ad41
jmp 0x44ae66
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44ae66
mov eax, dword [edi + 0x28]
movzx ecx, byte [esi]
mov cl, byte [ecx + eax]
and cl, 4
inc esi
test cl, cl
jne case.0x448917.108
inc dword [ebp + 0x18]
cmp dword [ebp + 0x18], edx
jle 0x44ad80
jmp 0x44ae66
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44ae66
mov eax, dword [edi + 0x28]
movzx ecx, byte [esi]
mov cl, byte [ecx + eax]
and cl, 4
inc esi
test cl, cl
je case.0x448917.108
inc dword [ebp + 0x18]
cmp dword [ebp + 0x18], edx
jle 0x44adad
jmp 0x44ae66
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44ae66
mov eax, dword [edi + 0x28]
movzx ecx, byte [esi]
mov cl, byte [ecx + eax]
and cl, 1
inc esi
test cl, cl
jne case.0x448917.108
inc dword [ebp + 0x18]
cmp dword [ebp + 0x18], edx
jle 0x44adda
jmp 0x44ae66
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44ae66
mov eax, dword [edi + 0x28]
movzx ecx, byte [esi]
mov cl, byte [ecx + eax]
and cl, 1
inc esi
test cl, cl
je case.0x448917.108
inc dword [ebp + 0x18]
cmp dword [ebp + 0x18], edx
jle 0x44ae00
jmp 0x44ae66
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44ae66
mov eax, dword [edi + 0x28]
movzx ecx, byte [esi]
mov cl, byte [ecx + eax]
and cl, 0x10
inc esi
test cl, cl
jne case.0x448917.108
inc dword [ebp + 0x18]
cmp dword [ebp + 0x18], edx
jle 0x44ae26
jmp 0x44ae66
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44ae66
mov eax, dword [edi + 0x28]
movzx ecx, byte [esi]
mov cl, byte [ecx + eax]
and cl, 0x10
inc esi
test cl, cl
je case.0x448917.108
inc dword [ebp + 0x18]
cmp dword [ebp + 0x18], edx
jle 0x44ae4c
mov ecx, dword [ebp - 4]
cmp edx, ecx
je 0x4488e0
xor eax, eax
cmp dword [ebp - 0x24], eax
jne 0x44c68d
cmp dword [ebp - 0x18], eax
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x14], esi
je 0x44b5b1
add eax, 0xfffffffa
cmp eax, 0xe
ja case.0x44ca4c.14
jmp dword [eax*4 + 0x44cd98]
cmp ecx, 0x7fffffff
jge 0x44af5b
test byte [ebp + 0x1c], 4
jne 0x44af28
cmp edx, ecx
mov ebx, edx
jge 0x44b59e
mov eax, dword [edi + 0x58]
cmp esi, eax
jae 0x44b59e
mov ecx, dword [edi + 0x18]
test ecx, ecx
je 0x44aee8
push dword [ebp - 0x18]
lea edx, [edi + 0x1c]
push edx
push eax
push ecx
push esi
call fcn.0044d6b0
add esp, 0x14
test eax, eax
jne 0x44b59e
jmp 0x44af17
mov ecx, dword [edi + 0x1c]
sub eax, ecx
cmp esi, eax
ja 0x44af17
mov al, byte [esi]
cmp al, byte [edi + 0x20]
jne 0x44af17
cmp ecx, 1
je 0x44b59e
mov al, byte [esi + 1]
cmp al, byte [edi + 0x21]
je 0x44b59e
jmp 0x44af17
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x44af1d
inc esi
cmp esi, dword [edi + 0x58]
jb 0x44af0f
inc ebx
cmp ebx, dword [ebp - 4]
jl 0x44aeba
jmp 0x44b59e
cmp edx, ecx
jge 0x44b59e
mov eax, dword [edi + 0x58]
cmp esi, eax
jae 0x44b59e
inc esi
cmp esi, eax
jae 0x44af50
mov cl, byte [esi]
and cl, 0xc0
cmp cl, 0x80
jne 0x44af50
inc esi
cmp esi, dword [edi + 0x58]
jb 0x44af40
inc edx
cmp edx, dword [ebp - 4]
jl 0x44af33
jmp 0x44b59e
test byte [ebp + 0x1c], 4
jne 0x44afd9
cmp edx, ecx
mov ebx, edx
jge 0x44b59e
mov eax, dword [edi + 0x58]
cmp esi, eax
jae 0x44b59e
mov ecx, dword [edi + 0x18]
test ecx, ecx
je 0x44af99
push dword [ebp - 0x18]
lea edx, [edi + 0x1c]
push edx
push eax
push ecx
push esi
call fcn.0044d6b0
add esp, 0x14
test eax, eax
jne 0x44b59e
jmp 0x44afc8
mov ecx, dword [edi + 0x1c]
sub eax, ecx
cmp esi, eax
ja 0x44afc8
mov al, byte [esi]
cmp al, byte [edi + 0x20]
jne 0x44afc8
cmp ecx, 1
je 0x44b59e
mov al, byte [esi + 1]
cmp al, byte [edi + 0x21]
je 0x44b59e
jmp 0x44afc8
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x44afce
inc esi
cmp esi, dword [edi + 0x58]
jb 0x44afc0
inc ebx
cmp ebx, dword [ebp - 4]
jl 0x44af6b
jmp 0x44b59e
mov esi, dword [edi + 0x58]
jmp 0x44b59e
mov eax, dword [edi + 0x58]
sub ecx, edx
sub eax, esi
cmp ecx, eax
jbe 0x44afee
mov ecx, eax
add esi, ecx
jmp 0x44b59e
cmp edx, ecx
mov dword [ebp + 0x18], edx
jge 0x44b59e
xor eax, eax
inc eax
cmp esi, dword [edi + 0x58]
jae 0x44b59e
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x44b05b
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x466610]
mov ebx, dword [eax*4 + 0x4665f4]
mov ecx, eax
imul ecx, ecx, 6
and ebx, edx
shl ebx, cl
cmp eax, 1
mov dword [ebp - 0xc], 1
mov edx, ebx
jl 0x44b05a
mov ebx, dword [ebp - 0xc]
movzx ebx, byte [ebx + esi]
sub ecx, 6
and ebx, 0x3f
shl ebx, cl
or edx, ebx
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], eax
jle 0x44b041
inc eax
cmp edx, 0xd
jne 0x44b072
inc esi
cmp esi, dword [edi + 0x58]
jae 0x44b59e
cmp byte [esi], 0xa
jne 0x44b0a9
inc esi
jmp 0x44b0a9
cmp edx, 0xa
je 0x44b0a7
cmp dword [edi + 0x4c], 0
jne 0x44b59e
cmp edx, 0xb
je 0x44b0a7
cmp edx, 0xc
je 0x44b0a7
cmp edx, 0x85
je 0x44b0a7
cmp edx, 0x2028
je 0x44b0a7
cmp edx, 0x2029
jne 0x44b59e
add esi, eax
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jl 0x44b000
jmp 0x44b59e
cmp edx, ecx
mov dword [ebp + 0x18], edx
jge 0x44b59e
xor eax, eax
inc eax
cmp esi, dword [edi + 0x58]
jae 0x44b59e
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x44b123
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x466610]
mov ebx, dword [eax*4 + 0x4665f4]
mov ecx, eax
imul ecx, ecx, 6
and ebx, edx
shl ebx, cl
cmp eax, 1
mov dword [ebp - 0x24], 1
mov edx, ebx
jl 0x44b122
mov ebx, dword [ebp - 0x24]
movzx ebx, byte [ebx + esi]
sub ecx, 6
and ebx, 0x3f
shl ebx, cl
or edx, ebx
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], eax
jle 0x44b109
inc eax
mov ecx, 0x180e
cmp edx, ecx
ja 0x44b171
je 0x44b199
cmp edx, 9
je 0x44b199
cmp edx, 0x20
je 0x44b199
cmp edx, 0xa0
je 0x44b199
cmp edx, 0x1680
je 0x44b199
xor ecx, ecx
xor edx, edx
cmp dword [ebp - 0xc], 0x11
sete dl
cmp ecx, edx
je 0x44b59e
add esi, eax
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jl 0x44b0c8
jmp 0x44b59e
cmp edx, 0x2000
jb 0x44b148
cmp edx, 0x200a
jbe 0x44b199
cmp edx, 0x202f
je 0x44b199
cmp edx, 0x205f
je 0x44b199
cmp edx, 0x3000
jne 0x44b148
xor ecx, ecx
inc ecx
jmp 0x44b14a
cmp edx, ecx
mov dword [ebp + 0x18], edx
jge 0x44b59e
xor eax, eax
inc eax
cmp esi, dword [edi + 0x58]
jae 0x44b59e
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x44b204
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x466610]
mov ebx, dword [eax*4 + 0x4665f4]
mov ecx, eax
imul ecx, ecx, 6
and ebx, edx
shl ebx, cl
cmp eax, 1
mov dword [ebp - 0x24], 1
mov edx, ebx
jl 0x44b203
mov ebx, dword [ebp - 0x24]
movzx ebx, byte [ebx + esi]
sub ecx, 6
and ebx, 0x3f
shl ebx, cl
or edx, ebx
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], eax
jle 0x44b1ea
inc eax
cmp edx, 0xa
jb 0x44b22b
cmp edx, 0xd
jbe 0x44b226
cmp edx, 0x85
je 0x44b226
cmp edx, 0x2027
jbe 0x44b22b
cmp edx, 0x2029
ja 0x44b22b
xor ecx, ecx
inc ecx
jmp 0x44b22d
xor ecx, ecx
xor edx, edx
cmp dword [ebp - 0xc], 0x13
sete dl
cmp ecx, edx
je 0x44b59e
add esi, eax
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jl 0x44b1a9
jmp 0x44b59e
cmp edx, ecx
mov dword [ebp + 0x18], edx
jge 0x44b59e
xor eax, eax
inc eax
cmp esi, dword [edi + 0x58]
jae 0x44b59e
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x44b2ba
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x466610]
mov ebx, dword [eax*4 + 0x4665f4]
mov ecx, eax
imul ecx, ecx, 6
and ebx, edx
shl ebx, cl
cmp eax, 1
mov dword [ebp - 0xc], 1
mov edx, ebx
jl 0x44b2b9
mov ebx, dword [ebp - 0xc]
movzx ebx, byte [ebx + esi]
sub ecx, 6
and ebx, 0x3f
shl ebx, cl
or edx, ebx
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], eax
jle 0x44b2a0
inc eax
cmp edx, 0x100
jae 0x44b2cf
mov ecx, dword [edi + 0x28]
test byte [edx + ecx], 4
jne 0x44b59e
add esi, eax
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jl 0x44b25f
jmp 0x44b59e
cmp edx, ecx
mov dword [ebp + 0x18], edx
jge 0x44b59e
xor eax, eax
inc eax
cmp esi, dword [edi + 0x58]
jae 0x44b59e
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x44b347
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x466610]
mov ebx, dword [eax*4 + 0x4665f4]
mov ecx, eax
imul ecx, ecx, 6
and ebx, edx
shl ebx, cl
cmp eax, 1
mov dword [ebp - 0xc], 1
mov edx, ebx
jl 0x44b346
mov ebx, dword [ebp - 0xc]
movzx ebx, byte [ebx + esi]
sub ecx, 6
and ebx, 0x3f
shl ebx, cl
or edx, ebx
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], eax
jle 0x44b32d
inc eax
cmp edx, 0x100
jae 0x44b59e
mov ecx, dword [edi + 0x28]
test byte [edx + ecx], 4
je 0x44b59e
add esi, eax
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jl 0x44b2ec
jmp 0x44b59e
cmp edx, ecx
mov dword [ebp + 0x18], edx
jge 0x44b59e
xor eax, eax
inc eax
cmp esi, dword [edi + 0x58]
jae 0x44b59e
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x44b3dc
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x466610]
mov ebx, dword [eax*4 + 0x4665f4]
mov ecx, eax
imul ecx, ecx, 6
and ebx, edx
shl ebx, cl
cmp eax, 1
mov dword [ebp - 0xc], 1
mov edx, ebx
jl 0x44b3db
mov ebx, dword [ebp - 0xc]
movzx ebx, byte [ebx + esi]
sub ecx, 6
and ebx, 0x3f
shl ebx, cl
or edx, ebx
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], eax
jle 0x44b3c2
inc eax
cmp edx, 0x100
jae 0x44b3f1
mov ecx, dword [edi + 0x28]
test byte [edx + ecx], 1
jne 0x44b59e
add esi, eax
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jl 0x44b381
jmp 0x44b59e
cmp edx, ecx
mov dword [ebp + 0x18], edx
jge 0x44b59e
xor eax, eax
inc eax
cmp esi, dword [edi + 0x58]
jae 0x44b59e
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x44b469
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x466610]
mov ebx, dword [eax*4 + 0x4665f4]
mov ecx, eax
imul ecx, ecx, 6
and ebx, edx
shl ebx, cl
cmp eax, 1
mov dword [ebp - 0xc], 1
mov edx, ebx
jl 0x44b468
mov ebx, dword [ebp - 0xc]
movzx ebx, byte [ebx + esi]
sub ecx, 6
and ebx, 0x3f
shl ebx, cl
or edx, ebx
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], eax
jle 0x44b44f
inc eax
cmp edx, 0x100
jae 0x44b59e
mov ecx, dword [edi + 0x28]
test byte [edx + ecx], 1
je 0x44b59e
add esi, eax
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jl 0x44b40e
jmp 0x44b59e
cmp edx, ecx
mov dword [ebp + 0x18], edx
jge 0x44b59e
xor eax, eax
inc eax
cmp esi, dword [edi + 0x58]
jae 0x44b59e
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x44b4fe
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x466610]
mov ebx, dword [eax*4 + 0x4665f4]
mov ecx, eax
imul ecx, ecx, 6
and ebx, edx
shl ebx, cl
cmp eax, 1
mov dword [ebp - 0xc], 1
mov edx, ebx
jl 0x44b4fd
mov ebx, dword [ebp - 0xc]
movzx ebx, byte [ebx + esi]
sub ecx, 6
and ebx, 0x3f
shl ebx, cl
or edx, ebx
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], eax
jle 0x44b4e4
inc eax
cmp edx, 0x100
jae 0x44b513
mov ecx, dword [edi + 0x28]
test byte [edx + ecx], 0x10
jne 0x44b59e
add esi, eax
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jl 0x44b4a3
jmp 0x44b59e
cmp edx, ecx
mov dword [ebp + 0x18], edx
jge 0x44b59e
xor eax, eax
inc eax
cmp esi, dword [edi + 0x58]
jae 0x44b59e
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x44b580
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x466610]
mov ebx, dword [eax*4 + 0x4665f4]
mov ecx, eax
imul ecx, ecx, 6
and ebx, edx
shl ebx, cl
cmp eax, 1
mov dword [ebp - 0xc], 1
mov edx, ebx
jl 0x44b57f
mov ebx, dword [ebp - 0xc]
movzx ebx, byte [ebx + esi]
sub ecx, 6
and ebx, 0x3f
shl ebx, cl
or edx, ebx
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], eax
jle 0x44b566
inc eax
cmp edx, 0x100
jae 0x44b59e
mov ecx, dword [edi + 0x28]
test byte [edx + ecx], 0x10
je 0x44b59e
add esi, eax
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jl 0x44b529
cmp dword [ebp - 0x1c], 0
jne 0x4488e0
mov ebx, dword [ebp + 0x28]
inc ebx
jmp 0x44cb72
add eax, 0xfffffffa
cmp eax, 0xe
ja case.0x44ca4c.14
jmp dword [eax*4 + 0x44cdd4]
test byte [ebp + 0x1c], 4
jne case.0x44b5bd.13
cmp edx, ecx
mov ebx, edx
jge 0x44b882
mov eax, dword [edi + 0x58]
cmp esi, eax
jae 0x44b882
mov ecx, dword [edi + 0x18]
test ecx, ecx
je 0x44b601
push 0
lea edx, [edi + 0x1c]
push edx
push eax
push ecx
push esi
call fcn.0044d6b0
add esp, 0x14
test eax, eax
jne 0x44b882
jmp 0x44b626
mov ecx, dword [edi + 0x1c]
sub eax, ecx
cmp esi, eax
ja 0x44b626
mov al, byte [esi]
cmp al, byte [edi + 0x20]
jne 0x44b626
cmp ecx, 1
je 0x44b882
mov al, byte [esi + 1]
cmp al, byte [edi + 0x21]
je 0x44b882
inc esi
inc ebx
cmp ebx, dword [ebp - 4]
jl 0x44b5d4
jmp 0x44b882
mov eax, dword [edi + 0x58]
sub ecx, edx
sub eax, esi
cmp ecx, eax
jbe 0x44b63f
mov ecx, eax
add esi, ecx
jmp 0x44b882
cmp edx, ecx
jge 0x44b882
mov ecx, dword [edi + 0x58]
cmp esi, ecx
jae 0x44b882
movzx eax, byte [esi]
cmp eax, 0xd
jne 0x44b671
inc esi
cmp esi, ecx
jae 0x44b882
cmp byte [esi], 0xa
jne 0x44b696
jmp 0x44b695
cmp eax, 0xa
je 0x44b695
cmp dword [edi + 0x4c], 0
jne 0x44b882
cmp eax, 0xb
je 0x44b695
cmp eax, 0xc
je 0x44b695
cmp eax, 0x85
jne 0x44b882
inc esi
inc edx
cmp edx, dword [ebp - 4]
jl 0x44b651
jmp 0x44b882
cmp edx, ecx
jge 0x44b882
mov ecx, dword [edi + 0x58]
cmp esi, ecx
jae 0x44b882
movzx eax, byte [esi]
cmp eax, 9
je 0x44b882
cmp eax, 0x20
je 0x44b882
cmp eax, 0xa0
je 0x44b882
inc esi
inc edx
cmp edx, dword [ebp - 4]
jl 0x44b6ac
jmp 0x44b882
cmp edx, ecx
jge 0x44b882
mov ecx, dword [edi + 0x58]
cmp esi, ecx
jae 0x44b882
movzx eax, byte [esi]
cmp eax, 9
je 0x44b70b
cmp eax, 0x20
je 0x44b70b
cmp eax, 0xa0
jne 0x44b882
inc esi
inc edx
cmp edx, dword [ebp - 4]
jl 0x44b6eb
jmp 0x44b882
cmp edx, ecx
jge 0x44b882
mov ecx, dword [edi + 0x58]
cmp esi, ecx
jae 0x44b882
movzx eax, byte [esi]
cmp eax, 0xa
je 0x44b882
cmp eax, 0xb
je 0x44b882
cmp eax, 0xc
je 0x44b882
cmp eax, 0xd
je 0x44b882
cmp eax, 0x85
je 0x44b882
inc esi
inc edx
cmp edx, dword [ebp - 4]
jl 0x44b722
jmp 0x44b882
cmp edx, ecx
jge 0x44b882
mov ecx, dword [edi + 0x58]
cmp esi, ecx
jae 0x44b882
movzx eax, byte [esi]
cmp eax, 0xa
je 0x44b79d
cmp eax, 0xb
je 0x44b79d
cmp eax, 0xc
je 0x44b79d
cmp eax, 0xd
je 0x44b79d
cmp eax, 0x85
jne 0x44b882
inc esi
inc edx
cmp edx, dword [ebp - 4]
jl 0x44b773
jmp 0x44b882
cmp edx, ecx
jge 0x44b882
mov eax, dword [edi + 0x58]
cmp esi, eax
jae 0x44b882
movzx ecx, byte [esi]
mov ebx, dword [edi + 0x28]
test byte [ecx + ebx], 4
jne 0x44b882
inc esi
inc edx
cmp edx, dword [ebp - 4]
jl 0x44b7b4
jmp 0x44b882
cmp edx, ecx
jge 0x44b882
mov eax, dword [edi + 0x58]
cmp esi, eax
jae 0x44b882
movzx ecx, byte [esi]
mov ebx, dword [edi + 0x28]
test byte [ecx + ebx], 4
je 0x44b882
inc esi
inc edx
cmp edx, dword [ebp - 4]
jl 0x44b7e3
jmp 0x44b882
cmp edx, ecx
jge 0x44b882
mov eax, dword [edi + 0x58]
cmp esi, eax
jae 0x44b882
movzx ecx, byte [esi]
mov ebx, dword [edi + 0x28]
test byte [ecx + ebx], 1
jne 0x44b882
inc esi
inc edx
cmp edx, dword [ebp - 4]
jl 0x44b80b
jmp 0x44b882
cmp edx, ecx
jge 0x44b882
mov eax, dword [edi + 0x58]
cmp esi, eax
jae 0x44b882
movzx ecx, byte [esi]
mov ebx, dword [edi + 0x28]
test byte [ecx + ebx], 1
je 0x44b882
inc esi
inc edx
cmp edx, dword [ebp - 4]
jl 0x44b82b
jmp 0x44b882
cmp edx, ecx
jge 0x44b882
mov eax, dword [edi + 0x58]
cmp esi, eax
jae 0x44b882
movzx ecx, byte [esi]
mov ebx, dword [edi + 0x28]
test byte [ecx + ebx], 0x10
jne 0x44b882
inc esi
inc edx
cmp edx, dword [ebp - 4]
jl 0x44b84b
jmp 0x44b882
cmp edx, ecx
jge 0x44b882
mov eax, dword [edi + 0x58]
cmp esi, eax
jae 0x44b882
movzx ecx, byte [esi]
mov ebx, dword [edi + 0x28]
test byte [ecx + ebx], 0x10
je 0x44b882
inc esi
inc edx
cmp edx, dword [ebp - 4]
jl 0x44b86b
cmp dword [ebp - 0x1c], 0
jne 0x4488e0
cmp esi, dword [ebp - 0x14]
jb case.0x448917.108
mov ebx, dword [ebp + 0x28]
inc ebx
push ebx
push 0
push dword [ebp + 0x20]
push dword [ebp + 0x1c]
push edi
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push esi
call fcn.00448894
add esp, 0x24
dec esi
test eax, eax
jne 0x44cb97
cmp esi, dword [ebp - 0x14]
jae 0x44b899
jmp case.0x448917.108
xor eax, eax
mov ah, byte [ebx + 4]
mov al, byte [ebx + 5]
lea eax, [ebx + eax + 3]
cmp byte [eax], 0x53
mov dword [ebp + 0xc], eax
jne 0x44b8ee
xor ecx, ecx
mov ch, byte [eax + 1]
mov cl, byte [eax + 2]
add eax, ecx
cmp byte [eax], 0x53
je 0x44b8dc
mov dword [ebp + 0xc], eax
mov ebx, dword [ebp + 0xc]
xor edx, edx
add ebx, 3
cmp dword [ebp - 8], 0x62
mov dword [ebp + 0xc], ebx
je 0x44bc6c
mov dword [ebp + 0x24], edx
jmp 0x44ba5d
xor eax, eax
mov ah, byte [ebx + 3]
mov al, byte [ebx + 4]
mov dword [ebp - 0xc], eax
add eax, eax
cmp eax, dword [edi + 0x14]
jl 0x44bb75
cmp ecx, 0x60
mov dword [ebp + 0x24], 2
jge 0x44b930
mov dword [ebp + 0x24], edx
xor eax, eax
mov ah, byte [ebx + 1]
mov al, byte [ebx + 2]
cmp byte [eax + ebx], 0x53
mov ebx, dword [ebp + 0xc]
jne 0x44b993
mov eax, dword [ebp + 0x28]
inc eax
push eax
push dword [ebp + 0x24]
movzx eax, byte [ebx]
push dword [ebp + 0x20]
movzx eax, byte [eax + 0x466550]
push dword [ebp + 0x1c]
add eax, ebx
push edi
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push eax
push esi
call fcn.00448894
add esp, 0x24
test eax, eax
je 0x44b97b
cmp eax, 0xfffffc1c
jne 0x44cb97
xor eax, eax
mov ah, byte [ebx + 1]
mov al, byte [ebx + 2]
add ebx, eax
xor eax, eax
mov ah, byte [ebx + 1]
mov al, byte [ebx + 2]
cmp byte [eax + ebx], 0x53
je 0x44b941
cmp dword [ebp + 0x24], 0
jne 0x44bc3c
movzx eax, byte [ebx]
movzx eax, byte [eax + 0x466550]
add ebx, eax
mov dword [ebp + 0xc], ebx
jmp 0x44ba5d
push 2
push dword [ebp + 0x20]
push dword [ebp + 0x1c]
push edi
push eax
push dword [ebp + 0x10]
push dword [ebp + 0x18]
push esi
call fcn.00448894
add esp, 0x24
test eax, eax
jne 0x44cb97
mov eax, dword [ebp - 0x20]
jmp 0x448ca8
mov ecx, dword [ebp + 0x18]
cmp byte [ecx], 0x60
sbb ecx, ecx
and ecx, 0xfffffffe
inc ecx
inc ecx
cmp byte [eax], 0x56
mov dword [ebp + 0x24], ecx
jne 0x44ba2e
mov ebx, dword [ebp + 0x28]
lea eax, [ebx + 1]
push eax
mov eax, dword [ebp + 0xc]
push 0
push dword [ebp + 0x20]
add eax, 3
push dword [ebp - 0x20]
push edi
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push eax
push esi
call fcn.00448894
add esp, 0x24
test eax, eax
jne 0x44cb97
cmp dword [ebp + 0x24], eax
jne 0x44bdf2
mov eax, dword [ebp + 0x18]
mov dword [ebp + 0xc], eax
jmp 0x44ba5d
mov eax, dword [ebp + 0x28]
inc eax
push eax
push ecx
push dword [ebp + 0x20]
push dword [ebp - 0x20]
push edi
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0x18]
push esi
call fcn.00448894
add esp, 0x24
test eax, eax
jne 0x44cb97
add dword [ebp + 0xc], 3
and dword [ebp + 0x24], 0
mov eax, dword [edi + 0x38]
mov dword [ebp - 0x18], eax
mov eax, dword [edi]
cmp eax, dword [edi + 4]
jb 0x4488b7
inc dword [edi]
push 0xfffffffffffffff8
jmp 0x44cb96
push 0xffffffffffffffeb
jmp 0x44cb96
mov eax, dword [ebp + 0x28]
inc eax
push eax
push dword [ebp + 0x24]
movzx eax, byte [ebx]
push dword [ebp + 0x20]
movzx eax, byte [eax + 0x466550]
push dword [ebp + 0x1c]
add eax, ebx
push edi
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push eax
push esi
call fcn.00448894
add esp, 0x24
test eax, eax
jne 0x44cb97
mov eax, 0xfffffc1a
jmp 0x44cb97
mov eax, dword [ebp + 0x28]
inc eax
push eax
push dword [ebp + 0x24]
movzx eax, byte [ebx]
push dword [ebp + 0x20]
movzx eax, byte [eax + 0x466550]
push dword [ebp + 0x1c]
add eax, ebx
push edi
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push eax
push esi
call fcn.00448894
add esp, 0x24
test eax, eax
jne 0x44cb97
mov eax, 0xfffffc19
jmp 0x44cb97
mov eax, dword [ebp + 0x28]
inc eax
push eax
push dword [ebp + 0x24]
movzx eax, byte [ebx]
push dword [ebp + 0x20]
movzx eax, byte [eax + 0x466550]
push dword [ebp + 0x1c]
add eax, ebx
push edi
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push eax
push esi
call fcn.00448894
add esp, 0x24
test eax, eax
jne 0x44cb97
mov dword [edi + 0x5c], esi
mov eax, 0xfffffc1b
jmp 0x44cb97
mov eax, dword [ebp + 0x28]
inc eax
push eax
push dword [ebp + 0x24]
movzx eax, byte [ebx]
push dword [ebp + 0x20]
movzx eax, byte [eax + 0x466550]
push dword [ebp + 0x1c]
add eax, ebx
push edi
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push eax
push esi
call fcn.00448894
add esp, 0x24
test eax, eax
jne 0x44cb97
mov eax, 0xfffffc1c
jmp 0x44cb97
mov ebx, eax
mov eax, dword [edi + 0xc]
shl ebx, 2
mov ecx, dword [eax + ebx]
mov dword [ebp - 0x20], ecx
mov ecx, dword [eax + ebx + 4]
mov dword [ebp - 0x1c], ecx
mov ecx, dword [edi + 0x10]
sub ecx, dword [ebp - 0xc]
lea eax, [eax + ecx*4]
mov ecx, dword [eax]
mov dword [ebp - 0x24], ecx
mov ecx, dword [edi + 0x68]
mov dword [ebp + 0x18], ecx
mov ecx, esi
sub ecx, dword [edi + 0x54]
cmp dword [ebp - 8], 0x61
mov dword [eax], ecx
jne 0x44bbb4
mov dword [ebp + 0x24], 2
jmp 0x44bbb8
and dword [ebp + 0x24], 0
mov eax, dword [ebp + 0x28]
inc eax
mov dword [ebp - 0x10], eax
push dword [ebp - 0x10]
mov eax, dword [ebp + 0xc]
push dword [ebp + 0x24]
movzx ecx, byte [eax]
push dword [ebp + 0x20]
movzx ecx, byte [ecx + 0x466550]
push dword [ebp + 0x1c]
add ecx, eax
push edi
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push ecx
push esi
call fcn.00448894
add esp, 0x24
test eax, eax
je 0x44bbfa
cmp eax, 0xfffffc1c
jne 0x44cb97
mov eax, dword [ebp + 0x18]
mov dword [edi + 0x68], eax
mov eax, dword [ebp + 0xc]
xor ecx, ecx
mov ch, byte [eax + 1]
mov cl, byte [eax + 2]
add eax, ecx
cmp byte [eax], 0x53
mov dword [ebp + 0xc], eax
je 0x44bbbf
mov eax, dword [edi + 0xc]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ebp - 0x24]
mov dword [ebx + eax], ecx
mov eax, dword [edi + 0xc]
mov ecx, dword [ebp - 0x1c]
mov dword [eax + ebx + 4], ecx
mov eax, dword [edi + 0x10]
sub eax, dword [ebp - 0xc]
mov ecx, dword [edi + 0xc]
mov dword [ecx + eax*4], edx
jmp case.0x448917.108
mov eax, dword [ebp + 0x28]
inc eax
push eax
push dword [ebp + 0x24]
movzx eax, byte [ebx]
push dword [ebp + 0x20]
movzx eax, byte [eax + 0x466550]
push dword [ebp + 0x1c]
add eax, ebx
push edi
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push eax
push esi
call fcn.00448894
add esp, 0x24
jmp 0x44cb97
mov eax, dword [ebp + 0x28]
inc eax
push eax
push 2
push dword [ebp + 0x20]
push dword [ebp + 0x1c]
push edi
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push ebx
jmp 0x44bc5e
cmp dword [edi + 0x40], 0
je 0x44bc92
cmp esi, dword [ebp + 0x10]
je case.0x448917.108
mov eax, dword [ebp + 0x14]
mov dword [edi + 0x64], eax
mov eax, dword [ebp + 0x10]
mov dword [edi + 0x5c], eax
mov dword [edi + 0x60], esi
xor eax, eax
inc eax
jmp 0x44cb97
mov eax, dword [edi + 0x50]
xor ecx, ecx
mov ch, byte [ebx + 1]
mov cl, byte [ebx + 2]
add ecx, eax
cmp ecx, eax
mov dword [ebp + 0x18], ecx
jne 0x44bcc3
and dword [ebp - 0x38], 0
jmp 0x44bcce
xor eax, eax
mov ah, byte [ecx + 3]
mov al, byte [ecx + 4]
mov dword [ebp - 0x38], eax
mov eax, dword [edi + 0x78]
mov dword [ebp - 0x3c], eax
lea eax, [ebp - 0x3c]
mov dword [edi + 0x78], eax
mov eax, dword [edi + 0x10]
add ebx, 3
cmp eax, 0x1e
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x28], eax
jg 0x44bcf6
lea ecx, [ebp - 0xec]
mov dword [ebp - 0x2c], ecx
jmp 0x44bd12
shl eax, 2
push eax
call dword [0x47103c]
test eax, eax
pop ecx
mov dword [ebp - 0x2c], eax
jne 0x44bd0f
push 0xfffffffffffffffa
jmp 0x44cb96
mov eax, dword [ebp - 0x28]
shl eax, 2
push eax
push dword [edi + 0xc]
push dword [ebp - 0x2c]
call fcn.00450220
mov eax, dword [ebp + 0x10]
mov ecx, dword [ebp + 0x28]
mov dword [ebp - 0x30], eax
mov eax, dword [ebp + 0x18]
mov al, byte [eax]
add esp, 0xc
cmp al, 0x60
sbb ebx, ebx
and ebx, 0xfffffffe
inc ebx
inc ebx
inc ecx
mov dword [ebp - 0x10], ecx
push dword [ebp - 0x10]
movzx eax, al
movzx eax, byte [eax + 0x466550]
add eax, dword [ebp + 0x18]
push ebx
push dword [ebp + 0x20]
push dword [ebp + 0x1c]
push edi
push dword [ebp + 0x14]
push esi
push eax
push esi
call fcn.00448894
add esp, 0x24
cmp eax, 1
je 0x44bdce
test eax, eax
je 0x44bd79
cmp eax, 0xfffffc1c
jne 0x44cb97
lea eax, [ebp - 0x3c]
mov dword [edi + 0x78], eax
mov eax, dword [ebp - 0x28]
shl eax, 2
push eax
push dword [ebp - 0x2c]
push dword [edi + 0xc]
call fcn.00450220
mov eax, dword [ebp + 0x18]
xor ecx, ecx
mov ch, byte [eax + 1]
add esp, 0xc
mov cl, byte [eax + 2]
add eax, ecx
mov dword [ebp + 0x18], eax
mov al, byte [eax]
cmp al, 0x53
je 0x44bd3f
mov eax, dword [ebp - 0x3c]
mov dword [edi + 0x78], eax
lea eax, [ebp - 0xec]
cmp dword [ebp - 0x2c], eax
je case.0x448917.108
push dword [ebp - 0x2c]
call dword [0x471040]
pop ecx
jmp case.0x448917.108
mov eax, dword [ebp - 0x3c]
mov dword [edi + 0x78], eax
lea eax, [ebp - 0xec]
cmp dword [ebp - 0x2c], eax
je 0x44bca1
push dword [ebp - 0x2c]
call dword [0x471040]
pop ecx
jmp 0x44bca1
inc ebx
push ebx
push dword [ebp + 0x24]
push dword [ebp + 0x20]
push dword [ebp - 0x20]
push edi
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0x18]
jmp 0x44bc5e
mov eax, dword [ebp + 0x14]
mov dword [edi + 0x64], eax
jmp 0x44bc9e
mov eax, dword [ebp - 4]
cmp dword [ebp + 0x18], eax
jge case.0x448917.108
push dword [ebp + 0x1c]
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0xc]
push esi
mov ecx, edi
call fcn.00448836
test eax, eax
pop ecx
pop ecx
je case.0x448917.108
add esi, dword [ebp - 0x10]
inc dword [ebp + 0x18]
push ebx
push 0
push dword [ebp + 0x20]
push dword [ebp + 0x1c]
push edi
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push esi
call fcn.00448894
add esp, 0x24
test eax, eax
je 0x44be17
jmp 0x44cb97
cmp ebx, dword [ebp - 4]
mov dword [ebp - 0x14], esi
jge 0x44be9a
push dword [ebp + 0x1c]
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0xc]
push esi
mov ecx, edi
call fcn.00448836
test eax, eax
pop ecx
pop ecx
je 0x44be91
add esi, dword [ebp - 0x10]
inc ebx
cmp ebx, dword [ebp - 4]
jl 0x44be71
cmp esi, dword [ebp - 0x14]
jb case.0x448917.108
mov ebx, dword [ebp + 0x28]
inc ebx
push ebx
push 0
push dword [ebp + 0x20]
push dword [ebp + 0x1c]
push edi
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push esi
call fcn.00448894
add esp, 0x24
test eax, eax
jne 0x44cb97
sub esi, dword [ebp - 0x10]
cmp esi, dword [ebp - 0x14]
jae 0x44be9e
jmp case.0x448917.108
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jge case.0x448917.108
cmp esi, dword [edi + 0x58]
jae case.0x448917.108
movzx eax, byte [esi]
inc esi
cmp eax, 0xc0
jb 0x44bf2c
mov ecx, eax
and ecx, 0x3f
movzx edx, byte [ecx + 0x466610]
mov ebx, dword [edx*4 + 0x4665f4]
mov ecx, edx
imul ecx, ecx, 6
and ebx, eax
shl ebx, cl
test edx, edx
mov eax, ebx
jle 0x44bf2c
jmp 0x44bf16
mov ecx, dword [ebp - 0x20]
movzx ebx, byte [esi]
sub ecx, 6
and ebx, 0x3f
shl ebx, cl
dec edx
mov dword [ebp - 0x20], ecx
or eax, ebx
inc esi
test edx, edx
jg 0x44bf13
cmp eax, 0xff
jbe 0x44bf39
cmp dword [ebp - 8], 0x4d
jmp 0x44bf4e
mov ecx, eax
xor edx, edx
and ecx, 7
inc edx
shl edx, cl
mov ecx, dword [ebp - 0x1c]
shr eax, 3
mov al, byte [eax + ecx]
test al, dl
je case.0x448917.108
push dword [ebp - 0x10]
inc dword [ebp + 0x18]
push 0
push dword [ebp + 0x20]
push dword [ebp + 0x1c]
push edi
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push esi
call fcn.00448894
add esp, 0x24
test eax, eax
je 0x44becf
jmp 0x44cb97
mov ebx, dword [ebp + 0x28]
inc ebx
jmp 0x44bfbf
mov eax, dword [ebp - 4]
cmp dword [ebp + 0x18], eax
jge case.0x448917.108
cmp esi, dword [edi + 0x58]
jae case.0x448917.108
movzx eax, byte [esi]
mov ecx, eax
xor edx, edx
and ecx, 7
inc edx
shl edx, cl
mov ecx, dword [ebp - 0x1c]
shr eax, 3
mov al, byte [eax + ecx]
inc esi
test al, dl
je case.0x448917.108
inc dword [ebp + 0x18]
push ebx
push 0
push dword [ebp + 0x20]
push dword [ebp + 0x1c]
push edi
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push esi
call fcn.00448894
add esp, 0x24
test eax, eax
je 0x44bf88
jmp 0x44cb97
cmp dword [ebp - 0x18], eax
mov dword [ebp - 0x14], esi
je 0x44c0e2
cmp edx, dword [ebp - 4]
mov dword [ebp + 0x18], edx
jge 0x44c09c
cmp esi, dword [edi + 0x58]
mov dword [ebp - 0x20], 1
jae 0x44c09c
movzx eax, byte [esi]
cmp eax, 0xc0
jb 0x44c066
mov ecx, eax
and ecx, 0x3f
movzx edx, byte [ecx + 0x466610]
mov ebx, dword [edx*4 + 0x4665f4]
mov ecx, edx
imul ecx, ecx, 6
and ebx, eax
shl ebx, cl
cmp edx, 1
mov dword [ebp - 0xc], edx
mov dword [ebp - 0x20], 1
mov eax, ebx
jl 0x44c05f
mov edx, dword [ebp - 0x20]
movzx edx, byte [edx + esi]
and edx, 0x3f
sub ecx, 6
shl edx, cl
or eax, edx
inc dword [ebp - 0x20]
mov edx, dword [ebp - 0xc]
cmp dword [ebp - 0x20], edx
jle 0x44c043
mov ebx, dword [ebp + 0xc]
inc edx
mov dword [ebp - 0x20], edx
cmp eax, 0xff
jbe 0x44c073
cmp dword [ebp - 8], 0x4d
jmp 0x44c088
mov ecx, eax
xor edx, edx
and ecx, 7
inc edx
shl edx, cl
mov ecx, dword [ebp - 0x1c]
shr eax, 3
mov al, byte [eax + ecx]
test al, dl
je 0x44c09c
add esi, dword [ebp - 0x20]
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jl 0x44bffc
mov eax, dword [ebp + 0x28]
inc eax
mov dword [ebp - 0x10], eax
push eax
jmp 0x44c0c0
mov eax, esi
dec esi
cmp eax, dword [ebp - 0x14]
je case.0x448917.108
jmp 0x44c0b5
dec esi
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
je 0x44c0b4
push dword [ebp - 0x10]
push 0
push dword [ebp + 0x20]
push dword [ebp + 0x1c]
push edi
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push ebx
push esi
call fcn.00448894
add esp, 0x24
test eax, eax
je 0x44c0a6
jmp 0x44cb97
cmp edx, dword [ebp - 4]
jge 0x44c116
cmp esi, dword [edi + 0x58]
jae 0x44c10d
movzx eax, byte [esi]
mov ecx, eax
xor ebx, ebx
and ecx, 7
inc ebx
shl ebx, cl
mov ecx, dword [ebp - 0x1c]
shr eax, 3
mov al, byte [eax + ecx]
test al, bl
je 0x44c10d
inc esi
inc edx
cmp edx, dword [ebp - 4]
jl 0x44c0e7
cmp esi, dword [ebp - 0x14]
jb case.0x448917.108
mov ebx, dword [ebp + 0x28]
inc ebx
push ebx
push 0
push dword [ebp + 0x20]
push dword [ebp + 0x1c]
push edi
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push esi
call fcn.00448894
add esp, 0x24
test eax, eax
jne 0x44cb97
dec esi
cmp esi, dword [ebp - 0x14]
jae 0x44c11a
jmp case.0x448917.108
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jge case.0x448917.108
cmp esi, dword [edi + 0x58]
jae case.0x448917.108
movzx eax, byte [esi]
inc esi
cmp eax, 0xc0
mov dword [ebp - 8], eax
jb 0x44c1a0
and eax, 0x3f
movzx eax, byte [eax + 0x466610]
mov edx, dword [eax*4 + 0x4665f4]
and edx, dword [ebp - 8]
mov ecx, eax
imul ecx, ecx, 6
shl edx, cl
mov dword [ebp - 8], edx
jmp 0x44c19c
movzx edx, byte [esi]
sub ecx, 6
and edx, 0x3f
shl edx, cl
dec eax
or dword [ebp - 8], edx
inc esi
test eax, eax
jg 0x44c18c
push dword [ebp - 0x1c]
push dword [ebp - 8]
call fcn.0044da9e
test eax, eax
pop ecx
pop ecx
je case.0x448917.108
push dword [ebp - 0x10]
inc dword [ebp + 0x18]
push 0
push dword [ebp + 0x20]
push dword [ebp + 0x1c]
push edi
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push esi
call fcn.00448894
add esp, 0x24
test eax, eax
je 0x44c149
jmp 0x44cb97
mov dword [ebp - 0x14], esi
mov dword [ebp + 0x18], eax
jmp 0x44c25b
xor ebx, ebx
inc ebx
cmp esi, dword [edi + 0x58]
jae 0x44c260
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x44c244
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x466610]
mov ebx, dword [eax*4 + 0x4665f4]
mov ecx, eax
imul ecx, ecx, 6
and ebx, edx
shl ebx, cl
cmp eax, 1
mov dword [ebp - 0x20], 1
mov edx, ebx
jl 0x44c241
mov ebx, dword [ebp - 0x20]
movzx ebx, byte [ebx + esi]
sub ecx, 6
and ebx, 0x3f
shl ebx, cl
or edx, ebx
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], eax
jle 0x44c228
lea ebx, [eax + 1]
push dword [ebp - 0x1c]
push edx
call fcn.0044da9e
test eax, eax
pop ecx
pop ecx
je 0x44c260
add esi, ebx
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jl 0x44c1eb
mov ebx, dword [ebp + 0x28]
inc ebx
jmp 0x44c283
mov eax, esi
dec esi
cmp eax, dword [ebp - 0x14]
je case.0x448917.108
cmp dword [ebp - 0x18], 0
je 0x44c283
jmp 0x44c27b
dec esi
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
je 0x44c27a
push ebx
push 0
push dword [ebp + 0x20]
push dword [ebp + 0x1c]
push edi
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push esi
call fcn.00448894
add esp, 0x24
test eax, eax
je 0x44c266
jmp 0x44cb97
mov dword [ebp + 0x18], ebx
mov ebx, dword [ebp + 0x28]
inc ebx
jmp 0x44c2e3
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jge case.0x448917.108
cmp esi, dword [edi + 0x58]
jae case.0x448917.108
push dword [ebp - 0x10]
push dword [ebp - 0xc]
push esi
call fcn.0044e9fc
add esp, 0xc
test eax, eax
jne case.0x448917.108
add esi, dword [ebp - 0x10]
inc dword [ebp + 0x18]
push ebx
push 0
push dword [ebp + 0x20]
push dword [ebp + 0x1c]
push edi
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push esi
call fcn.00448894
add esp, 0x24
test eax, eax
je 0x44c2b1
jmp 0x44cb97
cmp esi, dword [ebp - 0x14]
je case.0x448917.108
sub esi, dword [ebp - 0x10]
push ebx
push 0
push dword [ebp + 0x20]
push dword [ebp + 0x1c]
push edi
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push esi
call fcn.00448894
add esp, 0x24
test eax, eax
je 0x44c308
jmp 0x44cb97
mov dword [ebp + 0x18], ebx
mov ebx, dword [ebp + 0x28]
inc ebx
jmp 0x44c36e
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jge case.0x448917.108
cmp esi, dword [edi + 0x58]
jae case.0x448917.108
movzx eax, byte [esi]
mov ecx, dword [edi + 0x24]
movzx eax, byte [eax + ecx]
inc esi
cmp dword [ebp - 8], eax
jne case.0x448917.108
inc dword [ebp + 0x18]
push ebx
push 0
push dword [ebp + 0x20]
push dword [ebp + 0x1c]
push edi
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push esi
call fcn.00448894
add esp, 0x24
test eax, eax
je 0x44c342
jmp 0x44cb97
mov dword [ebp + 0x18], ebx
mov ebx, dword [ebp + 0x28]
inc ebx
jmp 0x44c3c1
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jge case.0x448917.108
cmp esi, dword [edi + 0x58]
jae case.0x448917.108
movzx eax, byte [esi]
inc esi
cmp dword [ebp - 8], eax
jne case.0x448917.108
inc dword [ebp + 0x18]
push ebx
push 0
push dword [ebp + 0x20]
push dword [ebp + 0x1c]
push edi
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push esi
call fcn.00448894
add esp, 0x24
test eax, eax
je 0x44c39c
jmp 0x44cb97
cmp dword [ebp - 0x18], ecx
mov dword [ebp + 0x18], edx
je 0x44c4af
mov eax, dword [ebp + 0x28]
inc eax
push eax
push 0
push dword [ebp + 0x20]
mov dword [ebp - 0x10], eax
push dword [ebp + 0x1c]
push edi
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push ebx
jmp 0x44c499
movzx edx, byte [esi]
inc esi
cmp edx, 0xc0
jb 0x44c454
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x466610]
mov ebx, dword [eax*4 + 0x4665f4]
mov ecx, eax
imul ecx, ecx, 6
and ebx, edx
shl ebx, cl
mov edx, ebx
jmp 0x44c44d
movzx ebx, byte [esi]
mov edx, dword [ebp - 0x20]
sub ecx, 6
and ebx, 0x3f
shl ebx, cl
dec eax
or edx, ebx
inc esi
test eax, eax
mov dword [ebp - 0x20], edx
jg 0x44c43b
cmp edx, 0x100
jae 0x44c463
mov eax, dword [edi + 0x24]
movzx edx, byte [eax + edx]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jge case.0x448917.108
cmp esi, dword [edi + 0x58]
jae case.0x448917.108
cmp dword [ebp - 8], edx
je case.0x448917.108
push dword [ebp - 0x10]
inc dword [ebp + 0x18]
push 0
push dword [ebp + 0x20]
push dword [ebp + 0x1c]
push edi
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push esi
call fcn.00448894
add esp, 0x24
test eax, eax
je 0x44c40f
jmp 0x44cb97
mov ebx, dword [ebp + 0x28]
inc ebx
jmp 0x44c4e1
mov eax, dword [ebp - 4]
cmp dword [ebp + 0x18], eax
jge case.0x448917.108
cmp esi, dword [edi + 0x58]
jae case.0x448917.108
movzx eax, byte [esi]
mov ecx, dword [edi + 0x24]
movzx eax, byte [eax + ecx]
inc esi
cmp dword [ebp - 8], eax
je case.0x448917.108
inc dword [ebp + 0x18]
push ebx
push 0
push dword [ebp + 0x20]
push dword [ebp + 0x1c]
push edi
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push esi
call fcn.00448894
add esp, 0x24
test eax, eax
je 0x44c4b5
jmp 0x44cb97
mov eax, esi
dec esi
cmp eax, dword [ebp - 0x14]
je case.0x448917.108
jmp 0x44c515
dec esi
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
je 0x44c514
push dword [ebp - 0x10]
push 0
push dword [ebp + 0x20]
push dword [ebp + 0x1c]
push edi
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push ebx
push esi
call fcn.00448894
add esp, 0x24
test eax, eax
je 0x44c506
jmp 0x44cb97
cmp dword [ebp - 0x18], ecx
mov dword [ebp + 0x18], edx
je 0x44c5f8
mov eax, dword [ebp + 0x28]
inc eax
push eax
push ecx
push dword [ebp + 0x20]
mov dword [ebp - 0x10], eax
push dword [ebp + 0x1c]
push edi
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push ebx
jmp 0x44c5e2
movzx edx, byte [esi]
inc esi
cmp edx, 0xc0
jb 0x44c5ac
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x466610]
mov ebx, dword [eax*4 + 0x4665f4]
mov ecx, eax
imul ecx, ecx, 6
and ebx, edx
shl ebx, cl
mov edx, ebx
jmp 0x44c5a5
movzx ebx, byte [esi]
mov edx, dword [ebp - 0x20]
sub ecx, 6
and ebx, 0x3f
shl ebx, cl
dec eax
or edx, ebx
inc esi
test eax, eax
mov dword [ebp - 0x20], edx
jg 0x44c593
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jge case.0x448917.108
cmp esi, dword [edi + 0x58]
jae case.0x448917.108
cmp dword [ebp - 8], edx
je case.0x448917.108
push dword [ebp - 0x10]
inc dword [ebp + 0x18]
push 0
push dword [ebp + 0x20]
push dword [ebp + 0x1c]
push edi
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push esi
call fcn.00448894
add esp, 0x24
test eax, eax
je 0x44c567
jmp 0x44cb97
mov ebx, dword [ebp + 0x28]
inc ebx
push ebx
push ecx
jmp 0x44c628
mov eax, dword [ebp - 4]
cmp dword [ebp + 0x18], eax
jge case.0x448917.108
cmp esi, dword [edi + 0x58]
jae case.0x448917.108
movzx eax, byte [esi]
inc esi
cmp dword [ebp - 8], eax
je case.0x448917.108
inc dword [ebp + 0x18]
push ebx
push 0
push dword [ebp + 0x20]
push dword [ebp + 0x1c]
push edi
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push esi
call fcn.00448894
add esp, 0x24
test eax, eax
je 0x44c600
jmp 0x44cb97
mov eax, esi
dec esi
cmp eax, dword [ebp - 0x14]
je case.0x448917.108
jmp 0x44c659
dec esi
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
je 0x44c658
push dword [ebp - 0x10]
push 0
push dword [ebp + 0x20]
push dword [ebp + 0x1c]
push edi
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push ebx
push esi
call fcn.00448894
add esp, 0x24
test eax, eax
je 0x44c64a
jmp 0x44cb97
push 0xfffffffffffffff2
jmp 0x44cb96
cmp dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x14]
mov dword [ebp + 0x18], eax
mov eax, dword [ebp + 0x28]
je 0x44c9cb
inc eax
push eax
push 0
push dword [ebp + 0x20]
mov dword [ebp - 0x10], eax
push dword [ebp + 0x1c]
push edi
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push ebx
push esi
call fcn.00448894
add esp, 0x24
test eax, eax
jne 0x44cb97
mov ebx, 0x100
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jge case.0x448917.108
mov eax, dword [edi + 0x58]
cmp esi, eax
jae case.0x448917.108
cmp dword [ebp - 0xc], 0xc
jne 0x44c735
test byte [ebp + 0x1c], 4
jne 0x44c735
mov ecx, dword [edi + 0x18]
test ecx, ecx
je 0x44c710
push dword [ebp - 0x18]
lea edx, [edi + 0x1c]
push edx
push eax
push ecx
push esi
call fcn.0044d6b0
add esp, 0x14
test eax, eax
jne case.0x448917.108
jmp 0x44c735
mov ecx, dword [edi + 0x1c]
sub eax, ecx
cmp esi, eax
ja 0x44c735
mov al, byte [esi]
cmp al, byte [edi + 0x20]
jne 0x44c735
cmp ecx, 1
je case.0x448917.108
mov al, byte [esi + 1]
cmp al, byte [edi + 0x21]
je case.0x448917.108
movzx eax, byte [esi]
inc esi
cmp eax, 0xc0
jb 0x44c782
mov ecx, eax
and ecx, 0x3f
movzx edx, byte [ecx + 0x466610]
mov ebx, dword [edx*4 + 0x4665f4]
mov ecx, edx
imul ecx, ecx, 6
and ebx, eax
shl ebx, cl
test edx, edx
mov eax, ebx
jle 0x44c77d
jmp 0x44c767
mov ecx, dword [ebp - 0x20]
movzx ebx, byte [esi]
sub ecx, 6
and ebx, 0x3f
shl ebx, cl
dec edx
mov dword [ebp - 0x20], ecx
or eax, ebx
inc esi
test edx, edx
jg 0x44c764
mov ebx, 0x100
mov ecx, dword [ebp - 0xc]
add ecx, 0xfffffffa
cmp ecx, 0xe
ja case.0x44ca4c.14
jmp dword [ecx*4 + 0x44ce10]
cmp eax, 0xa
je case.0x44c791.12
jbe case.0x448917.108
cmp eax, 0xc
jbe 0x44c7ce
cmp eax, 0xd
je 0x44c7dd
cmp eax, 0x85
je 0x44c7ce
cmp eax, 0x2027
jbe case.0x448917.108
cmp eax, 0x2029
ja case.0x448917.108
cmp dword [edi + 0x4c], 0
jne case.0x448917.108
jmp case.0x44c791.12
cmp esi, dword [edi + 0x58]
jae case.0x44c791.12
cmp byte [esi], 0xa
jne case.0x44c791.12
inc esi
jmp case.0x44c791.12
mov ecx, 0x180e
cmp eax, ecx
ja 0x44c82b
je case.0x448917.108
cmp eax, 9
je case.0x448917.108
cmp eax, 0x20
je case.0x448917.108
cmp eax, 0xa0
je case.0x448917.108
cmp eax, 0x1680
jmp 0x44c997
cmp eax, 0x2000
jb case.0x44c791.12
cmp eax, 0x200a
jbe case.0x448917.108
cmp eax, 0x202f
je case.0x448917.108
cmp eax, 0x205f
je case.0x448917.108
cmp eax, 0x3000
jmp 0x44c997
mov ecx, 0x180e
cmp eax, ecx
ja 0x44c897
je case.0x44c791.12
cmp eax, 9
je case.0x44c791.12
cmp eax, 0x20
je case.0x44c791.12
cmp eax, 0xa0
je case.0x44c791.12
cmp eax, 0x1680
jmp 0x44c7d2
cmp eax, 0x2000
jb case.0x448917.108
cmp eax, 0x200a
jbe case.0x44c791.12
cmp eax, 0x202f
je case.0x44c791.12
cmp eax, 0x205f
je case.0x44c791.12
cmp eax, 0x3000
jmp 0x44c7d2
cmp eax, 0xa
jb case.0x44c791.12
cmp eax, 0xd
jbe case.0x448917.108
cmp eax, 0x85
je case.0x448917.108
cmp eax, 0x2027
jbe case.0x44c791.12
cmp eax, 0x2029
jbe case.0x448917.108
jmp case.0x44c791.12
cmp eax, 0xa
jb case.0x448917.108
cmp eax, 0xd
jbe case.0x44c791.12
cmp eax, 0x85
je case.0x44c791.12
cmp eax, 0x2027
jbe case.0x448917.108
cmp eax, 0x2029
ja case.0x448917.108
jmp case.0x44c791.12
cmp eax, ebx
jae case.0x44c791.12
mov ecx, dword [edi + 0x28]
test byte [eax + ecx], 4
jmp 0x44c7d2
cmp eax, ebx
jae case.0x448917.108
mov ecx, dword [edi + 0x28]
test byte [eax + ecx], 4
jmp 0x44c997
cmp eax, ebx
jae case.0x44c791.12
mov ecx, dword [edi + 0x28]
test byte [eax + ecx], 1
jmp 0x44c7d2
cmp eax, ebx
jae case.0x448917.108
mov ecx, dword [edi + 0x28]
test byte [eax + ecx], 1
jmp 0x44c997
cmp eax, ebx
jae case.0x44c791.12
mov ecx, dword [edi + 0x28]
test byte [eax + ecx], 0x10
jmp 0x44c7d2
cmp eax, ebx
jae case.0x448917.108
mov ecx, dword [edi + 0x28]
test byte [eax + ecx], 0x10
je case.0x448917.108
push dword [ebp - 0x10]
inc dword [ebp + 0x18]
push 0
push dword [ebp + 0x20]
push dword [ebp + 0x1c]
push edi
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push esi
call fcn.00448894
add esp, 0x24
test eax, eax
je 0x44c6ca
jmp 0x44cb97
inc eax
mov dword [ebp - 0x10], eax
push eax
jmp 0x44cb38
mov eax, dword [ebp - 4]
cmp dword [ebp + 0x18], eax
jge case.0x448917.108
mov eax, dword [edi + 0x58]
cmp esi, eax
jae case.0x448917.108
test byte [ebp + 0x1c], 4
jne 0x44ca39
mov ecx, dword [edi + 0x18]
test ecx, ecx
je 0x44ca14
push 0
lea edx, [edi + 0x1c]
push edx
push eax
push ecx
push esi
call fcn.0044d6b0
add esp, 0x14
test eax, eax
jne case.0x448917.108
jmp 0x44ca39
mov ecx, dword [edi + 0x1c]
sub eax, ecx
cmp esi, eax
ja 0x44ca39
mov al, byte [esi]
cmp al, byte [edi + 0x20]
jne 0x44ca39
cmp ecx, 1
je case.0x448917.108
mov al, byte [esi + 1]
cmp al, byte [edi + 0x21]
je case.0x448917.108
mov ecx, dword [ebp - 0xc]
movzx eax, byte [esi]
add ecx, 0xfffffffa
inc esi
cmp ecx, 0xe
ja case.0x44ca4c.14
jmp dword [ecx*4 + 0x44ce4c]
cmp eax, 0xa
je case.0x44ca4c.12
jbe case.0x448917.108
cmp eax, 0xc
jbe 0x44ca77
cmp eax, 0xd
je 0x44ca86
cmp eax, 0x85
jne case.0x448917.108
cmp dword [edi + 0x4c], 0
jne case.0x448917.108
jmp case.0x44ca4c.12
cmp esi, dword [edi + 0x58]
jae case.0x44ca4c.12
cmp byte [esi], 0xa
jne case.0x44ca4c.12
inc esi
jmp case.0x44ca4c.12
cmp eax, 9
je case.0x448917.108
cmp eax, 0x20
je case.0x448917.108
cmp eax, 0xa0
jmp 0x44cb2c
cmp eax, 9
je case.0x44ca4c.12
cmp eax, 0x20
je case.0x44ca4c.12
cmp eax, 0xa0
jmp 0x44ca7b
cmp eax, 0xa
jb case.0x44ca4c.12
cmp eax, 0xd
jbe case.0x448917.108
cmp eax, 0x85
jmp 0x44cb2c
cmp eax, 0xa
jb case.0x448917.108
cmp eax, 0xd
jbe case.0x44ca4c.12
cmp eax, 0x85
jmp 0x44ca7b
mov ecx, dword [edi + 0x28]
test byte [eax + ecx], 4
jmp 0x44ca7b
mov ecx, dword [edi + 0x28]
test byte [eax + ecx], 4
jmp 0x44cb2c
mov ecx, dword [edi + 0x28]
test byte [eax + ecx], 1
jmp 0x44ca7b
mov ecx, dword [edi + 0x28]
test byte [eax + ecx], 1
jmp 0x44cb2c
mov ecx, dword [edi + 0x28]
test byte [eax + ecx], 0x10
jmp 0x44ca7b
mov ecx, dword [edi + 0x28]
test byte [eax + ecx], 0x10
je case.0x448917.108
inc dword [ebp + 0x18]
push dword [ebp - 0x10]
push 0
push dword [ebp + 0x20]
push dword [ebp + 0x1c]
push edi
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push ebx
push esi
call fcn.00448894
add esp, 0x24
test eax, eax
je 0x44c9d5
jmp 0x44cb97
mov eax, esi
dec esi
cmp eax, dword [ebp - 0x14]
je case.0x448917.108
jmp 0x44cb6a
dec esi
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
je 0x44cb69
push ebx
push 0
push dword [ebp + 0x20]
push dword [ebp + 0x1c]
push edi
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push esi
call fcn.00448894
add esp, 0x24
test eax, eax
je 0x44cb5b
jmp 0x44cb97
push 0xfffffffffffffffb
pop eax
pop edi
pop esi
pop ebx
leave
ret