Function at 0x449dc3
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 0x44cf9d
mov esi, dword [ebp + 8]
mov eax, dword [ebp + 0x28]
inc dword [edi]
cmp eax, dword [edi + 8]
jae 0x44cfa6
test byte [ebp + 0x24], 2
mov eax, dword [ebp + 0x1c]
mov dword [ebp - 0x20], eax
je 0x449e0f
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 0x449e36
cmp esi, dword [edi + 0x58]
jb 0x449e36
cmp esi, dword [ebp + 0x10]
jbe 0x449e36
mov dword [edi + 0x48], 1
cmp ecx, 0x6d
ja case.0x449e46.14
movzx eax, byte [ecx + 0x44e1df]
jmp dword [eax*4 + 0x44e0cb]
lea eax, [ebx + 3]
mov cl, byte [eax]
cmp cl, 0x64
jne 0x449e81
mov eax, dword [edi + 0x78]
xor ecx, ecx
cmp eax, edx
mov ch, byte [ebx + 4]
mov cl, byte [ebx + 5]
je 0x449e73
cmp ecx, 0xffff
je 0x449e9d
cmp ecx, dword [eax + 4]
je 0x449e9d
xor ecx, ecx
xor eax, eax
mov ah, byte [ebx + 1]
mov al, byte [ebx + 2]
add ebx, eax
jmp 0x449ef9
cmp cl, 0x63
jne 0x449ea5
xor eax, eax
mov ah, byte [ebx + 4]
mov al, byte [ebx + 5]
add eax, eax
cmp eax, dword [ebp + 0x14]
jge 0x449e73
mov ecx, dword [edi + 0xc]
cmp dword [ecx + eax*4], edx
jl 0x449e73
xor ecx, ecx
push 3
inc ecx
pop eax
jmp 0x449e7d
cmp cl, 0x65
jne 0x449eb6
xor eax, eax
mov ah, byte [ebx + 1]
mov al, byte [ebx + 2]
add ebx, eax
jmp 0x449f01
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.00449dc3
add esp, 0x24
cmp eax, 1
je 0x44cdf7
test eax, eax
je 0x449eeb
cmp eax, 0xfffffc1c
jne 0x44e0c6
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 0x44ce22
cmp byte [ebx], 0x53
je 0x44ce22
jmp 0x44a036
mov ebx, dword [edi + 0x78]
test ebx, ebx
je 0x44d1b2
cmp dword [ebx + 4], 0
jne 0x44d1b2
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.00452e30
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 0x449e0f
movzx eax, byte [ebx + 1]
mov dword [ebp + 0x1c], eax
inc ebx
inc ebx
jmp 0x44a039
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.00449dc3
add esp, 0x24
cmp eax, 1
je 0x449fae
test eax, eax
je 0x449f9f
cmp eax, 0xfffffc1c
jne 0x44e0c6
xor eax, eax
mov ah, byte [ebx + 1]
mov al, byte [ebx + 2]
add ebx, eax
cmp byte [ebx], 0x53
je 0x449f6d
cmp byte [ebx], 0x54
je case.0x449e46.108
test byte [ebp + 0x24], 1
jne 0x44d1d0
xor eax, eax
mov ah, byte [ebx + 1]
mov al, byte [ebx + 2]
add ebx, eax
cmp byte [ebx], 0x53
je 0x449fc1
mov eax, dword [edi + 0x64]
add ebx, 3
mov dword [ebp + 0xc], ebx
mov dword [ebp + 0x14], eax
jmp 0x449e0f
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.00449dc3
add esp, 0x24
cmp eax, 1
je case.0x449e46.108
test eax, eax
je 0x44a01d
cmp eax, 0xfffffc1c
jne 0x44e0c6
xor eax, eax
mov ah, byte [ebx + 1]
mov al, byte [ebx + 2]
add ebx, eax
cmp byte [ebx], 0x53
je 0x449feb
test byte [ebp + 0x24], 1
jne 0x44d1d0
add ebx, 3
mov dword [ebp + 0xc], ebx
jmp 0x449e0f
xor eax, eax
cmp dword [ebp - 0x18], edx
mov ah, byte [ebx + 1]
mov al, byte [ebx + 2]
je 0x44a073
cmp eax, edx
jle 0x44a036
mov ecx, dword [edi + 0x54]
dec eax
dec esi
cmp esi, ecx
jae 0x44a063
xor eax, eax
jmp 0x44e0c6
dec esi
mov dl, byte [esi]
and dl, 0xc0
cmp dl, 0x80
je 0x44a062
test eax, eax
jg 0x44a055
jmp 0x44a036
sub esi, eax
cmp esi, dword [edi + 0x54]
jb case.0x449e46.108
jmp 0x44a036
mov ecx, dword [0x4749c0]
cmp ecx, edx
je 0x44a0f9
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.0x449e46.108
jl 0x44e0c6
add ebx, 6
jmp 0x44a039
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.00449dc3
add esp, 0x24
cmp eax, 1
je 0x44a153
test eax, eax
je 0x44a144
cmp eax, 0xfffffc1c
jne 0x44e0c6
xor eax, eax
mov ah, byte [ebx + 1]
mov al, byte [ebx + 2]
add ebx, eax
cmp byte [ebx], 0x53
je 0x44a111
mov al, byte [ebx]
cmp al, 0x5c
je 0x44a161
cmp al, 0x53
jne case.0x449e46.108
xor eax, eax
mov ah, byte [ebx + 1]
mov al, byte [ebx + 2]
add ebx, eax
cmp byte [ebx], 0x53
je 0x44a161
cmp byte [ebx], 0x54
mov eax, dword [edi + 0x64]
mov esi, dword [edi + 0x60]
mov dword [ebp + 0x14], eax
je 0x44a036
cmp esi, dword [ebp - 0x1c]
je 0x44a036
lea ecx, [ebx + 3]
cmp byte [ecx], 0x18
mov dword [ebp - 0x20], ecx
jne 0x44a1a5
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 0x44cee0
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.00449dc3
add esp, 0x24
test eax, eax
jne 0x44e0c6
mov eax, dword [ebp + 0x18]
mov dword [ebp + 0xc], eax
jmp 0x44cf88
xor eax, eax
mov ah, byte [ebx + 1]
mov al, byte [ebx + 2]
add ebx, eax
cmp byte [ebx], 0x53
je case.0x449e46.83
jmp 0x44a039
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.00449dc3
add esp, 0x24
test eax, eax
jne 0x44e0c6
xor eax, eax
mov ah, byte [ebx + 1]
mov al, byte [ebx + 2]
add ebx, eax
cmp byte [ebx], 0x53
je 0x44a21d
jmp 0x44a036
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 0x44a234
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.00449dc3
add esp, 0x24
test eax, eax
jne 0x44e0c6
jmp 0x44a039
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 0x44a28f
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 0x44d33b
cmp al, 0x58
je 0x44d33b
cmp al, 0x59
je 0x44d33b
cmp al, 0x5a
je 0x44d33b
cmp al, 0x5c
je 0x44d33b
cmp al, 0x5e
je 0x44a2c9
cmp al, 0x61
jne 0x44a34d
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 0x44a2e8
mov dword [edi + 0x2c], 1
jmp 0x44a310
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 0x44a310
add ecx, 2
mov dword [ebp + 0x14], ecx
mov ebx, dword [edi + 0x78]
test ebx, ebx
je 0x44a34d
cmp dword [ebx + 4], edx
jne 0x44a34d
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.0044f8e0
mov eax, dword [ebx + 8]
mov dword [ebp + 0xc], eax
mov eax, dword [ebp - 0x20]
add esp, 0xc
mov dword [ebp + 0x1c], eax
jmp 0x449e0f
mov eax, dword [ebp - 0x20]
mov dword [ebp + 0x1c], eax
mov eax, dword [ebp + 0xc]
cmp byte [eax], 0x54
je 0x44a364
cmp esi, dword [ebp - 0x1c]
jne 0x44cf09
add eax, 3
jmp 0x449f4d
cmp dword [edi + 0x30], edx
je 0x44a37a
cmp esi, dword [edi + 0x54]
je case.0x449e46.108
test byte [ebp + 0x1c], 2
je case.0x449e46.1
mov ecx, dword [edi + 0x54]
cmp esi, ecx
je 0x44a3e8
cmp esi, dword [edi + 0x58]
je case.0x449e46.108
mov eax, dword [edi + 0x18]
test eax, eax
je 0x44a3bb
cmp esi, ecx
jbe case.0x449e46.108
push dword [ebp - 0x18]
lea edx, [edi + 0x1c]
push edx
push ecx
push eax
push esi
call fcn.0044ecee
add esp, 0x14
test eax, eax
je case.0x449e46.108
jmp 0x44a3e8
mov eax, dword [edi + 0x1c]
add ecx, eax
cmp esi, ecx
jb case.0x449e46.108
mov ecx, esi
sub ecx, eax
mov dl, byte [ecx]
cmp dl, byte [edi + 0x20]
jne case.0x449e46.108
cmp eax, 1
je 0x44a3e8
mov al, byte [ecx + 1]
cmp al, byte [edi + 0x21]
jne case.0x449e46.108
inc ebx
jmp 0x44a039
cmp esi, dword [edi + 0x54]
jmp 0x44a3e2
mov eax, dword [edi + 0x6c]
add eax, dword [edi + 0x54]
cmp esi, eax
jmp 0x44a3e2
mov dword [ebp + 0x10], esi
jmp 0x44a3e8
test byte [ebp + 0x1c], 2
je 0x44a44e
mov eax, dword [edi + 0x58]
cmp esi, eax
jae 0x44a449
mov ecx, dword [edi + 0x18]
test ecx, ecx
je 0x44a427
push dword [ebp - 0x18]
lea edx, [edi + 0x1c]
push edx
push eax
push ecx
push esi
call fcn.0044ec23
jmp 0x44a3ae
mov ecx, dword [edi + 0x1c]
sub eax, ecx
cmp esi, eax
ja case.0x449e46.108
mov al, byte [esi]
cmp al, byte [edi + 0x20]
jne case.0x449e46.108
cmp ecx, 1
je 0x44a3e8
mov al, byte [esi + 1]
jmp 0x44a3df
cmp dword [edi + 0x34], edx
jmp 0x44a3e2
cmp dword [edi + 0x34], edx
jne case.0x449e46.108
cmp dword [edi + 0x3c], edx
jne case.0x449e46.23
mov eax, dword [edi + 0x58]
cmp esi, eax
je 0x44a4c6
mov ecx, dword [edi + 0x18]
test ecx, ecx
je 0x44a48e
cmp esi, eax
jae case.0x449e46.108
push dword [ebp - 0x18]
lea ebx, [edi + 0x1c]
push ebx
push eax
push ecx
push esi
call fcn.0044ec23
add esp, 0x14
test eax, eax
je case.0x449e46.108
jmp 0x44a4b9
lea ebx, [edi + 0x1c]
mov ecx, dword [ebx]
sub eax, ecx
cmp esi, eax
ja case.0x449e46.108
mov al, byte [esi]
cmp al, byte [edi + 0x20]
jne case.0x449e46.108
cmp ecx, 1
je 0x44a4b9
mov al, byte [esi + 1]
cmp al, byte [edi + 0x21]
jne case.0x449e46.108
mov eax, dword [edi + 0x58]
sub eax, dword [ebx]
cmp esi, eax
jne case.0x449e46.108
inc dword [ebp + 0xc]
jmp 0x449e0f
cmp esi, dword [edi + 0x58]
jb case.0x449e46.108
jmp 0x44a3e8
cmp dword [ebp - 0x18], edx
je 0x44a5f1
cmp esi, dword [edi + 0x54]
jne 0x44a4f2
mov dword [ebp + 0x18], edx
jmp 0x44a57b
lea eax, [esi - 1]
jmp 0x44a4f8
dec eax
mov cl, byte [eax]
and cl, 0xc0
cmp cl, 0x80
je 0x44a4f7
movzx edx, byte [eax]
cmp edx, 0xc0
jb 0x44a55d
mov ecx, edx
and ecx, 0x3f
movzx ebx, byte [ecx + 0x467660]
mov ecx, ebx
imul ecx, ecx, 6
mov dword [ebp - 0xc], ebx
mov ebx, dword [ebx*4 + 0x467644]
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 0x44a55a
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 0x44a53c
mov edx, dword [ebp - 8]
mov ebx, dword [ebp + 0xc]
cmp edx, 0x100
jae 0x44a577
mov eax, dword [edi + 0x28]
test byte [edx + eax], 0x10
je 0x44a577
mov dword [ebp + 0x18], 1
jmp 0x44a57b
and dword [ebp + 0x18], 0
cmp esi, dword [edi + 0x58]
jb 0x44a584
xor eax, eax
jmp 0x44a5ed
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x44a5d2
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x467660]
mov ebx, dword [eax*4 + 0x467644]
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 0x44a5d2
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 0x44a5b9
cmp edx, 0x100
jae 0x44a5e8
mov eax, dword [edi + 0x28]
test byte [edx + eax], 0x10
je 0x44a5e8
xor eax, eax
inc eax
jmp 0x44a5ea
xor eax, eax
mov ebx, dword [ebp + 0xc]
xor edx, edx
jmp 0x44a625
cmp esi, dword [edi + 0x54]
je 0x44a60a
movzx eax, byte [esi - 1]
mov ecx, dword [edi + 0x28]
test byte [eax + ecx], 0x10
mov dword [ebp + 0x18], 1
jne 0x44a60d
mov dword [ebp + 0x18], edx
cmp esi, dword [edi + 0x58]
jae 0x44a623
movzx eax, byte [esi]
mov ecx, dword [edi + 0x28]
test byte [eax + ecx], 0x10
je 0x44a623
xor eax, eax
inc eax
jmp 0x44a625
xor eax, eax
mov cl, byte [ebx]
inc ebx
cmp cl, 5
mov dword [ebp + 0xc], ebx
jne 0x44a63a
xor ecx, ecx
cmp eax, dword [ebp + 0x18]
sete cl
jmp 0x44a642
xor ecx, ecx
cmp eax, dword [ebp + 0x18]
setne cl
mov eax, ecx
cmp eax, edx
je 0x449e0f
jmp case.0x449e46.108
test byte [ebp + 0x1c], 4
jne 0x44a6a9
mov ecx, dword [edi + 0x18]
test ecx, ecx
je 0x44a681
mov eax, dword [edi + 0x58]
cmp esi, eax
jae 0x44a6a9
push dword [ebp - 0x18]
lea edx, [edi + 0x1c]
push edx
push eax
push ecx
push esi
call fcn.0044ec23
add esp, 0x14
test eax, eax
jne case.0x449e46.108
jmp 0x44a6a9
mov eax, dword [edi + 0x1c]
mov ecx, dword [edi + 0x58]
sub ecx, eax
cmp esi, ecx
ja 0x44a6a9
mov cl, byte [esi]
cmp cl, byte [edi + 0x20]
jne 0x44a6a9
cmp eax, 1
je case.0x449e46.108
mov al, byte [esi + 1]
cmp al, byte [edi + 0x21]
je case.0x449e46.108
mov eax, dword [edi + 0x58]
mov ecx, esi
inc esi
cmp ecx, eax
jae case.0x449e46.108
cmp dword [ebp - 0x18], 0
je 0x44a3e8
cmp esi, eax
jae 0x44a3e8
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x44a3e8
inc esi
cmp esi, dword [edi + 0x58]
jb 0x44a6c9
jmp 0x44a3e8
mov eax, esi
inc esi
cmp eax, dword [edi + 0x58]
jae case.0x449e46.108
jmp 0x44a3e8
cmp esi, dword [edi + 0x58]
jae case.0x449e46.108
movzx edx, byte [esi]
inc esi
cmp dword [ebp - 0x18], 0
je 0x44a745
cmp edx, 0xc0
jb 0x44a745
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x467660]
mov ebx, dword [eax*4 + 0x467644]
mov ecx, eax
imul ecx, ecx, 6
and ebx, edx
shl ebx, cl
mov edx, ebx
jmp 0x44a73e
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 0x44a72c
cmp edx, 0x100
jae 0x44a4c6
mov eax, dword [edi + 0x28]
test byte [edx + eax], 4
jmp 0x44a4c0
cmp esi, dword [edi + 0x58]
jae case.0x449e46.108
movzx edx, byte [esi]
inc esi
cmp dword [ebp - 0x18], 0
je 0x44a7b1
cmp edx, 0xc0
jb 0x44a7b1
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x467660]
mov ebx, dword [eax*4 + 0x467644]
mov ecx, eax
imul ecx, ecx, 6
and ebx, edx
shl ebx, cl
mov edx, ebx
jmp 0x44a7aa
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 0x44a798
cmp edx, 0x100
jae case.0x449e46.108
mov eax, dword [edi + 0x28]
test byte [edx + eax], 4
je case.0x449e46.108
jmp 0x44a4c6
cmp esi, dword [edi + 0x58]
jae case.0x449e46.108
movzx edx, byte [esi]
inc esi
cmp dword [ebp - 0x18], 0
je 0x44a823
cmp edx, 0xc0
jb 0x44a823
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x467660]
mov ebx, dword [eax*4 + 0x467644]
mov ecx, eax
imul ecx, ecx, 6
and ebx, edx
shl ebx, cl
mov edx, ebx
jmp 0x44a81c
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 0x44a80a
cmp edx, 0x100
jae 0x44a4c6
mov eax, dword [edi + 0x28]
test byte [edx + eax], 1
jmp 0x44a4c0
cmp esi, dword [edi + 0x58]
jae case.0x449e46.108
movzx edx, byte [esi]
inc esi
cmp dword [ebp - 0x18], 0
je 0x44a88f
cmp edx, 0xc0
jb 0x44a88f
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x467660]
mov ebx, dword [eax*4 + 0x467644]
mov ecx, eax
imul ecx, ecx, 6
and ebx, edx
shl ebx, cl
mov edx, ebx
jmp 0x44a888
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 0x44a876
cmp edx, 0x100
jae case.0x449e46.108
mov eax, dword [edi + 0x28]
test byte [edx + eax], 1
jmp 0x44a7c4
cmp esi, dword [edi + 0x58]
jae case.0x449e46.108
movzx edx, byte [esi]
inc esi
cmp dword [ebp - 0x18], 0
je 0x44a8fb
cmp edx, 0xc0
jb 0x44a8fb
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x467660]
mov ebx, dword [eax*4 + 0x467644]
mov ecx, eax
imul ecx, ecx, 6
and ebx, edx
shl ebx, cl
mov edx, ebx
jmp 0x44a8f4
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 0x44a8e2
cmp edx, 0x100
jae 0x44a4c6
mov eax, dword [edi + 0x28]
test byte [edx + eax], 0x10
jmp 0x44a4c0
cmp esi, dword [edi + 0x58]
jae case.0x449e46.108
movzx edx, byte [esi]
inc esi
cmp dword [ebp - 0x18], 0
je 0x44a967
cmp edx, 0xc0
jb 0x44a967
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x467660]
mov ebx, dword [eax*4 + 0x467644]
mov ecx, eax
imul ecx, ecx, 6
and ebx, edx
shl ebx, cl
mov edx, ebx
jmp 0x44a960
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 0x44a94e
cmp edx, 0x100
jae case.0x449e46.108
mov eax, dword [edi + 0x28]
test byte [edx + eax], 0x10
jmp 0x44a7c4
cmp esi, dword [edi + 0x58]
jae case.0x449e46.108
movzx edx, byte [esi]
inc esi
cmp dword [ebp - 0x18], 0
je 0x44a9d3
cmp edx, 0xc0
jb 0x44a9d3
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x467660]
mov ebx, dword [eax*4 + 0x467644]
mov ecx, eax
imul ecx, ecx, 6
and ebx, edx
shl ebx, cl
mov edx, ebx
jmp 0x44a9cc
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 0x44a9ba
cmp edx, 0xa
je 0x44a4c6
jbe case.0x449e46.108
cmp edx, 0xc
jbe 0x44aa0c
cmp edx, 0xd
je 0x44aa15
cmp edx, 0x85
je 0x44aa0c
cmp edx, 0x2027
jbe case.0x449e46.108
cmp edx, 0x2029
ja case.0x449e46.108
cmp dword [edi + 0x4c], 0
jmp 0x44a4c0
cmp esi, dword [edi + 0x58]
jae 0x44a4c6
cmp byte [esi], 0xa
jne 0x44a4c6
inc esi
jmp 0x44a4c6
cmp esi, dword [edi + 0x58]
jae case.0x449e46.108
movzx eax, byte [esi]
inc esi
cmp dword [ebp - 0x18], edx
je 0x44aa83
cmp eax, 0xc0
jb 0x44aa83
mov ecx, eax
and ecx, 0x3f
movzx edx, byte [ecx + 0x467660]
mov ebx, dword [edx*4 + 0x467644]
mov ecx, edx
imul ecx, ecx, 6
and ebx, eax
shl ebx, cl
test edx, edx
mov eax, ebx
jle 0x44aa83
jmp 0x44aa6d
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 0x44aa6a
mov ecx, 0x180e
cmp eax, ecx
ja 0x44aab9
je case.0x449e46.108
cmp eax, 9
je case.0x449e46.108
cmp eax, 0x20
je case.0x449e46.108
cmp eax, 0xa0
je case.0x449e46.108
cmp eax, 0x1680
jmp 0x44a7c4
cmp eax, 0x2000
jb 0x44a4c6
cmp eax, 0x200a
jbe case.0x449e46.108
cmp eax, 0x202f
je case.0x449e46.108
cmp eax, 0x205f
je case.0x449e46.108
cmp eax, 0x3000
jmp 0x44a7c4
cmp esi, dword [edi + 0x58]
jae case.0x449e46.108
movzx eax, byte [esi]
inc esi
cmp dword [ebp - 0x18], edx
je 0x44ab45
cmp eax, 0xc0
jb 0x44ab45
mov ecx, eax
and ecx, 0x3f
movzx edx, byte [ecx + 0x467660]
mov ebx, dword [edx*4 + 0x467644]
mov ecx, edx
imul ecx, ecx, 6
and ebx, eax
shl ebx, cl
test edx, edx
mov eax, ebx
jle 0x44ab45
jmp 0x44ab2f
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 0x44ab2c
mov ecx, 0x180e
cmp eax, ecx
ja 0x44ab7b
je 0x44a4c6
cmp eax, 9
je 0x44a4c6
cmp eax, 0x20
je 0x44a4c6
cmp eax, 0xa0
je 0x44a4c6
cmp eax, 0x1680
jmp 0x44a4c0
cmp eax, 0x2000
jb case.0x449e46.108
cmp eax, 0x200a
jbe 0x44a4c6
cmp eax, 0x202f
je 0x44a4c6
cmp eax, 0x205f
je 0x44a4c6
cmp eax, 0x3000
jmp 0x44a4c0
cmp esi, dword [edi + 0x58]
jae case.0x449e46.108
movzx edx, byte [esi]
inc esi
cmp dword [ebp - 0x18], 0
je 0x44ac05
cmp edx, 0xc0
jb 0x44ac05
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x467660]
mov ebx, dword [eax*4 + 0x467644]
mov ecx, eax
imul ecx, ecx, 6
and ebx, edx
shl ebx, cl
mov edx, ebx
jmp 0x44abfe
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 0x44abec
cmp edx, 0xa
jb 0x44a4c6
cmp edx, 0xd
jbe case.0x449e46.108
cmp edx, 0x85
je case.0x449e46.108
cmp edx, 0x2027
jbe 0x44a4c6
cmp edx, 0x2029
jbe case.0x449e46.108
jmp 0x44a4c6
cmp esi, dword [edi + 0x58]
jae case.0x449e46.108
movzx edx, byte [esi]
inc esi
cmp dword [ebp - 0x18], 0
je 0x44ac94
cmp edx, 0xc0
jb 0x44ac94
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x467660]
mov ebx, dword [eax*4 + 0x467644]
mov ecx, eax
imul ecx, ecx, 6
and ebx, edx
shl ebx, cl
mov edx, ebx
jmp 0x44ac8d
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 0x44ac7b
cmp edx, 0xa
jb case.0x449e46.108
cmp edx, 0xd
jbe 0x44a4c6
cmp edx, 0x85
je 0x44a4c6
cmp edx, 0x2027
jbe case.0x449e46.108
cmp edx, 0x2029
ja case.0x449e46.108
jmp 0x44a4c6
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 0x44acfa
mov eax, dword [edi + 0xc]
lea eax, [eax + edx*4]
mov ecx, dword [eax]
test ecx, ecx
jl 0x44acfa
mov ebx, dword [eax + 4]
sub ebx, ecx
jmp 0x44ad00
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 0x44add5
cmp al, 0x4a
jbe 0x44ad4f
cmp al, 0x4c
ja 0x44add5
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 0x44ad47
mov dword [ebp - 4], SysReAllocString
add eax, 5
mov dword [ebp + 0xc], eax
jmp 0x44ad7c
movzx eax, al
movsx ebx, byte [eax + 0x46754b]
sub eax, 0x45
inc dword [ebp + 0xc]
mov ecx, eax
movsx eax, byte [eax + 0x467598]
and ecx, 1
test eax, eax
mov dword [ebp - 0x24], ecx
mov dword [ebp - 4], eax
jne 0x44ad7c
mov dword [ebp - 4], SysReAllocString
cmp dword [ebp - 0x10], 0
je 0x449e0f
xor eax, eax
inc eax
cmp ebx, eax
mov dword [ebp + 0x18], eax
jl 0x44adb6
push dword [ebp + 0x1c]
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0xc]
push esi
mov ecx, edi
call fcn.00449d65
test eax, eax
pop ecx
pop ecx
je case.0x449e46.108
add esi, dword [ebp - 0x10]
inc dword [ebp + 0x18]
cmp dword [ebp + 0x18], ebx
jle 0x44ad90
cmp ebx, dword [ebp - 4]
je 0x449e0f
cmp dword [ebp - 0x24], 0
je 0x44d398
mov dword [ebp + 0x18], ebx
mov ebx, dword [ebp + 0x28]
inc ebx
jmp 0x44d373
push dword [ebp + 0x1c]
mov ecx, edi
push esi
mov eax, ebx
call fcn.00449d65
test eax, eax
pop ecx
pop ecx
je case.0x449e46.108
add esi, ebx
jmp 0x449e0f
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 0x44ae73
cmp al, 0x4a
jbe 0x44ae40
cmp al, 0x4c
ja 0x44ae73
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 0x44ae38
mov dword [ebp - 4], SysReAllocString
add ebx, 5
mov dword [ebp + 0xc], ebx
jmp 0x44ae7c
movzx eax, al
movsx edx, byte [eax + 0x46754b]
sub eax, 0x45
mov ecx, eax
movsx eax, byte [eax + 0x467598]
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 0x44ae7c
mov dword [ebp - 4], SysReAllocString
jmp 0x44ae7c
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 0x44af21
cmp edx, eax
jl 0x44af58
cmp esi, dword [edi + 0x58]
jae case.0x449e46.108
movzx eax, byte [esi]
inc esi
cmp eax, 0xc0
jb 0x44aee8
mov ecx, eax
and ecx, 0x3f
movzx edx, byte [ecx + 0x467660]
mov ebx, dword [edx*4 + 0x467644]
mov ecx, edx
imul ecx, ecx, 6
and ebx, eax
shl ebx, cl
test edx, edx
mov eax, ebx
jle 0x44aee5
jmp 0x44aecf
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 0x44aecc
mov edx, dword [ebp - 0x14]
cmp eax, 0xff
jbe 0x44aef5
cmp dword [ebp - 8], 0x4d
jmp 0x44af0a
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.0x449e46.108
inc dword [ebp + 0x18]
cmp dword [ebp + 0x18], edx
jle 0x44ae94
mov ebx, dword [ebp + 0xc]
jmp 0x44af58
cmp edx, eax
jl 0x44af58
cmp esi, dword [edi + 0x58]
jae case.0x449e46.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.0x449e46.108
inc dword [ebp + 0x18]
mov edx, dword [ebp - 0x14]
cmp dword [ebp + 0x18], edx
jle 0x44af25
cmp edx, dword [ebp - 4]
je 0x449e0f
xor eax, eax
cmp dword [ebp - 0x24], eax
je 0x44d513
cmp dword [ebp - 0x18], eax
mov dword [ebp + 0x18], edx
je 0x44d4b1
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 0x44d49b
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 0x44b01c
cmp al, 0x4a
jbe 0x44afe9
cmp al, 0x4c
ja 0x44b01c
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 0x44afe1
mov dword [ebp - 4], SysReAllocString
add ebx, 5
mov dword [ebp + 0xc], ebx
jmp 0x44b025
movzx eax, al
sub eax, 0x45
mov ecx, eax
and ecx, 1
mov dword [ebp - 0x24], ecx
movsx ecx, byte [eax + 0x467590]
movsx eax, byte [eax + 0x467598]
inc ebx
cmp eax, edx
mov dword [ebp + 0xc], ebx
mov dword [ebp - 0x14], ecx
mov dword [ebp - 4], eax
jne 0x44b025
mov dword [ebp - 4], SysReAllocString
jmp 0x44b025
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 0x44b0a0
cmp esi, dword [edi + 0x58]
jae case.0x449e46.108
movzx eax, byte [esi]
inc esi
cmp eax, 0xc0
mov dword [ebp - 8], eax
jb 0x44b07b
and eax, 0x3f
movzx eax, byte [eax + 0x467660]
mov edx, dword [eax*4 + 0x467644]
and edx, dword [ebp - 8]
mov ecx, eax
imul ecx, ecx, 6
shl edx, cl
mov dword [ebp - 8], edx
jmp 0x44b077
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 0x44b067
push dword [ebp - 0x1c]
push dword [ebp - 8]
call fcn.0044f011
test eax, eax
pop ecx
pop ecx
je case.0x449e46.108
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 0x14]
jle 0x44b030
mov ebx, dword [ebp + 0xc]
xor edx, edx
mov eax, dword [ebp - 0x14]
cmp eax, dword [ebp - 4]
je 0x449e0f
cmp dword [ebp - 0x24], edx
je 0x44d712
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 0x44d6fc
cmp dword [ebp - 0x18], edx
je 0x44b120
xor ecx, ecx
inc ecx
inc ebx
movzx eax, byte [ebx]
cmp eax, 0xc0
mov dword [ebp + 0xc], ebx
jb 0x44b0f6
and eax, 0x3f
movzx ecx, byte [eax + 0x467660]
inc ecx
mov eax, dword [edi + 0x58]
sub eax, esi
cmp ecx, eax
jg case.0x449e46.108
jmp 0x44b117
mov dl, byte [esi]
mov al, byte [ebx]
dec ecx
inc esi
inc ebx
cmp al, dl
mov dword [ebp + 0xc], ebx
jne case.0x449e46.108
test ecx, ecx
jg 0x44b105
jmp 0x449e0f
mov eax, dword [edi + 0x58]
sub eax, esi
cmp eax, 1
jl case.0x449e46.108
mov al, byte [esi]
inc esi
cmp byte [ebx + 1], al
jne case.0x449e46.108
jmp 0x449f5c
cmp dword [ebp - 0x18], edx
je 0x44b234
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 0x44b1b5
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x467660]
mov ebx, dword [eax*4 + 0x467644]
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 0x44b1ab
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 0x44b18e
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.0x449e46.108
cmp dword [ebp - 8], 0x80
jae 0x44b1e1
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 0x44a646
movzx eax, byte [esi]
inc esi
cmp eax, 0xc0
mov dword [ebp + 0x18], eax
jb 0x44b223
and eax, 0x3f
movzx edx, byte [eax + 0x467660]
mov eax, dword [edx*4 + 0x467644]
and eax, dword [ebp + 0x18]
mov ecx, edx
imul ecx, ecx, 6
shl eax, cl
mov dword [ebp + 0x18], eax
jmp 0x44b21f
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 0x44b20f
mov eax, dword [ebp - 0x10]
add dword [ebp + 0xc], eax
mov eax, dword [ebp + 0x18]
cmp dword [ebp - 8], eax
jmp 0x44a646
mov eax, dword [edi + 0x58]
sub eax, esi
cmp eax, 1
jl case.0x449e46.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 0x44b134
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 0x44b2e8
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 0x44b266
mov dword [ebp - 0x1c], 1
xor ebx, ebx
inc dword [ebp + 0xc]
jmp 0x44b2e1
xor ebx, ebx
inc ebx
mov dword [ebp - 0x1c], ebx
jmp 0x44b29b
xor eax, eax
inc eax
xor ebx, ebx
inc dword [ebp + 0xc]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], eax
jmp 0x44b2e8
mov eax, dword [ebp + 0xc]
movzx eax, byte [eax]
movsx ebx, byte [eax + 0x467572]
sub eax, 0x1e
inc dword [ebp + 0xc]
mov ecx, eax
movsx eax, byte [eax + 0x467598]
and ecx, 1
test eax, eax
mov dword [ebp - 0x24], ecx
mov dword [ebp - 4], eax
jne 0x44b2e8
mov dword [ebp - 4], SysReAllocString
cmp dword [ebp - 0x18], 0
je 0x44b404
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 0x44b366
mov ecx, eax
and ecx, 0x3f
movzx edx, byte [ecx + 0x467660]
mov ecx, edx
imul ecx, ecx, 6
mov dword [ebp - 0x10], edx
mov edx, dword [edx*4 + 0x467644]
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 0x44b362
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 0x44b33f
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.0x449e46.108
mov ecx, dword [ebp - 0x10]
add dword [ebp + 0xc], ecx
xor edx, edx
inc edx
cmp ecx, edx
jle 0x44b420
cmp ebx, edx
mov dword [ebp + 0x18], edx
jl 0x44b3b3
push dword [ebp - 0x10]
push dword [ebp - 0xc]
push esi
call fcn.0044fc45
add esp, 0xc
test eax, eax
jne case.0x449e46.108
add esi, dword [ebp - 0x10]
inc dword [ebp + 0x18]
cmp dword [ebp + 0x18], ebx
jle 0x44b391
cmp ebx, dword [ebp - 4]
je 0x449e0f
cmp dword [ebp - 0x24], 0
jne 0x44d7d7
mov dword [ebp - 0x14], esi
jmp 0x44b3ec
mov eax, dword [edi + 0x58]
sub eax, dword [ebp - 0x10]
cmp esi, eax
ja 0x44b3f1
push dword [ebp - 0x10]
push dword [ebp - 0xc]
push esi
call fcn.0044fc45
add esp, 0xc
test eax, eax
jne 0x44b3f1
add esi, dword [ebp - 0x10]
inc ebx
cmp ebx, dword [ebp - 4]
jl 0x44b3cb
cmp dword [ebp - 0x1c], 0
jne 0x449e0f
mov ebx, dword [ebp + 0x28]
inc ebx
jmp 0x44d843
mov eax, dword [edi + 0x58]
sub eax, esi
cmp ebx, eax
jg case.0x449e46.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 0x44b4c6
cmp ebx, edx
mov ecx, dword [edi + 0x24]
movzx eax, byte [ecx + eax]
mov dword [ebp - 8], eax
mov eax, edx
jl 0x44b450
movzx edx, byte [esi]
movzx edx, byte [edx + ecx]
inc esi
cmp dword [ebp - 8], edx
jne case.0x449e46.108
inc eax
cmp eax, ebx
jle 0x44b43a
cmp ebx, dword [ebp - 4]
je 0x449e0f
cmp dword [ebp - 0x24], 0
jne 0x44d868
mov dword [ebp - 0x14], esi
jmp 0x44b47b
cmp esi, dword [edi + 0x58]
jae 0x44b480
movzx eax, byte [esi]
movzx eax, byte [eax + ecx]
cmp dword [ebp - 8], eax
jne 0x44b480
inc esi
inc ebx
cmp ebx, dword [ebp - 4]
jl 0x44b468
cmp dword [ebp - 0x1c], 0
jne 0x449e0f
cmp esi, dword [ebp - 0x14]
jb case.0x449e46.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.00449dc3
add esp, 0x24
dec esi
test eax, eax
jne 0x44e0c6
cmp esi, dword [ebp - 0x14]
jae 0x44b497
jmp case.0x449e46.108
cmp ebx, edx
mov ecx, edx
jl 0x44b4dd
movzx edx, byte [esi]
inc esi
cmp eax, edx
jne case.0x449e46.108
inc ecx
cmp ecx, ebx
jle 0x44b4cc
cmp ebx, dword [ebp - 4]
je 0x449e0f
cmp dword [ebp - 0x24], 0
jne 0x44d8c2
mov dword [ebp - 0x14], esi
jmp 0x44b504
cmp esi, dword [edi + 0x58]
jae 0x44b509
movzx eax, byte [esi]
cmp dword [ebp - 8], eax
jne 0x44b509
inc esi
inc ebx
cmp ebx, dword [ebp - 4]
jl 0x44b4f5
cmp dword [ebp - 0x1c], 0
jne 0x449e0f
cmp esi, dword [ebp - 0x14]
jb case.0x449e46.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.00449dc3
add esp, 0x24
dec esi
test eax, eax
jne 0x44e0c6
cmp esi, dword [ebp - 0x14]
jae 0x44b520
jmp case.0x449e46.108
cmp esi, dword [edi + 0x58]
jae case.0x449e46.108
movzx edx, byte [esi]
inc ebx
inc esi
cmp dword [ebp - 0x18], 0
mov dword [ebp + 0xc], ebx
je 0x44b5a7
cmp edx, 0xc0
jb 0x44b5a7
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x467660]
mov ebx, dword [eax*4 + 0x467644]
mov ecx, eax
imul ecx, ecx, 6
and ebx, edx
shl ebx, cl
mov edx, ebx
jmp 0x44b5a0
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 0x44b58e
test byte [ebp + 0x1c], 1
je 0x44b5d9
cmp edx, 0x100
jae 0x44b5bc
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 0x449e0f
jmp case.0x449e46.108
mov eax, dword [ebp + 0xc]
movzx eax, byte [eax]
jmp 0x44b5c9
xor edx, edx
mov dh, byte [ebx + 1]
mov dl, byte [ebx + 2]
mov dword [ebp - 4], edx
add ebx, 3
jmp 0x44b66e
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 0x44b5ec
mov dword [ebp - 0x1c], 1
xor edx, edx
inc ebx
jmp 0x44b667
xor edx, edx
inc edx
mov dword [ebp - 0x1c], edx
jmp 0x44b614
xor eax, eax
inc eax
xor edx, edx
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], eax
inc ebx
jmp 0x44b66e
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 0x44b5ec
movzx eax, byte [ebx]
movsx edx, byte [eax + 0x467565]
sub eax, 0x2b
mov ecx, eax
movsx eax, byte [eax + 0x467598]
and ecx, 1
inc ebx
test eax, eax
mov dword [ebp - 0x24], ecx
mov dword [ebp - 4], eax
jne 0x44b66e
mov dword [ebp - 4], SysReAllocString
mov eax, dword [edi + 0x58]
sub eax, esi
cmp edx, eax
jg case.0x449e46.108
movzx ecx, byte [ebx]
inc ebx
test byte [ebp + 0x1c], 1
mov dword [ebp - 8], ecx
mov dword [ebp + 0xc], ebx
je 0x44b866
cmp dword [ebp - 0x18], 0
mov eax, dword [edi + 0x24]
movzx ecx, byte [eax + ecx]
mov dword [ebp - 8], ecx
je 0x44b729
xor eax, eax
inc eax
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44b74c
movzx ebx, byte [esi]
inc esi
cmp ebx, 0xc0
jb 0x44b704
mov eax, ebx
and eax, 0x3f
movzx eax, byte [eax + 0x467660]
mov ecx, eax
imul ecx, ecx, 6
mov dword [ebp - 0xc], ecx
mov ecx, dword [eax*4 + 0x467644]
and ecx, ebx
mov ebx, ecx
mov ecx, dword [ebp - 0xc]
shl ebx, cl
jmp 0x44b6fd
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 0x44b6e3
cmp ebx, 0x100
jae 0x44b713
mov eax, dword [edi + 0x24]
movzx ebx, byte [eax + ebx]
cmp dword [ebp - 8], ebx
je case.0x449e46.108
inc dword [ebp + 0x18]
cmp dword [ebp + 0x18], edx
jle 0x44b6b1
mov ebx, dword [ebp + 0xc]
jmp 0x44b74c
xor ecx, ecx
inc ecx
cmp edx, ecx
mov dword [ebp + 0x18], ecx
jl 0x44b74c
movzx ecx, byte [esi]
movzx ecx, byte [ecx + eax]
inc esi
cmp dword [ebp - 8], ecx
je case.0x449e46.108
inc dword [ebp + 0x18]
cmp dword [ebp + 0x18], edx
jle 0x44b733
cmp edx, dword [ebp - 4]
je 0x449e0f
xor ecx, ecx
cmp dword [ebp - 0x24], ecx
jne 0x44d915
cmp dword [ebp - 0x18], ecx
mov dword [ebp - 0x14], esi
je 0x44b81c
cmp edx, dword [ebp - 4]
mov dword [ebp + 0x18], edx
jge 0x44b7ef
xor eax, eax
inc eax
cmp esi, dword [edi + 0x58]
jae 0x44b7ef
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x44b7ce
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x467660]
mov ebx, dword [eax*4 + 0x467644]
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 0x44b7ca
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 0x44b7b1
mov ebx, dword [ebp + 0xc]
inc eax
cmp edx, 0x100
jae 0x44b7dd
mov ecx, dword [edi + 0x24]
movzx edx, byte [ecx + edx]
cmp dword [ebp - 8], edx
je 0x44b7ef
add esi, eax
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jl 0x44b774
cmp dword [ebp - 0x1c], 0
jne 0x449e0f
mov eax, dword [ebp + 0x28]
inc eax
mov dword [ebp - 0x10], eax
push eax
jmp 0x44da4f
cmp esi, dword [edi + 0x58]
jae 0x44b821
movzx ebx, byte [esi]
mov eax, dword [edi + 0x24]
movzx eax, byte [ebx + eax]
cmp dword [ebp - 8], eax
je 0x44b821
inc esi
inc edx
cmp edx, dword [ebp - 4]
jl 0x44b806
cmp dword [ebp - 0x1c], ecx
jne 0x449e0f
cmp esi, dword [ebp - 0x14]
jb case.0x449e46.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.00449dc3
add esp, 0x24
test eax, eax
jne 0x44e0c6
dec esi
cmp esi, dword [ebp - 0x14]
jae 0x44b837
jmp case.0x449e46.108
xor eax, eax
inc eax
cmp dword [ebp - 0x18], 0
je 0x44b8df
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44b8f5
movzx ebx, byte [esi]
inc esi
cmp ebx, 0xc0
jb 0x44b8c9
mov eax, ebx
and eax, 0x3f
movzx eax, byte [eax + 0x467660]
mov ecx, eax
imul ecx, ecx, 6
mov dword [ebp - 0xc], ecx
mov ecx, dword [eax*4 + 0x467644]
and ecx, ebx
mov ebx, ecx
mov ecx, dword [ebp - 0xc]
shl ebx, cl
jmp 0x44b8c2
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 0x44b8a8
cmp dword [ebp - 8], ebx
je case.0x449e46.108
inc dword [ebp + 0x18]
cmp dword [ebp + 0x18], edx
jle 0x44b876
mov ebx, dword [ebp + 0xc]
jmp 0x44b8f5
cmp edx, eax
jl 0x44b8f5
movzx ecx, byte [esi]
inc esi
cmp dword [ebp - 8], ecx
je case.0x449e46.108
inc eax
cmp eax, edx
jle 0x44b8e3
cmp edx, dword [ebp - 4]
je 0x449e0f
xor ecx, ecx
cmp dword [ebp - 0x24], ecx
jne 0x44da71
cmp dword [ebp - 0x18], ecx
mov dword [ebp - 0x14], esi
je 0x44b9b5
cmp edx, dword [ebp - 4]
mov dword [ebp + 0x18], edx
jge 0x44b98f
jmp 0x44b921
xor ecx, ecx
xor eax, eax
inc eax
cmp esi, dword [edi + 0x58]
jae 0x44b98f
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x44b97b
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x467660]
mov ebx, dword [eax*4 + 0x467644]
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 0x44b977
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 0x44b95e
mov ebx, dword [ebp + 0xc]
inc eax
cmp dword [ebp - 8], edx
je 0x44b98d
add esi, eax
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jl 0x44b91f
xor ecx, ecx
cmp dword [ebp - 0x1c], ecx
jne 0x449e0f
mov eax, dword [ebp + 0x28]
inc eax
push eax
mov dword [ebp - 0x10], eax
push ecx
jmp 0x44db95
cmp esi, dword [edi + 0x58]
jae 0x44b9ba
movzx eax, byte [esi]
cmp dword [ebp - 8], eax
je 0x44b9ba
inc esi
inc edx
cmp edx, dword [ebp - 4]
jl 0x44b9a6
cmp dword [ebp - 0x1c], ecx
jne 0x449e0f
cmp esi, dword [ebp - 0x14]
jb case.0x449e46.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.00449dc3
add esp, 0x24
test eax, eax
jne 0x44e0c6
dec esi
cmp esi, dword [ebp - 0x14]
jae 0x44b9d0
jmp case.0x449e46.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 0x44bab8
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 0x44bab5
and dword [ebp - 0x14], 0
mov dword [ebp - 0x1c], 1
mov dword [ebp - 4], SysReAllocString
inc ebx
jmp 0x44ba3b
xor eax, eax
inc eax
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x14], eax
jmp 0x44ba4b
xor eax, eax
inc eax
and dword [ebp - 0x14], 0
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], eax
jmp 0x44ba52
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 0x44ba38
movzx eax, byte [ebx]
movsx edx, byte [eax + 0x467558]
sub eax, 0x38
mov ecx, eax
movsx eax, byte [eax + 0x467598]
and ecx, 1
inc ebx
test eax, eax
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x14], edx
mov dword [ebp - 4], eax
jne 0x44bab5
mov dword [ebp - 4], SysReAllocString
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.0x449e46.108
test edx, edx
jle 0x44c395
mov ecx, dword [ebp - 0xc]
add ecx, 0xfffffffa
cmp dword [ebp - 0x18], 0
je 0x44c0dc
cmp ecx, 0xe
ja case.0x44df7b.14
jmp dword [ecx*4 + 0x44e24f]
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44c395
mov ecx, dword [ebp - 0x10]
cmp esi, ecx
jae case.0x449e46.108
test byte [ebp + 0x1c], 4
jne 0x44bb5e
mov edx, dword [edi + 0x18]
test edx, edx
je 0x44bb3a
push dword [ebp - 0x18]
lea eax, [edi + 0x1c]
push eax
push ecx
push edx
push esi
call fcn.0044ec23
add esp, 0x14
test eax, eax
jne case.0x449e46.108
inc eax
jmp 0x44bb5e
mov edx, dword [edi + 0x1c]
sub ecx, edx
cmp esi, ecx
ja 0x44bb5e
mov cl, byte [esi]
cmp cl, byte [edi + 0x20]
jne 0x44bb5e
cmp edx, eax
je case.0x449e46.108
mov cl, byte [esi + 1]
cmp cl, byte [edi + 0x21]
je case.0x449e46.108
mov ecx, dword [edi + 0x58]
inc esi
cmp esi, ecx
mov dword [ebp - 0x10], ecx
jae 0x44bb79
mov cl, byte [esi]
and cl, 0xc0
cmp cl, 0x80
jne 0x44bb79
inc esi
cmp esi, dword [edi + 0x58]
jb 0x44bb69
inc dword [ebp + 0x18]
mov ecx, dword [ebp + 0x18]
cmp ecx, dword [ebp - 0x14]
jle 0x44bb05
mov edx, dword [ebp - 0x14]
jmp 0x44c395
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44c395
cmp esi, dword [ebp - 0x10]
jae case.0x449e46.108
movzx edx, byte [esi]
inc esi
cmp edx, 0xc0
jb 0x44bbe5
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x467660]
mov ebx, dword [eax*4 + 0x467644]
mov ecx, eax
imul ecx, ecx, 6
and ebx, edx
shl ebx, cl
mov edx, ebx
jmp 0x44bbde
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 0x44bbcc
cmp edx, 0xa
je 0x44bc24
jbe case.0x449e46.108
cmp edx, 0xc
jbe 0x44bc1a
cmp edx, 0xd
je 0x44bc3b
cmp edx, 0x85
je 0x44bc1a
cmp edx, 0x2027
jbe case.0x449e46.108
cmp edx, 0x2029
ja case.0x449e46.108
cmp dword [edi + 0x4c], 0
jne case.0x449e46.108
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 0x14]
jle 0x44bb97
mov ebx, dword [ebp + 0xc]
jmp 0x44bb84
cmp esi, dword [ebp - 0x10]
jae 0x44bc24
cmp byte [esi], 0xa
jne 0x44bc24
inc esi
jmp 0x44bc24
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44c395
cmp esi, dword [ebp - 0x10]
jae case.0x449e46.108
movzx eax, byte [esi]
inc esi
cmp eax, 0xc0
jb 0x44bca4
mov ecx, eax
and ecx, 0x3f
movzx edx, byte [ecx + 0x467660]
mov ebx, dword [edx*4 + 0x467644]
mov ecx, edx
imul ecx, ecx, 6
and ebx, eax
shl ebx, cl
test edx, edx
mov eax, ebx
jle 0x44bca4
jmp 0x44bc8e
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 0x44bc8b
mov ecx, 0x180e
cmp eax, ecx
ja 0x44bcd7
je case.0x449e46.108
cmp eax, 9
je case.0x449e46.108
cmp eax, 0x20
je case.0x449e46.108
cmp eax, 0xa0
je case.0x449e46.108
cmp eax, 0x1680
jmp 0x44bd04
cmp eax, 0x2000
jb 0x44bd0a
cmp eax, 0x200a
jbe case.0x449e46.108
cmp eax, 0x202f
je case.0x449e46.108
cmp eax, 0x205f
je case.0x449e46.108
cmp eax, 0x3000
je case.0x449e46.108
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 0x14]
jle 0x44bc53
jmp 0x44bc33
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44c395
cmp esi, dword [ebp - 0x10]
jae case.0x449e46.108
movzx eax, byte [esi]
inc esi
cmp eax, 0xc0
jb 0x44bd7a
mov ecx, eax
and ecx, 0x3f
movzx edx, byte [ecx + 0x467660]
mov ebx, dword [edx*4 + 0x467644]
mov ecx, edx
imul ecx, ecx, 6
and ebx, eax
shl ebx, cl
test edx, edx
mov eax, ebx
jle 0x44bd7a
jmp 0x44bd64
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 0x44bd61
mov ecx, 0x180e
cmp eax, ecx
ja 0x44bd9d
je 0x44bdc8
cmp eax, 9
je 0x44bdc8
cmp eax, 0x20
je 0x44bdc8
cmp eax, 0xa0
je 0x44bdc8
cmp eax, 0x1680
jmp 0x44bdc2
cmp eax, 0x2000
jb case.0x449e46.108
cmp eax, 0x200a
jbe 0x44bdc8
cmp eax, 0x202f
je 0x44bdc8
cmp eax, 0x205f
je 0x44bdc8
cmp eax, 0x3000
jne case.0x449e46.108
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 0x14]
jle 0x44bd29
jmp 0x44bc33
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44c395
cmp esi, dword [ebp - 0x10]
jae case.0x449e46.108
movzx edx, byte [esi]
inc esi
cmp edx, 0xc0
jb 0x44be35
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x467660]
mov ebx, dword [eax*4 + 0x467644]
mov ecx, eax
imul ecx, ecx, 6
and ebx, edx
shl ebx, cl
mov edx, ebx
jmp 0x44be2e
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 0x44be1c
cmp edx, 0xa
jb 0x44be63
cmp edx, 0xd
jbe case.0x449e46.108
cmp edx, 0x85
je case.0x449e46.108
cmp edx, 0x2027
jbe 0x44be63
cmp edx, 0x2029
jbe case.0x449e46.108
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 0x14]
jle 0x44bde7
jmp 0x44bc33
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44c395
cmp esi, dword [ebp - 0x10]
jae case.0x449e46.108
movzx edx, byte [esi]
inc esi
cmp edx, 0xc0
jb 0x44bed0
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x467660]
mov ebx, dword [eax*4 + 0x467644]
mov ecx, eax
imul ecx, ecx, 6
and ebx, edx
shl ebx, cl
mov edx, ebx
jmp 0x44bec9
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 0x44beb7
cmp edx, 0xa
jb case.0x449e46.108
cmp edx, 0xd
jbe 0x44befe
cmp edx, 0x85
je 0x44befe
cmp edx, 0x2027
jbe case.0x449e46.108
cmp edx, 0x2029
ja case.0x449e46.108
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 0x14]
jle 0x44be82
jmp 0x44bc33
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44c395
cmp esi, dword [ebp - 0x10]
jae case.0x449e46.108
movzx edx, byte [esi]
inc esi
cmp edx, 0xc0
jb 0x44bf6b
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x467660]
mov ebx, dword [eax*4 + 0x467644]
mov ecx, eax
imul ecx, ecx, 6
and ebx, edx
shl ebx, cl
mov edx, ebx
jmp 0x44bf64
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 0x44bf52
cmp edx, 0x80
jae 0x44bf80
mov eax, dword [edi + 0x28]
test byte [edx + eax], 4
jne case.0x449e46.108
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 0x14]
jle 0x44bf1d
jmp 0x44bc33
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44c395
cmp esi, dword [ebp - 0x10]
jae case.0x449e46.108
mov cl, byte [esi]
cmp cl, 0x80
jae case.0x449e46.108
movzx eax, cl
mov ecx, dword [edi + 0x28]
mov al, byte [eax + ecx]
and al, 4
inc esi
test al, al
je case.0x449e46.108
inc dword [ebp + 0x18]
cmp dword [ebp + 0x18], edx
jle 0x44bf9b
jmp 0x44c395
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44c395
cmp esi, dword [ebp - 0x10]
jae case.0x449e46.108
mov cl, byte [esi]
cmp cl, 0x80
jae 0x44bffb
movzx eax, cl
mov ecx, dword [edi + 0x28]
test byte [eax + ecx], 1
jne case.0x449e46.108
inc esi
cmp esi, dword [ebp - 0x10]
jae 0x44c009
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
je 0x44bffb
inc dword [ebp + 0x18]
cmp dword [ebp + 0x18], edx
jle 0x44bfdb
jmp 0x44c395
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44c395
cmp esi, dword [ebp - 0x10]
jae case.0x449e46.108
mov cl, byte [esi]
cmp cl, 0x80
jae case.0x449e46.108
movzx eax, cl
mov ecx, dword [edi + 0x28]
mov al, byte [eax + ecx]
and al, 1
inc esi
test al, al
je case.0x449e46.108
inc dword [ebp + 0x18]
cmp dword [ebp + 0x18], edx
jle 0x44c021
jmp 0x44c395
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44c395
cmp esi, dword [ebp - 0x10]
jae case.0x449e46.108
mov cl, byte [esi]
cmp cl, 0x80
jae 0x44c081
movzx eax, cl
mov ecx, dword [edi + 0x28]
test byte [eax + ecx], 0x10
jne case.0x449e46.108
inc esi
cmp esi, dword [ebp - 0x10]
jae 0x44c08f
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
je 0x44c081
inc dword [ebp + 0x18]
cmp dword [ebp + 0x18], edx
jle 0x44c061
jmp 0x44c395
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44c395
cmp esi, dword [ebp - 0x10]
jae case.0x449e46.108
mov cl, byte [esi]
cmp cl, 0x80
jae case.0x449e46.108
movzx eax, cl
mov ecx, dword [edi + 0x28]
mov al, byte [eax + ecx]
and al, 0x10
inc esi
test al, al
je case.0x449e46.108
inc dword [ebp + 0x18]
cmp dword [ebp + 0x18], edx
jle 0x44c0a7
jmp 0x44c395
cmp ecx, 0xe
ja case.0x44df7b.14
jmp dword [ecx*4 + 0x44e28b]
test byte [ebp + 0x1c], 4
jne case.0x44c0e5.7
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44c395
mov edx, dword [edi + 0x18]
test edx, edx
je 0x44c127
mov ecx, dword [edi + 0x58]
cmp esi, ecx
jae 0x44c14e
push 0
lea eax, [edi + 0x1c]
push eax
push ecx
push edx
push esi
call fcn.0044ec23
add esp, 0x14
test eax, eax
jne case.0x449e46.108
inc eax
jmp 0x44c14e
mov ecx, dword [edi + 0x1c]
mov edx, dword [edi + 0x58]
sub edx, ecx
cmp esi, edx
ja 0x44c14e
mov dl, byte [esi]
cmp dl, byte [edi + 0x20]
jne 0x44c14e
cmp ecx, eax
je case.0x449e46.108
mov cl, byte [esi + 1]
cmp cl, byte [edi + 0x21]
je case.0x449e46.108
inc esi
inc dword [ebp + 0x18]
mov ecx, dword [ebp + 0x18]
cmp ecx, dword [ebp - 0x14]
jle 0x44c0fd
jmp 0x44bb84
add esi, edx
jmp 0x44c395
cmp edx, eax
jl 0x44c395
cmp esi, dword [ebp - 0x10]
jae case.0x449e46.108
movzx ecx, byte [esi]
inc esi
cmp ecx, 0xa
je 0x44c1a6
jle case.0x449e46.108
cmp ecx, 0xc
jle 0x44c19c
cmp ecx, 0xd
je 0x44c1b0
cmp ecx, 0x85
jne case.0x449e46.108
cmp dword [edi + 0x4c], 0
jne case.0x449e46.108
inc eax
cmp eax, edx
jle 0x44c16e
jmp 0x44c395
cmp esi, dword [ebp - 0x10]
jae 0x44c1a6
cmp byte [esi], 0xa
jne 0x44c1a6
inc esi
jmp 0x44c1a6
cmp edx, eax
jl 0x44c395
cmp esi, dword [ebp - 0x10]
jae case.0x449e46.108
movzx ecx, byte [esi]
inc esi
cmp ecx, 9
je case.0x449e46.108
cmp ecx, 0x20
je case.0x449e46.108
cmp ecx, 0xa0
je case.0x449e46.108
inc eax
cmp eax, edx
jle 0x44c1c5
jmp 0x44c395
cmp edx, eax
jl 0x44c395
cmp esi, dword [ebp - 0x10]
jae case.0x449e46.108
movzx ecx, byte [esi]
inc esi
cmp ecx, 9
je 0x44c225
cmp ecx, 0x20
je 0x44c225
cmp ecx, 0xa0
jne case.0x449e46.108
inc eax
cmp eax, edx
jle 0x44c202
jmp 0x44c395
cmp edx, eax
jl 0x44c395
cmp esi, dword [ebp - 0x10]
jae case.0x449e46.108
movzx ecx, byte [esi]
inc esi
cmp ecx, 0xa
jl 0x44c25e
cmp ecx, 0xd
jle case.0x449e46.108
cmp ecx, 0x85
je case.0x449e46.108
inc eax
cmp eax, edx
jle 0x44c237
jmp 0x44c395
cmp edx, eax
jl 0x44c395
cmp esi, dword [ebp - 0x10]
jae case.0x449e46.108
movzx ecx, byte [esi]
inc esi
cmp ecx, 0xa
jl case.0x449e46.108
cmp ecx, 0xd
jle 0x44c297
cmp ecx, 0x85
jne case.0x449e46.108
inc eax
cmp eax, edx
jle 0x44c270
jmp 0x44c395
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44c395
mov eax, dword [edi + 0x28]
movzx ecx, byte [esi]
mov cl, byte [ecx + eax]
and cl, 4
inc esi
test cl, cl
jne case.0x449e46.108
inc dword [ebp + 0x18]
cmp dword [ebp + 0x18], edx
jle 0x44c2af
jmp 0x44c395
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44c395
mov eax, dword [edi + 0x28]
movzx ecx, byte [esi]
mov cl, byte [ecx + eax]
and cl, 4
inc esi
test cl, cl
je case.0x449e46.108
inc dword [ebp + 0x18]
cmp dword [ebp + 0x18], edx
jle 0x44c2dc
jmp 0x44c395
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44c395
mov eax, dword [edi + 0x28]
movzx ecx, byte [esi]
mov cl, byte [ecx + eax]
and cl, 1
inc esi
test cl, cl
jne case.0x449e46.108
inc dword [ebp + 0x18]
cmp dword [ebp + 0x18], edx
jle 0x44c309
jmp 0x44c395
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44c395
mov eax, dword [edi + 0x28]
movzx ecx, byte [esi]
mov cl, byte [ecx + eax]
and cl, 1
inc esi
test cl, cl
je case.0x449e46.108
inc dword [ebp + 0x18]
cmp dword [ebp + 0x18], edx
jle 0x44c32f
jmp 0x44c395
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44c395
mov eax, dword [edi + 0x28]
movzx ecx, byte [esi]
mov cl, byte [ecx + eax]
and cl, 0x10
inc esi
test cl, cl
jne case.0x449e46.108
inc dword [ebp + 0x18]
cmp dword [ebp + 0x18], edx
jle 0x44c355
jmp 0x44c395
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44c395
mov eax, dword [edi + 0x28]
movzx ecx, byte [esi]
mov cl, byte [ecx + eax]
and cl, 0x10
inc esi
test cl, cl
je case.0x449e46.108
inc dword [ebp + 0x18]
cmp dword [ebp + 0x18], edx
jle 0x44c37b
mov ecx, dword [ebp - 4]
cmp edx, ecx
je 0x449e0f
xor eax, eax
cmp dword [ebp - 0x24], eax
jne 0x44dbbc
cmp dword [ebp - 0x18], eax
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x14], esi
je 0x44cae0
add eax, 0xfffffffa
cmp eax, 0xe
ja case.0x44df7b.14
jmp dword [eax*4 + 0x44e2c7]
cmp ecx, 0x7fffffff
jge 0x44c48a
test byte [ebp + 0x1c], 4
jne 0x44c457
cmp edx, ecx
mov ebx, edx
jge 0x44cacd
mov eax, dword [edi + 0x58]
cmp esi, eax
jae 0x44cacd
mov ecx, dword [edi + 0x18]
test ecx, ecx
je 0x44c417
push dword [ebp - 0x18]
lea edx, [edi + 0x1c]
push edx
push eax
push ecx
push esi
call fcn.0044ec23
add esp, 0x14
test eax, eax
jne 0x44cacd
jmp 0x44c446
mov ecx, dword [edi + 0x1c]
sub eax, ecx
cmp esi, eax
ja 0x44c446
mov al, byte [esi]
cmp al, byte [edi + 0x20]
jne 0x44c446
cmp ecx, 1
je 0x44cacd
mov al, byte [esi + 1]
cmp al, byte [edi + 0x21]
je 0x44cacd
jmp 0x44c446
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x44c44c
inc esi
cmp esi, dword [edi + 0x58]
jb 0x44c43e
inc ebx
cmp ebx, dword [ebp - 4]
jl 0x44c3e9
jmp 0x44cacd
cmp edx, ecx
jge 0x44cacd
mov eax, dword [edi + 0x58]
cmp esi, eax
jae 0x44cacd
inc esi
cmp esi, eax
jae 0x44c47f
mov cl, byte [esi]
and cl, 0xc0
cmp cl, 0x80
jne 0x44c47f
inc esi
cmp esi, dword [edi + 0x58]
jb 0x44c46f
inc edx
cmp edx, dword [ebp - 4]
jl 0x44c462
jmp 0x44cacd
test byte [ebp + 0x1c], 4
jne 0x44c508
cmp edx, ecx
mov ebx, edx
jge 0x44cacd
mov eax, dword [edi + 0x58]
cmp esi, eax
jae 0x44cacd
mov ecx, dword [edi + 0x18]
test ecx, ecx
je 0x44c4c8
push dword [ebp - 0x18]
lea edx, [edi + 0x1c]
push edx
push eax
push ecx
push esi
call fcn.0044ec23
add esp, 0x14
test eax, eax
jne 0x44cacd
jmp 0x44c4f7
mov ecx, dword [edi + 0x1c]
sub eax, ecx
cmp esi, eax
ja 0x44c4f7
mov al, byte [esi]
cmp al, byte [edi + 0x20]
jne 0x44c4f7
cmp ecx, 1
je 0x44cacd
mov al, byte [esi + 1]
cmp al, byte [edi + 0x21]
je 0x44cacd
jmp 0x44c4f7
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x44c4fd
inc esi
cmp esi, dword [edi + 0x58]
jb 0x44c4ef
inc ebx
cmp ebx, dword [ebp - 4]
jl 0x44c49a
jmp 0x44cacd
mov esi, dword [edi + 0x58]
jmp 0x44cacd
mov eax, dword [edi + 0x58]
sub ecx, edx
sub eax, esi
cmp ecx, eax
jbe 0x44c51d
mov ecx, eax
add esi, ecx
jmp 0x44cacd
cmp edx, ecx
mov dword [ebp + 0x18], edx
jge 0x44cacd
xor eax, eax
inc eax
cmp esi, dword [edi + 0x58]
jae 0x44cacd
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x44c58a
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x467660]
mov ebx, dword [eax*4 + 0x467644]
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 0x44c589
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 0x44c570
inc eax
cmp edx, 0xd
jne 0x44c5a1
inc esi
cmp esi, dword [edi + 0x58]
jae 0x44cacd
cmp byte [esi], 0xa
jne 0x44c5d8
inc esi
jmp 0x44c5d8
cmp edx, 0xa
je 0x44c5d6
cmp dword [edi + 0x4c], 0
jne 0x44cacd
cmp edx, 0xb
je 0x44c5d6
cmp edx, 0xc
je 0x44c5d6
cmp edx, 0x85
je 0x44c5d6
cmp edx, 0x2028
je 0x44c5d6
cmp edx, 0x2029
jne 0x44cacd
add esi, eax
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jl 0x44c52f
jmp 0x44cacd
cmp edx, ecx
mov dword [ebp + 0x18], edx
jge 0x44cacd
xor eax, eax
inc eax
cmp esi, dword [edi + 0x58]
jae 0x44cacd
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x44c652
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x467660]
mov ebx, dword [eax*4 + 0x467644]
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 0x44c651
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 0x44c638
inc eax
mov ecx, 0x180e
cmp edx, ecx
ja 0x44c6a0
je 0x44c6c8
cmp edx, 9
je 0x44c6c8
cmp edx, 0x20
je 0x44c6c8
cmp edx, 0xa0
je 0x44c6c8
cmp edx, 0x1680
je 0x44c6c8
xor ecx, ecx
xor edx, edx
cmp dword [ebp - 0xc], 0x11
sete dl
cmp ecx, edx
je 0x44cacd
add esi, eax
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jl 0x44c5f7
jmp 0x44cacd
cmp edx, 0x2000
jb 0x44c677
cmp edx, 0x200a
jbe 0x44c6c8
cmp edx, 0x202f
je 0x44c6c8
cmp edx, 0x205f
je 0x44c6c8
cmp edx, 0x3000
jne 0x44c677
xor ecx, ecx
inc ecx
jmp 0x44c679
cmp edx, ecx
mov dword [ebp + 0x18], edx
jge 0x44cacd
xor eax, eax
inc eax
cmp esi, dword [edi + 0x58]
jae 0x44cacd
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x44c733
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x467660]
mov ebx, dword [eax*4 + 0x467644]
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 0x44c732
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 0x44c719
inc eax
cmp edx, 0xa
jb 0x44c75a
cmp edx, 0xd
jbe 0x44c755
cmp edx, 0x85
je 0x44c755
cmp edx, 0x2027
jbe 0x44c75a
cmp edx, 0x2029
ja 0x44c75a
xor ecx, ecx
inc ecx
jmp 0x44c75c
xor ecx, ecx
xor edx, edx
cmp dword [ebp - 0xc], 0x13
sete dl
cmp ecx, edx
je 0x44cacd
add esi, eax
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jl 0x44c6d8
jmp 0x44cacd
cmp edx, ecx
mov dword [ebp + 0x18], edx
jge 0x44cacd
xor eax, eax
inc eax
cmp esi, dword [edi + 0x58]
jae 0x44cacd
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x44c7e9
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x467660]
mov ebx, dword [eax*4 + 0x467644]
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 0x44c7e8
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 0x44c7cf
inc eax
cmp edx, 0x100
jae 0x44c7fe
mov ecx, dword [edi + 0x28]
test byte [edx + ecx], 4
jne 0x44cacd
add esi, eax
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jl 0x44c78e
jmp 0x44cacd
cmp edx, ecx
mov dword [ebp + 0x18], edx
jge 0x44cacd
xor eax, eax
inc eax
cmp esi, dword [edi + 0x58]
jae 0x44cacd
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x44c876
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x467660]
mov ebx, dword [eax*4 + 0x467644]
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 0x44c875
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 0x44c85c
inc eax
cmp edx, 0x100
jae 0x44cacd
mov ecx, dword [edi + 0x28]
test byte [edx + ecx], 4
je 0x44cacd
add esi, eax
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jl 0x44c81b
jmp 0x44cacd
cmp edx, ecx
mov dword [ebp + 0x18], edx
jge 0x44cacd
xor eax, eax
inc eax
cmp esi, dword [edi + 0x58]
jae 0x44cacd
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x44c90b
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x467660]
mov ebx, dword [eax*4 + 0x467644]
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 0x44c90a
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 0x44c8f1
inc eax
cmp edx, 0x100
jae 0x44c920
mov ecx, dword [edi + 0x28]
test byte [edx + ecx], 1
jne 0x44cacd
add esi, eax
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jl 0x44c8b0
jmp 0x44cacd
cmp edx, ecx
mov dword [ebp + 0x18], edx
jge 0x44cacd
xor eax, eax
inc eax
cmp esi, dword [edi + 0x58]
jae 0x44cacd
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x44c998
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x467660]
mov ebx, dword [eax*4 + 0x467644]
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 0x44c997
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 0x44c97e
inc eax
cmp edx, 0x100
jae 0x44cacd
mov ecx, dword [edi + 0x28]
test byte [edx + ecx], 1
je 0x44cacd
add esi, eax
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jl 0x44c93d
jmp 0x44cacd
cmp edx, ecx
mov dword [ebp + 0x18], edx
jge 0x44cacd
xor eax, eax
inc eax
cmp esi, dword [edi + 0x58]
jae 0x44cacd
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x44ca2d
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x467660]
mov ebx, dword [eax*4 + 0x467644]
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 0x44ca2c
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 0x44ca13
inc eax
cmp edx, 0x100
jae 0x44ca42
mov ecx, dword [edi + 0x28]
test byte [edx + ecx], 0x10
jne 0x44cacd
add esi, eax
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jl 0x44c9d2
jmp 0x44cacd
cmp edx, ecx
mov dword [ebp + 0x18], edx
jge 0x44cacd
xor eax, eax
inc eax
cmp esi, dword [edi + 0x58]
jae 0x44cacd
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x44caaf
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x467660]
mov ebx, dword [eax*4 + 0x467644]
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 0x44caae
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 0x44ca95
inc eax
cmp edx, 0x100
jae 0x44cacd
mov ecx, dword [edi + 0x28]
test byte [edx + ecx], 0x10
je 0x44cacd
add esi, eax
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jl 0x44ca58
cmp dword [ebp - 0x1c], 0
jne 0x449e0f
mov ebx, dword [ebp + 0x28]
inc ebx
jmp 0x44e0a1
add eax, 0xfffffffa
cmp eax, 0xe
ja case.0x44df7b.14
jmp dword [eax*4 + 0x44e303]
test byte [ebp + 0x1c], 4
jne case.0x44caec.13
cmp edx, ecx
mov ebx, edx
jge 0x44cdb1
mov eax, dword [edi + 0x58]
cmp esi, eax
jae 0x44cdb1
mov ecx, dword [edi + 0x18]
test ecx, ecx
je 0x44cb30
push 0
lea edx, [edi + 0x1c]
push edx
push eax
push ecx
push esi
call fcn.0044ec23
add esp, 0x14
test eax, eax
jne 0x44cdb1
jmp 0x44cb55
mov ecx, dword [edi + 0x1c]
sub eax, ecx
cmp esi, eax
ja 0x44cb55
mov al, byte [esi]
cmp al, byte [edi + 0x20]
jne 0x44cb55
cmp ecx, 1
je 0x44cdb1
mov al, byte [esi + 1]
cmp al, byte [edi + 0x21]
je 0x44cdb1
inc esi
inc ebx
cmp ebx, dword [ebp - 4]
jl 0x44cb03
jmp 0x44cdb1
mov eax, dword [edi + 0x58]
sub ecx, edx
sub eax, esi
cmp ecx, eax
jbe 0x44cb6e
mov ecx, eax
add esi, ecx
jmp 0x44cdb1
cmp edx, ecx
jge 0x44cdb1
mov ecx, dword [edi + 0x58]
cmp esi, ecx
jae 0x44cdb1
movzx eax, byte [esi]
cmp eax, 0xd
jne 0x44cba0
inc esi
cmp esi, ecx
jae 0x44cdb1
cmp byte [esi], 0xa
jne 0x44cbc5
jmp 0x44cbc4
cmp eax, 0xa
je 0x44cbc4
cmp dword [edi + 0x4c], 0
jne 0x44cdb1
cmp eax, 0xb
je 0x44cbc4
cmp eax, 0xc
je 0x44cbc4
cmp eax, 0x85
jne 0x44cdb1
inc esi
inc edx
cmp edx, dword [ebp - 4]
jl 0x44cb80
jmp 0x44cdb1
cmp edx, ecx
jge 0x44cdb1
mov ecx, dword [edi + 0x58]
cmp esi, ecx
jae 0x44cdb1
movzx eax, byte [esi]
cmp eax, 9
je 0x44cdb1
cmp eax, 0x20
je 0x44cdb1
cmp eax, 0xa0
je 0x44cdb1
inc esi
inc edx
cmp edx, dword [ebp - 4]
jl 0x44cbdb
jmp 0x44cdb1
cmp edx, ecx
jge 0x44cdb1
mov ecx, dword [edi + 0x58]
cmp esi, ecx
jae 0x44cdb1
movzx eax, byte [esi]
cmp eax, 9
je 0x44cc3a
cmp eax, 0x20
je 0x44cc3a
cmp eax, 0xa0
jne 0x44cdb1
inc esi
inc edx
cmp edx, dword [ebp - 4]
jl 0x44cc1a
jmp 0x44cdb1
cmp edx, ecx
jge 0x44cdb1
mov ecx, dword [edi + 0x58]
cmp esi, ecx
jae 0x44cdb1
movzx eax, byte [esi]
cmp eax, 0xa
je 0x44cdb1
cmp eax, 0xb
je 0x44cdb1
cmp eax, 0xc
je 0x44cdb1
cmp eax, 0xd
je 0x44cdb1
cmp eax, 0x85
je 0x44cdb1
inc esi
inc edx
cmp edx, dword [ebp - 4]
jl 0x44cc51
jmp 0x44cdb1
cmp edx, ecx
jge 0x44cdb1
mov ecx, dword [edi + 0x58]
cmp esi, ecx
jae 0x44cdb1
movzx eax, byte [esi]
cmp eax, 0xa
je 0x44cccc
cmp eax, 0xb
je 0x44cccc
cmp eax, 0xc
je 0x44cccc
cmp eax, 0xd
je 0x44cccc
cmp eax, 0x85
jne 0x44cdb1
inc esi
inc edx
cmp edx, dword [ebp - 4]
jl 0x44cca2
jmp 0x44cdb1
cmp edx, ecx
jge 0x44cdb1
mov eax, dword [edi + 0x58]
cmp esi, eax
jae 0x44cdb1
movzx ecx, byte [esi]
mov ebx, dword [edi + 0x28]
test byte [ecx + ebx], 4
jne 0x44cdb1
inc esi
inc edx
cmp edx, dword [ebp - 4]
jl 0x44cce3
jmp 0x44cdb1
cmp edx, ecx
jge 0x44cdb1
mov eax, dword [edi + 0x58]
cmp esi, eax
jae 0x44cdb1
movzx ecx, byte [esi]
mov ebx, dword [edi + 0x28]
test byte [ecx + ebx], 4
je 0x44cdb1
inc esi
inc edx
cmp edx, dword [ebp - 4]
jl 0x44cd12
jmp 0x44cdb1
cmp edx, ecx
jge 0x44cdb1
mov eax, dword [edi + 0x58]
cmp esi, eax
jae 0x44cdb1
movzx ecx, byte [esi]
mov ebx, dword [edi + 0x28]
test byte [ecx + ebx], 1
jne 0x44cdb1
inc esi
inc edx
cmp edx, dword [ebp - 4]
jl 0x44cd3a
jmp 0x44cdb1
cmp edx, ecx
jge 0x44cdb1
mov eax, dword [edi + 0x58]
cmp esi, eax
jae 0x44cdb1
movzx ecx, byte [esi]
mov ebx, dword [edi + 0x28]
test byte [ecx + ebx], 1
je 0x44cdb1
inc esi
inc edx
cmp edx, dword [ebp - 4]
jl 0x44cd5a
jmp 0x44cdb1
cmp edx, ecx
jge 0x44cdb1
mov eax, dword [edi + 0x58]
cmp esi, eax
jae 0x44cdb1
movzx ecx, byte [esi]
mov ebx, dword [edi + 0x28]
test byte [ecx + ebx], 0x10
jne 0x44cdb1
inc esi
inc edx
cmp edx, dword [ebp - 4]
jl 0x44cd7a
jmp 0x44cdb1
cmp edx, ecx
jge 0x44cdb1
mov eax, dword [edi + 0x58]
cmp esi, eax
jae 0x44cdb1
movzx ecx, byte [esi]
mov ebx, dword [edi + 0x28]
test byte [ecx + ebx], 0x10
je 0x44cdb1
inc esi
inc edx
cmp edx, dword [ebp - 4]
jl 0x44cd9a
cmp dword [ebp - 0x1c], 0
jne 0x449e0f
cmp esi, dword [ebp - 0x14]
jb case.0x449e46.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.00449dc3
add esp, 0x24
dec esi
test eax, eax
jne 0x44e0c6
cmp esi, dword [ebp - 0x14]
jae 0x44cdc8
jmp case.0x449e46.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 0x44ce1d
xor ecx, ecx
mov ch, byte [eax + 1]
mov cl, byte [eax + 2]
add eax, ecx
cmp byte [eax], 0x53
je 0x44ce0b
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 0x44d19b
mov dword [ebp + 0x24], edx
jmp 0x44cf8c
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 0x44d0a4
cmp ecx, 0x60
mov dword [ebp + 0x24], 2
jge 0x44ce5f
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 0x44cec2
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 + 0x4675a0]
push dword [ebp + 0x1c]
add eax, ebx
push edi
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push eax
push esi
call fcn.00449dc3
add esp, 0x24
test eax, eax
je 0x44ceaa
cmp eax, 0xfffffc1c
jne 0x44e0c6
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 0x44ce70
cmp dword [ebp + 0x24], 0
jne 0x44d16b
movzx eax, byte [ebx]
movzx eax, byte [eax + 0x4675a0]
add ebx, eax
mov dword [ebp + 0xc], ebx
jmp 0x44cf8c
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.00449dc3
add esp, 0x24
test eax, eax
jne 0x44e0c6
mov eax, dword [ebp - 0x20]
jmp 0x44a1d7
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 0x44cf5d
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.00449dc3
add esp, 0x24
test eax, eax
jne 0x44e0c6
cmp dword [ebp + 0x24], eax
jne 0x44d321
mov eax, dword [ebp + 0x18]
mov dword [ebp + 0xc], eax
jmp 0x44cf8c
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.00449dc3
add esp, 0x24
test eax, eax
jne 0x44e0c6
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 0x449de6
inc dword [edi]
push 0xfffffffffffffff8
jmp 0x44e0c5
push 0xffffffffffffffeb
jmp 0x44e0c5
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 + 0x4675a0]
push dword [ebp + 0x1c]
add eax, ebx
push edi
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push eax
push esi
call fcn.00449dc3
add esp, 0x24
test eax, eax
jne 0x44e0c6
mov eax, 0xfffffc1a
jmp 0x44e0c6
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 + 0x4675a0]
push dword [ebp + 0x1c]
add eax, ebx
push edi
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push eax
push esi
call fcn.00449dc3
add esp, 0x24
test eax, eax
jne 0x44e0c6
mov eax, 0xfffffc19
jmp 0x44e0c6
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 + 0x4675a0]
push dword [ebp + 0x1c]
add eax, ebx
push edi
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push eax
push esi
call fcn.00449dc3
add esp, 0x24
test eax, eax
jne 0x44e0c6
mov dword [edi + 0x5c], esi
mov eax, 0xfffffc1b
jmp 0x44e0c6
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 + 0x4675a0]
push dword [ebp + 0x1c]
add eax, ebx
push edi
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push eax
push esi
call fcn.00449dc3
add esp, 0x24
test eax, eax
jne 0x44e0c6
mov eax, 0xfffffc1c
jmp 0x44e0c6
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 0x44d0e3
mov dword [ebp + 0x24], 2
jmp 0x44d0e7
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 + 0x4675a0]
push dword [ebp + 0x1c]
add ecx, eax
push edi
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push ecx
push esi
call fcn.00449dc3
add esp, 0x24
test eax, eax
je 0x44d129
cmp eax, 0xfffffc1c
jne 0x44e0c6
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 0x44d0ee
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.0x449e46.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 + 0x4675a0]
push dword [ebp + 0x1c]
add eax, ebx
push edi
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push eax
push esi
call fcn.00449dc3
add esp, 0x24
jmp 0x44e0c6
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 0x44d18d
cmp dword [edi + 0x40], 0
je 0x44d1c1
cmp esi, dword [ebp + 0x10]
je case.0x449e46.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 0x44e0c6
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 0x44d1f2
and dword [ebp - 0x38], 0
jmp 0x44d1fd
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 0x44d225
lea ecx, [ebp - 0xec]
mov dword [ebp - 0x2c], ecx
jmp 0x44d241
shl eax, 2
push eax
call dword [0x47203c]
test eax, eax
pop ecx
mov dword [ebp - 0x2c], eax
jne 0x44d23e
push 0xfffffffffffffffa
jmp 0x44e0c5
mov eax, dword [ebp - 0x28]
shl eax, 2
push eax
push dword [edi + 0xc]
push dword [ebp - 0x2c]
call fcn.0044f8e0
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 + 0x4675a0]
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.00449dc3
add esp, 0x24
cmp eax, 1
je 0x44d2fd
test eax, eax
je 0x44d2a8
cmp eax, 0xfffffc1c
jne 0x44e0c6
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.0044f8e0
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 0x44d26e
mov eax, dword [ebp - 0x3c]
mov dword [edi + 0x78], eax
lea eax, [ebp - 0xec]
cmp dword [ebp - 0x2c], eax
je case.0x449e46.108
push dword [ebp - 0x2c]
call dword [0x472040]
pop ecx
jmp case.0x449e46.108
mov eax, dword [ebp - 0x3c]
mov dword [edi + 0x78], eax
lea eax, [ebp - 0xec]
cmp dword [ebp - 0x2c], eax
je 0x44d1d0
push dword [ebp - 0x2c]
call dword [0x472040]
pop ecx
jmp 0x44d1d0
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 0x44d18d
mov eax, dword [ebp + 0x14]
mov dword [edi + 0x64], eax
jmp 0x44d1cd
mov eax, dword [ebp - 4]
cmp dword [ebp + 0x18], eax
jge case.0x449e46.108
push dword [ebp + 0x1c]
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0xc]
push esi
mov ecx, edi
call fcn.00449d65
test eax, eax
pop ecx
pop ecx
je case.0x449e46.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.00449dc3
add esp, 0x24
test eax, eax
je 0x44d346
jmp 0x44e0c6
cmp ebx, dword [ebp - 4]
mov dword [ebp - 0x14], esi
jge 0x44d3c9
push dword [ebp + 0x1c]
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0xc]
push esi
mov ecx, edi
call fcn.00449d65
test eax, eax
pop ecx
pop ecx
je 0x44d3c0
add esi, dword [ebp - 0x10]
inc ebx
cmp ebx, dword [ebp - 4]
jl 0x44d3a0
cmp esi, dword [ebp - 0x14]
jb case.0x449e46.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.00449dc3
add esp, 0x24
test eax, eax
jne 0x44e0c6
sub esi, dword [ebp - 0x10]
cmp esi, dword [ebp - 0x14]
jae 0x44d3cd
jmp case.0x449e46.108
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jge case.0x449e46.108
cmp esi, dword [edi + 0x58]
jae case.0x449e46.108
movzx eax, byte [esi]
inc esi
cmp eax, 0xc0
jb 0x44d45b
mov ecx, eax
and ecx, 0x3f
movzx edx, byte [ecx + 0x467660]
mov ebx, dword [edx*4 + 0x467644]
mov ecx, edx
imul ecx, ecx, 6
and ebx, eax
shl ebx, cl
test edx, edx
mov eax, ebx
jle 0x44d45b
jmp 0x44d445
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 0x44d442
cmp eax, 0xff
jbe 0x44d468
cmp dword [ebp - 8], 0x4d
jmp 0x44d47d
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.0x449e46.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.00449dc3
add esp, 0x24
test eax, eax
je 0x44d3fe
jmp 0x44e0c6
mov ebx, dword [ebp + 0x28]
inc ebx
jmp 0x44d4ee
mov eax, dword [ebp - 4]
cmp dword [ebp + 0x18], eax
jge case.0x449e46.108
cmp esi, dword [edi + 0x58]
jae case.0x449e46.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.0x449e46.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.00449dc3
add esp, 0x24
test eax, eax
je 0x44d4b7
jmp 0x44e0c6
cmp dword [ebp - 0x18], eax
mov dword [ebp - 0x14], esi
je 0x44d611
cmp edx, dword [ebp - 4]
mov dword [ebp + 0x18], edx
jge 0x44d5cb
cmp esi, dword [edi + 0x58]
mov dword [ebp - 0x20], 1
jae 0x44d5cb
movzx eax, byte [esi]
cmp eax, 0xc0
jb 0x44d595
mov ecx, eax
and ecx, 0x3f
movzx edx, byte [ecx + 0x467660]
mov ebx, dword [edx*4 + 0x467644]
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 0x44d58e
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 0x44d572
mov ebx, dword [ebp + 0xc]
inc edx
mov dword [ebp - 0x20], edx
cmp eax, 0xff
jbe 0x44d5a2
cmp dword [ebp - 8], 0x4d
jmp 0x44d5b7
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 0x44d5cb
add esi, dword [ebp - 0x20]
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jl 0x44d52b
mov eax, dword [ebp + 0x28]
inc eax
mov dword [ebp - 0x10], eax
push eax
jmp 0x44d5ef
mov eax, esi
dec esi
cmp eax, dword [ebp - 0x14]
je case.0x449e46.108
jmp 0x44d5e4
dec esi
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
je 0x44d5e3
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.00449dc3
add esp, 0x24
test eax, eax
je 0x44d5d5
jmp 0x44e0c6
cmp edx, dword [ebp - 4]
jge 0x44d645
cmp esi, dword [edi + 0x58]
jae 0x44d63c
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 0x44d63c
inc esi
inc edx
cmp edx, dword [ebp - 4]
jl 0x44d616
cmp esi, dword [ebp - 0x14]
jb case.0x449e46.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.00449dc3
add esp, 0x24
test eax, eax
jne 0x44e0c6
dec esi
cmp esi, dword [ebp - 0x14]
jae 0x44d649
jmp case.0x449e46.108
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jge case.0x449e46.108
cmp esi, dword [edi + 0x58]
jae case.0x449e46.108
movzx eax, byte [esi]
inc esi
cmp eax, 0xc0
mov dword [ebp - 8], eax
jb 0x44d6cf
and eax, 0x3f
movzx eax, byte [eax + 0x467660]
mov edx, dword [eax*4 + 0x467644]
and edx, dword [ebp - 8]
mov ecx, eax
imul ecx, ecx, 6
shl edx, cl
mov dword [ebp - 8], edx
jmp 0x44d6cb
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 0x44d6bb
push dword [ebp - 0x1c]
push dword [ebp - 8]
call fcn.0044f011
test eax, eax
pop ecx
pop ecx
je case.0x449e46.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.00449dc3
add esp, 0x24
test eax, eax
je 0x44d678
jmp 0x44e0c6
mov dword [ebp - 0x14], esi
mov dword [ebp + 0x18], eax
jmp 0x44d78a
xor ebx, ebx
inc ebx
cmp esi, dword [edi + 0x58]
jae 0x44d78f
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x44d773
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x467660]
mov ebx, dword [eax*4 + 0x467644]
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 0x44d770
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 0x44d757
lea ebx, [eax + 1]
push dword [ebp - 0x1c]
push edx
call fcn.0044f011
test eax, eax
pop ecx
pop ecx
je 0x44d78f
add esi, ebx
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jl 0x44d71a
mov ebx, dword [ebp + 0x28]
inc ebx
jmp 0x44d7b2
mov eax, esi
dec esi
cmp eax, dword [ebp - 0x14]
je case.0x449e46.108
cmp dword [ebp - 0x18], 0
je 0x44d7b2
jmp 0x44d7aa
dec esi
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
je 0x44d7a9
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.00449dc3
add esp, 0x24
test eax, eax
je 0x44d795
jmp 0x44e0c6
mov dword [ebp + 0x18], ebx
mov ebx, dword [ebp + 0x28]
inc ebx
jmp 0x44d812
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jge case.0x449e46.108
cmp esi, dword [edi + 0x58]
jae case.0x449e46.108
push dword [ebp - 0x10]
push dword [ebp - 0xc]
push esi
call fcn.0044fc45
add esp, 0xc
test eax, eax
jne case.0x449e46.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.00449dc3
add esp, 0x24
test eax, eax
je 0x44d7e0
jmp 0x44e0c6
cmp esi, dword [ebp - 0x14]
je case.0x449e46.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.00449dc3
add esp, 0x24
test eax, eax
je 0x44d837
jmp 0x44e0c6
mov dword [ebp + 0x18], ebx
mov ebx, dword [ebp + 0x28]
inc ebx
jmp 0x44d89d
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jge case.0x449e46.108
cmp esi, dword [edi + 0x58]
jae case.0x449e46.108
movzx eax, byte [esi]
mov ecx, dword [edi + 0x24]
movzx eax, byte [eax + ecx]
inc esi
cmp dword [ebp - 8], eax
jne case.0x449e46.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.00449dc3
add esp, 0x24
test eax, eax
je 0x44d871
jmp 0x44e0c6
mov dword [ebp + 0x18], ebx
mov ebx, dword [ebp + 0x28]
inc ebx
jmp 0x44d8f0
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jge case.0x449e46.108
cmp esi, dword [edi + 0x58]
jae case.0x449e46.108
movzx eax, byte [esi]
inc esi
cmp dword [ebp - 8], eax
jne case.0x449e46.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.00449dc3
add esp, 0x24
test eax, eax
je 0x44d8cb
jmp 0x44e0c6
cmp dword [ebp - 0x18], ecx
mov dword [ebp + 0x18], edx
je 0x44d9de
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 0x44d9c8
movzx edx, byte [esi]
inc esi
cmp edx, 0xc0
jb 0x44d983
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x467660]
mov ebx, dword [eax*4 + 0x467644]
mov ecx, eax
imul ecx, ecx, 6
and ebx, edx
shl ebx, cl
mov edx, ebx
jmp 0x44d97c
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 0x44d96a
cmp edx, 0x100
jae 0x44d992
mov eax, dword [edi + 0x24]
movzx edx, byte [eax + edx]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jge case.0x449e46.108
cmp esi, dword [edi + 0x58]
jae case.0x449e46.108
cmp dword [ebp - 8], edx
je case.0x449e46.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.00449dc3
add esp, 0x24
test eax, eax
je 0x44d93e
jmp 0x44e0c6
mov ebx, dword [ebp + 0x28]
inc ebx
jmp 0x44da10
mov eax, dword [ebp - 4]
cmp dword [ebp + 0x18], eax
jge case.0x449e46.108
cmp esi, dword [edi + 0x58]
jae case.0x449e46.108
movzx eax, byte [esi]
mov ecx, dword [edi + 0x24]
movzx eax, byte [eax + ecx]
inc esi
cmp dword [ebp - 8], eax
je case.0x449e46.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.00449dc3
add esp, 0x24
test eax, eax
je 0x44d9e4
jmp 0x44e0c6
mov eax, esi
dec esi
cmp eax, dword [ebp - 0x14]
je case.0x449e46.108
jmp 0x44da44
dec esi
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
je 0x44da43
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.00449dc3
add esp, 0x24
test eax, eax
je 0x44da35
jmp 0x44e0c6
cmp dword [ebp - 0x18], ecx
mov dword [ebp + 0x18], edx
je 0x44db27
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 0x44db11
movzx edx, byte [esi]
inc esi
cmp edx, 0xc0
jb 0x44dadb
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x467660]
mov ebx, dword [eax*4 + 0x467644]
mov ecx, eax
imul ecx, ecx, 6
and ebx, edx
shl ebx, cl
mov edx, ebx
jmp 0x44dad4
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 0x44dac2
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jge case.0x449e46.108
cmp esi, dword [edi + 0x58]
jae case.0x449e46.108
cmp dword [ebp - 8], edx
je case.0x449e46.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.00449dc3
add esp, 0x24
test eax, eax
je 0x44da96
jmp 0x44e0c6
mov ebx, dword [ebp + 0x28]
inc ebx
push ebx
push ecx
jmp 0x44db57
mov eax, dword [ebp - 4]
cmp dword [ebp + 0x18], eax
jge case.0x449e46.108
cmp esi, dword [edi + 0x58]
jae case.0x449e46.108
movzx eax, byte [esi]
inc esi
cmp dword [ebp - 8], eax
je case.0x449e46.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.00449dc3
add esp, 0x24
test eax, eax
je 0x44db2f
jmp 0x44e0c6
mov eax, esi
dec esi
cmp eax, dword [ebp - 0x14]
je case.0x449e46.108
jmp 0x44db88
dec esi
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
je 0x44db87
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.00449dc3
add esp, 0x24
test eax, eax
je 0x44db79
jmp 0x44e0c6
push 0xfffffffffffffff2
jmp 0x44e0c5
cmp dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x14]
mov dword [ebp + 0x18], eax
mov eax, dword [ebp + 0x28]
je 0x44defa
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.00449dc3
add esp, 0x24
test eax, eax
jne 0x44e0c6
mov ebx, 0x100
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jge case.0x449e46.108
mov eax, dword [edi + 0x58]
cmp esi, eax
jae case.0x449e46.108
cmp dword [ebp - 0xc], 0xc
jne 0x44dc64
test byte [ebp + 0x1c], 4
jne 0x44dc64
mov ecx, dword [edi + 0x18]
test ecx, ecx
je 0x44dc3f
push dword [ebp - 0x18]
lea edx, [edi + 0x1c]
push edx
push eax
push ecx
push esi
call fcn.0044ec23
add esp, 0x14
test eax, eax
jne case.0x449e46.108
jmp 0x44dc64
mov ecx, dword [edi + 0x1c]
sub eax, ecx
cmp esi, eax
ja 0x44dc64
mov al, byte [esi]
cmp al, byte [edi + 0x20]
jne 0x44dc64
cmp ecx, 1
je case.0x449e46.108
mov al, byte [esi + 1]
cmp al, byte [edi + 0x21]
je case.0x449e46.108
movzx eax, byte [esi]
inc esi
cmp eax, 0xc0
jb 0x44dcb1
mov ecx, eax
and ecx, 0x3f
movzx edx, byte [ecx + 0x467660]
mov ebx, dword [edx*4 + 0x467644]
mov ecx, edx
imul ecx, ecx, 6
and ebx, eax
shl ebx, cl
test edx, edx
mov eax, ebx
jle 0x44dcac
jmp 0x44dc96
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 0x44dc93
mov ebx, 0x100
mov ecx, dword [ebp - 0xc]
add ecx, 0xfffffffa
cmp ecx, 0xe
ja case.0x44df7b.14
jmp dword [ecx*4 + 0x44e33f]
cmp eax, 0xa
je case.0x44dcc0.12
jbe case.0x449e46.108
cmp eax, 0xc
jbe 0x44dcfd
cmp eax, 0xd
je 0x44dd0c
cmp eax, 0x85
je 0x44dcfd
cmp eax, 0x2027
jbe case.0x449e46.108
cmp eax, 0x2029
ja case.0x449e46.108
cmp dword [edi + 0x4c], 0
jne case.0x449e46.108
jmp case.0x44dcc0.12
cmp esi, dword [edi + 0x58]
jae case.0x44dcc0.12
cmp byte [esi], 0xa
jne case.0x44dcc0.12
inc esi
jmp case.0x44dcc0.12
mov ecx, 0x180e
cmp eax, ecx
ja 0x44dd5a
je case.0x449e46.108
cmp eax, 9
je case.0x449e46.108
cmp eax, 0x20
je case.0x449e46.108
cmp eax, 0xa0
je case.0x449e46.108
cmp eax, 0x1680
jmp 0x44dec6
cmp eax, 0x2000
jb case.0x44dcc0.12
cmp eax, 0x200a
jbe case.0x449e46.108
cmp eax, 0x202f
je case.0x449e46.108
cmp eax, 0x205f
je case.0x449e46.108
cmp eax, 0x3000
jmp 0x44dec6
mov ecx, 0x180e
cmp eax, ecx
ja 0x44ddc6
je case.0x44dcc0.12
cmp eax, 9
je case.0x44dcc0.12
cmp eax, 0x20
je case.0x44dcc0.12
cmp eax, 0xa0
je case.0x44dcc0.12
cmp eax, 0x1680
jmp 0x44dd01
cmp eax, 0x2000
jb case.0x449e46.108
cmp eax, 0x200a
jbe case.0x44dcc0.12
cmp eax, 0x202f
je case.0x44dcc0.12
cmp eax, 0x205f
je case.0x44dcc0.12
cmp eax, 0x3000
jmp 0x44dd01
cmp eax, 0xa
jb case.0x44dcc0.12
cmp eax, 0xd
jbe case.0x449e46.108
cmp eax, 0x85
je case.0x449e46.108
cmp eax, 0x2027
jbe case.0x44dcc0.12
cmp eax, 0x2029
jbe case.0x449e46.108
jmp case.0x44dcc0.12
cmp eax, 0xa
jb case.0x449e46.108
cmp eax, 0xd
jbe case.0x44dcc0.12
cmp eax, 0x85
je case.0x44dcc0.12
cmp eax, 0x2027
jbe case.0x449e46.108
cmp eax, 0x2029
ja case.0x449e46.108
jmp case.0x44dcc0.12
cmp eax, ebx
jae case.0x44dcc0.12
mov ecx, dword [edi + 0x28]
test byte [eax + ecx], 4
jmp 0x44dd01
cmp eax, ebx
jae case.0x449e46.108
mov ecx, dword [edi + 0x28]
test byte [eax + ecx], 4
jmp 0x44dec6
cmp eax, ebx
jae case.0x44dcc0.12
mov ecx, dword [edi + 0x28]
test byte [eax + ecx], 1
jmp 0x44dd01
cmp eax, ebx
jae case.0x449e46.108
mov ecx, dword [edi + 0x28]
test byte [eax + ecx], 1
jmp 0x44dec6
cmp eax, ebx
jae case.0x44dcc0.12
mov ecx, dword [edi + 0x28]
test byte [eax + ecx], 0x10
jmp 0x44dd01
cmp eax, ebx
jae case.0x449e46.108
mov ecx, dword [edi + 0x28]
test byte [eax + ecx], 0x10
je case.0x449e46.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.00449dc3
add esp, 0x24
test eax, eax
je 0x44dbf9
jmp 0x44e0c6
inc eax
mov dword [ebp - 0x10], eax
push eax
jmp 0x44e067
mov eax, dword [ebp - 4]
cmp dword [ebp + 0x18], eax
jge case.0x449e46.108
mov eax, dword [edi + 0x58]
cmp esi, eax
jae case.0x449e46.108
test byte [ebp + 0x1c], 4
jne 0x44df68
mov ecx, dword [edi + 0x18]
test ecx, ecx
je 0x44df43
push 0
lea edx, [edi + 0x1c]
push edx
push eax
push ecx
push esi
call fcn.0044ec23
add esp, 0x14
test eax, eax
jne case.0x449e46.108
jmp 0x44df68
mov ecx, dword [edi + 0x1c]
sub eax, ecx
cmp esi, eax
ja 0x44df68
mov al, byte [esi]
cmp al, byte [edi + 0x20]
jne 0x44df68
cmp ecx, 1
je case.0x449e46.108
mov al, byte [esi + 1]
cmp al, byte [edi + 0x21]
je case.0x449e46.108
mov ecx, dword [ebp - 0xc]
movzx eax, byte [esi]
add ecx, 0xfffffffa
inc esi
cmp ecx, 0xe
ja case.0x44df7b.14
jmp dword [ecx*4 + 0x44e37b]
cmp eax, 0xa
je case.0x44df7b.12
jbe case.0x449e46.108
cmp eax, 0xc
jbe 0x44dfa6
cmp eax, 0xd
je 0x44dfb5
cmp eax, 0x85
jne case.0x449e46.108
cmp dword [edi + 0x4c], 0
jne case.0x449e46.108
jmp case.0x44df7b.12
cmp esi, dword [edi + 0x58]
jae case.0x44df7b.12
cmp byte [esi], 0xa
jne case.0x44df7b.12
inc esi
jmp case.0x44df7b.12
cmp eax, 9
je case.0x449e46.108
cmp eax, 0x20
je case.0x449e46.108
cmp eax, 0xa0
jmp 0x44e05b
cmp eax, 9
je case.0x44df7b.12
cmp eax, 0x20
je case.0x44df7b.12
cmp eax, 0xa0
jmp 0x44dfaa
cmp eax, 0xa
jb case.0x44df7b.12
cmp eax, 0xd
jbe case.0x449e46.108
cmp eax, 0x85
jmp 0x44e05b
cmp eax, 0xa
jb case.0x449e46.108
cmp eax, 0xd
jbe case.0x44df7b.12
cmp eax, 0x85
jmp 0x44dfaa
mov ecx, dword [edi + 0x28]
test byte [eax + ecx], 4
jmp 0x44dfaa
mov ecx, dword [edi + 0x28]
test byte [eax + ecx], 4
jmp 0x44e05b
mov ecx, dword [edi + 0x28]
test byte [eax + ecx], 1
jmp 0x44dfaa
mov ecx, dword [edi + 0x28]
test byte [eax + ecx], 1
jmp 0x44e05b
mov ecx, dword [edi + 0x28]
test byte [eax + ecx], 0x10
jmp 0x44dfaa
mov ecx, dword [edi + 0x28]
test byte [eax + ecx], 0x10
je case.0x449e46.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.00449dc3
add esp, 0x24
test eax, eax
je 0x44df04
jmp 0x44e0c6
mov eax, esi
dec esi
cmp eax, dword [ebp - 0x14]
je case.0x449e46.108
jmp 0x44e099
dec esi
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
je 0x44e098
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.00449dc3
add esp, 0x24
test eax, eax
je 0x44e08a
jmp 0x44e0c6
push 0xfffffffffffffffb
pop eax
pop edi
pop esi
pop ebx
leave
ret