Function at 0x449da3
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 0x44cf7d
mov esi, dword [ebp + 8]
mov eax, dword [ebp + 0x28]
inc dword [edi]
cmp eax, dword [edi + 8]
jae 0x44cf86
test byte [ebp + 0x24], 2
mov eax, dword [ebp + 0x1c]
mov dword [ebp - 0x20], eax
je 0x449def
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 0x449e16
cmp esi, dword [edi + 0x58]
jb 0x449e16
cmp esi, dword [ebp + 0x10]
jbe 0x449e16
mov dword [edi + 0x48], 1
cmp ecx, 0x6d
ja case.0x449e26.14
movzx eax, byte [ecx + 0x44e1bf]
jmp dword [eax*4 + 0x44e0ab]
lea eax, [ebx + 3]
mov cl, byte [eax]
cmp cl, 0x64
jne 0x449e61
mov eax, dword [edi + 0x78]
xor ecx, ecx
cmp eax, edx
mov ch, byte [ebx + 4]
mov cl, byte [ebx + 5]
je 0x449e53
cmp ecx, 0xffff
je 0x449e7d
cmp ecx, dword [eax + 4]
je 0x449e7d
xor ecx, ecx
xor eax, eax
mov ah, byte [ebx + 1]
mov al, byte [ebx + 2]
add ebx, eax
jmp 0x449ed9
cmp cl, 0x63
jne 0x449e85
xor eax, eax
mov ah, byte [ebx + 4]
mov al, byte [ebx + 5]
add eax, eax
cmp eax, dword [ebp + 0x14]
jge 0x449e53
mov ecx, dword [edi + 0xc]
cmp dword [ecx + eax*4], edx
jl 0x449e53
xor ecx, ecx
push 3
inc ecx
pop eax
jmp 0x449e5d
cmp cl, 0x65
jne 0x449e96
xor eax, eax
mov ah, byte [ebx + 1]
mov al, byte [ebx + 2]
add ebx, eax
jmp 0x449ee1
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.00449da3
add esp, 0x24
cmp eax, 1
je 0x44cdd7
test eax, eax
je 0x449ecb
cmp eax, 0xfffffc1c
jne 0x44e0a6
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 0x44ce02
cmp byte [ebx], 0x53
je 0x44ce02
jmp 0x44a016
mov ebx, dword [edi + 0x78]
test ebx, ebx
je 0x44d192
cmp dword [ebx + 4], 0
jne 0x44d192
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.00452e10
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 0x449def
movzx eax, byte [ebx + 1]
mov dword [ebp + 0x1c], eax
inc ebx
inc ebx
jmp 0x44a019
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.00449da3
add esp, 0x24
cmp eax, 1
je 0x449f8e
test eax, eax
je 0x449f7f
cmp eax, 0xfffffc1c
jne 0x44e0a6
xor eax, eax
mov ah, byte [ebx + 1]
mov al, byte [ebx + 2]
add ebx, eax
cmp byte [ebx], 0x53
je 0x449f4d
cmp byte [ebx], 0x54
je case.0x449e26.108
test byte [ebp + 0x24], 1
jne 0x44d1b0
xor eax, eax
mov ah, byte [ebx + 1]
mov al, byte [ebx + 2]
add ebx, eax
cmp byte [ebx], 0x53
je 0x449fa1
mov eax, dword [edi + 0x64]
add ebx, 3
mov dword [ebp + 0xc], ebx
mov dword [ebp + 0x14], eax
jmp 0x449def
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.00449da3
add esp, 0x24
cmp eax, 1
je case.0x449e26.108
test eax, eax
je 0x449ffd
cmp eax, 0xfffffc1c
jne 0x44e0a6
xor eax, eax
mov ah, byte [ebx + 1]
mov al, byte [ebx + 2]
add ebx, eax
cmp byte [ebx], 0x53
je 0x449fcb
test byte [ebp + 0x24], 1
jne 0x44d1b0
add ebx, 3
mov dword [ebp + 0xc], ebx
jmp 0x449def
xor eax, eax
cmp dword [ebp - 0x18], edx
mov ah, byte [ebx + 1]
mov al, byte [ebx + 2]
je 0x44a053
cmp eax, edx
jle 0x44a016
mov ecx, dword [edi + 0x54]
dec eax
dec esi
cmp esi, ecx
jae 0x44a043
xor eax, eax
jmp 0x44e0a6
dec esi
mov dl, byte [esi]
and dl, 0xc0
cmp dl, 0x80
je 0x44a042
test eax, eax
jg 0x44a035
jmp 0x44a016
sub esi, eax
cmp esi, dword [edi + 0x54]
jb case.0x449e26.108
jmp 0x44a016
mov ecx, dword [0x4749c0]
cmp ecx, edx
je 0x44a0d9
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.0x449e26.108
jl 0x44e0a6
add ebx, 6
jmp 0x44a019
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.00449da3
add esp, 0x24
cmp eax, 1
je 0x44a133
test eax, eax
je 0x44a124
cmp eax, 0xfffffc1c
jne 0x44e0a6
xor eax, eax
mov ah, byte [ebx + 1]
mov al, byte [ebx + 2]
add ebx, eax
cmp byte [ebx], 0x53
je 0x44a0f1
mov al, byte [ebx]
cmp al, 0x5c
je 0x44a141
cmp al, 0x53
jne case.0x449e26.108
xor eax, eax
mov ah, byte [ebx + 1]
mov al, byte [ebx + 2]
add ebx, eax
cmp byte [ebx], 0x53
je 0x44a141
cmp byte [ebx], 0x54
mov eax, dword [edi + 0x64]
mov esi, dword [edi + 0x60]
mov dword [ebp + 0x14], eax
je 0x44a016
cmp esi, dword [ebp - 0x1c]
je 0x44a016
lea ecx, [ebx + 3]
cmp byte [ecx], 0x18
mov dword [ebp - 0x20], ecx
jne 0x44a185
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 0x44cec0
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.00449da3
add esp, 0x24
test eax, eax
jne 0x44e0a6
mov eax, dword [ebp + 0x18]
mov dword [ebp + 0xc], eax
jmp 0x44cf68
xor eax, eax
mov ah, byte [ebx + 1]
mov al, byte [ebx + 2]
add ebx, eax
cmp byte [ebx], 0x53
je case.0x449e26.83
jmp 0x44a019
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.00449da3
add esp, 0x24
test eax, eax
jne 0x44e0a6
xor eax, eax
mov ah, byte [ebx + 1]
mov al, byte [ebx + 2]
add ebx, eax
cmp byte [ebx], 0x53
je 0x44a1fd
jmp 0x44a016
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 0x44a214
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.00449da3
add esp, 0x24
test eax, eax
jne 0x44e0a6
jmp 0x44a019
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 0x44a26f
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 0x44d31b
cmp al, 0x58
je 0x44d31b
cmp al, 0x59
je 0x44d31b
cmp al, 0x5a
je 0x44d31b
cmp al, 0x5c
je 0x44d31b
cmp al, 0x5e
je 0x44a2a9
cmp al, 0x61
jne 0x44a32d
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 0x44a2c8
mov dword [edi + 0x2c], 1
jmp 0x44a2f0
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 0x44a2f0
add ecx, 2
mov dword [ebp + 0x14], ecx
mov ebx, dword [edi + 0x78]
test ebx, ebx
je 0x44a32d
cmp dword [ebx + 4], edx
jne 0x44a32d
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.0044f8c0
mov eax, dword [ebx + 8]
mov dword [ebp + 0xc], eax
mov eax, dword [ebp - 0x20]
add esp, 0xc
mov dword [ebp + 0x1c], eax
jmp 0x449def
mov eax, dword [ebp - 0x20]
mov dword [ebp + 0x1c], eax
mov eax, dword [ebp + 0xc]
cmp byte [eax], 0x54
je 0x44a344
cmp esi, dword [ebp - 0x1c]
jne 0x44cee9
add eax, 3
jmp 0x449f2d
cmp dword [edi + 0x30], edx
je 0x44a35a
cmp esi, dword [edi + 0x54]
je case.0x449e26.108
test byte [ebp + 0x1c], 2
je case.0x449e26.1
mov ecx, dword [edi + 0x54]
cmp esi, ecx
je 0x44a3c8
cmp esi, dword [edi + 0x58]
je case.0x449e26.108
mov eax, dword [edi + 0x18]
test eax, eax
je 0x44a39b
cmp esi, ecx
jbe case.0x449e26.108
push dword [ebp - 0x18]
lea edx, [edi + 0x1c]
push edx
push ecx
push eax
push esi
call fcn.0044ecce
add esp, 0x14
test eax, eax
je case.0x449e26.108
jmp 0x44a3c8
mov eax, dword [edi + 0x1c]
add ecx, eax
cmp esi, ecx
jb case.0x449e26.108
mov ecx, esi
sub ecx, eax
mov dl, byte [ecx]
cmp dl, byte [edi + 0x20]
jne case.0x449e26.108
cmp eax, 1
je 0x44a3c8
mov al, byte [ecx + 1]
cmp al, byte [edi + 0x21]
jne case.0x449e26.108
inc ebx
jmp 0x44a019
cmp esi, dword [edi + 0x54]
jmp 0x44a3c2
mov eax, dword [edi + 0x6c]
add eax, dword [edi + 0x54]
cmp esi, eax
jmp 0x44a3c2
mov dword [ebp + 0x10], esi
jmp 0x44a3c8
test byte [ebp + 0x1c], 2
je 0x44a42e
mov eax, dword [edi + 0x58]
cmp esi, eax
jae 0x44a429
mov ecx, dword [edi + 0x18]
test ecx, ecx
je 0x44a407
push dword [ebp - 0x18]
lea edx, [edi + 0x1c]
push edx
push eax
push ecx
push esi
call fcn.0044ec03
jmp 0x44a38e
mov ecx, dword [edi + 0x1c]
sub eax, ecx
cmp esi, eax
ja case.0x449e26.108
mov al, byte [esi]
cmp al, byte [edi + 0x20]
jne case.0x449e26.108
cmp ecx, 1
je 0x44a3c8
mov al, byte [esi + 1]
jmp 0x44a3bf
cmp dword [edi + 0x34], edx
jmp 0x44a3c2
cmp dword [edi + 0x34], edx
jne case.0x449e26.108
cmp dword [edi + 0x3c], edx
jne case.0x449e26.23
mov eax, dword [edi + 0x58]
cmp esi, eax
je 0x44a4a6
mov ecx, dword [edi + 0x18]
test ecx, ecx
je 0x44a46e
cmp esi, eax
jae case.0x449e26.108
push dword [ebp - 0x18]
lea ebx, [edi + 0x1c]
push ebx
push eax
push ecx
push esi
call fcn.0044ec03
add esp, 0x14
test eax, eax
je case.0x449e26.108
jmp 0x44a499
lea ebx, [edi + 0x1c]
mov ecx, dword [ebx]
sub eax, ecx
cmp esi, eax
ja case.0x449e26.108
mov al, byte [esi]
cmp al, byte [edi + 0x20]
jne case.0x449e26.108
cmp ecx, 1
je 0x44a499
mov al, byte [esi + 1]
cmp al, byte [edi + 0x21]
jne case.0x449e26.108
mov eax, dword [edi + 0x58]
sub eax, dword [ebx]
cmp esi, eax
jne case.0x449e26.108
inc dword [ebp + 0xc]
jmp 0x449def
cmp esi, dword [edi + 0x58]
jb case.0x449e26.108
jmp 0x44a3c8
cmp dword [ebp - 0x18], edx
je 0x44a5d1
cmp esi, dword [edi + 0x54]
jne 0x44a4d2
mov dword [ebp + 0x18], edx
jmp 0x44a55b
lea eax, [esi - 1]
jmp 0x44a4d8
dec eax
mov cl, byte [eax]
and cl, 0xc0
cmp cl, 0x80
je 0x44a4d7
movzx edx, byte [eax]
cmp edx, 0xc0
jb 0x44a53d
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 0x44a53a
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 0x44a51c
mov edx, dword [ebp - 8]
mov ebx, dword [ebp + 0xc]
cmp edx, 0x100
jae 0x44a557
mov eax, dword [edi + 0x28]
test byte [edx + eax], 0x10
je 0x44a557
mov dword [ebp + 0x18], 1
jmp 0x44a55b
and dword [ebp + 0x18], 0
cmp esi, dword [edi + 0x58]
jb 0x44a564
xor eax, eax
jmp 0x44a5cd
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x44a5b2
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 0x44a5b2
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 0x44a599
cmp edx, 0x100
jae 0x44a5c8
mov eax, dword [edi + 0x28]
test byte [edx + eax], 0x10
je 0x44a5c8
xor eax, eax
inc eax
jmp 0x44a5ca
xor eax, eax
mov ebx, dword [ebp + 0xc]
xor edx, edx
jmp 0x44a605
cmp esi, dword [edi + 0x54]
je 0x44a5ea
movzx eax, byte [esi - 1]
mov ecx, dword [edi + 0x28]
test byte [eax + ecx], 0x10
mov dword [ebp + 0x18], 1
jne 0x44a5ed
mov dword [ebp + 0x18], edx
cmp esi, dword [edi + 0x58]
jae 0x44a603
movzx eax, byte [esi]
mov ecx, dword [edi + 0x28]
test byte [eax + ecx], 0x10
je 0x44a603
xor eax, eax
inc eax
jmp 0x44a605
xor eax, eax
mov cl, byte [ebx]
inc ebx
cmp cl, 5
mov dword [ebp + 0xc], ebx
jne 0x44a61a
xor ecx, ecx
cmp eax, dword [ebp + 0x18]
sete cl
jmp 0x44a622
xor ecx, ecx
cmp eax, dword [ebp + 0x18]
setne cl
mov eax, ecx
cmp eax, edx
je 0x449def
jmp case.0x449e26.108
test byte [ebp + 0x1c], 4
jne 0x44a689
mov ecx, dword [edi + 0x18]
test ecx, ecx
je 0x44a661
mov eax, dword [edi + 0x58]
cmp esi, eax
jae 0x44a689
push dword [ebp - 0x18]
lea edx, [edi + 0x1c]
push edx
push eax
push ecx
push esi
call fcn.0044ec03
add esp, 0x14
test eax, eax
jne case.0x449e26.108
jmp 0x44a689
mov eax, dword [edi + 0x1c]
mov ecx, dword [edi + 0x58]
sub ecx, eax
cmp esi, ecx
ja 0x44a689
mov cl, byte [esi]
cmp cl, byte [edi + 0x20]
jne 0x44a689
cmp eax, 1
je case.0x449e26.108
mov al, byte [esi + 1]
cmp al, byte [edi + 0x21]
je case.0x449e26.108
mov eax, dword [edi + 0x58]
mov ecx, esi
inc esi
cmp ecx, eax
jae case.0x449e26.108
cmp dword [ebp - 0x18], 0
je 0x44a3c8
cmp esi, eax
jae 0x44a3c8
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x44a3c8
inc esi
cmp esi, dword [edi + 0x58]
jb 0x44a6a9
jmp 0x44a3c8
mov eax, esi
inc esi
cmp eax, dword [edi + 0x58]
jae case.0x449e26.108
jmp 0x44a3c8
cmp esi, dword [edi + 0x58]
jae case.0x449e26.108
movzx edx, byte [esi]
inc esi
cmp dword [ebp - 0x18], 0
je 0x44a725
cmp edx, 0xc0
jb 0x44a725
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 0x44a71e
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 0x44a70c
cmp edx, 0x100
jae 0x44a4a6
mov eax, dword [edi + 0x28]
test byte [edx + eax], 4
jmp 0x44a4a0
cmp esi, dword [edi + 0x58]
jae case.0x449e26.108
movzx edx, byte [esi]
inc esi
cmp dword [ebp - 0x18], 0
je 0x44a791
cmp edx, 0xc0
jb 0x44a791
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 0x44a78a
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 0x44a778
cmp edx, 0x100
jae case.0x449e26.108
mov eax, dword [edi + 0x28]
test byte [edx + eax], 4
je case.0x449e26.108
jmp 0x44a4a6
cmp esi, dword [edi + 0x58]
jae case.0x449e26.108
movzx edx, byte [esi]
inc esi
cmp dword [ebp - 0x18], 0
je 0x44a803
cmp edx, 0xc0
jb 0x44a803
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 0x44a7fc
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 0x44a7ea
cmp edx, 0x100
jae 0x44a4a6
mov eax, dword [edi + 0x28]
test byte [edx + eax], 1
jmp 0x44a4a0
cmp esi, dword [edi + 0x58]
jae case.0x449e26.108
movzx edx, byte [esi]
inc esi
cmp dword [ebp - 0x18], 0
je 0x44a86f
cmp edx, 0xc0
jb 0x44a86f
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 0x44a868
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 0x44a856
cmp edx, 0x100
jae case.0x449e26.108
mov eax, dword [edi + 0x28]
test byte [edx + eax], 1
jmp 0x44a7a4
cmp esi, dword [edi + 0x58]
jae case.0x449e26.108
movzx edx, byte [esi]
inc esi
cmp dword [ebp - 0x18], 0
je 0x44a8db
cmp edx, 0xc0
jb 0x44a8db
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 0x44a8d4
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 0x44a8c2
cmp edx, 0x100
jae 0x44a4a6
mov eax, dword [edi + 0x28]
test byte [edx + eax], 0x10
jmp 0x44a4a0
cmp esi, dword [edi + 0x58]
jae case.0x449e26.108
movzx edx, byte [esi]
inc esi
cmp dword [ebp - 0x18], 0
je 0x44a947
cmp edx, 0xc0
jb 0x44a947
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 0x44a940
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 0x44a92e
cmp edx, 0x100
jae case.0x449e26.108
mov eax, dword [edi + 0x28]
test byte [edx + eax], 0x10
jmp 0x44a7a4
cmp esi, dword [edi + 0x58]
jae case.0x449e26.108
movzx edx, byte [esi]
inc esi
cmp dword [ebp - 0x18], 0
je 0x44a9b3
cmp edx, 0xc0
jb 0x44a9b3
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 0x44a9ac
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 0x44a99a
cmp edx, 0xa
je 0x44a4a6
jbe case.0x449e26.108
cmp edx, 0xc
jbe 0x44a9ec
cmp edx, 0xd
je 0x44a9f5
cmp edx, 0x85
je 0x44a9ec
cmp edx, 0x2027
jbe case.0x449e26.108
cmp edx, 0x2029
ja case.0x449e26.108
cmp dword [edi + 0x4c], 0
jmp 0x44a4a0
cmp esi, dword [edi + 0x58]
jae 0x44a4a6
cmp byte [esi], 0xa
jne 0x44a4a6
inc esi
jmp 0x44a4a6
cmp esi, dword [edi + 0x58]
jae case.0x449e26.108
movzx eax, byte [esi]
inc esi
cmp dword [ebp - 0x18], edx
je 0x44aa63
cmp eax, 0xc0
jb 0x44aa63
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 0x44aa63
jmp 0x44aa4d
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 0x44aa4a
mov ecx, 0x180e
cmp eax, ecx
ja 0x44aa99
je case.0x449e26.108
cmp eax, 9
je case.0x449e26.108
cmp eax, 0x20
je case.0x449e26.108
cmp eax, 0xa0
je case.0x449e26.108
cmp eax, 0x1680
jmp 0x44a7a4
cmp eax, 0x2000
jb 0x44a4a6
cmp eax, 0x200a
jbe case.0x449e26.108
cmp eax, 0x202f
je case.0x449e26.108
cmp eax, 0x205f
je case.0x449e26.108
cmp eax, 0x3000
jmp 0x44a7a4
cmp esi, dword [edi + 0x58]
jae case.0x449e26.108
movzx eax, byte [esi]
inc esi
cmp dword [ebp - 0x18], edx
je 0x44ab25
cmp eax, 0xc0
jb 0x44ab25
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 0x44ab25
jmp 0x44ab0f
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 0x44ab0c
mov ecx, 0x180e
cmp eax, ecx
ja 0x44ab5b
je 0x44a4a6
cmp eax, 9
je 0x44a4a6
cmp eax, 0x20
je 0x44a4a6
cmp eax, 0xa0
je 0x44a4a6
cmp eax, 0x1680
jmp 0x44a4a0
cmp eax, 0x2000
jb case.0x449e26.108
cmp eax, 0x200a
jbe 0x44a4a6
cmp eax, 0x202f
je 0x44a4a6
cmp eax, 0x205f
je 0x44a4a6
cmp eax, 0x3000
jmp 0x44a4a0
cmp esi, dword [edi + 0x58]
jae case.0x449e26.108
movzx edx, byte [esi]
inc esi
cmp dword [ebp - 0x18], 0
je 0x44abe5
cmp edx, 0xc0
jb 0x44abe5
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 0x44abde
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 0x44abcc
cmp edx, 0xa
jb 0x44a4a6
cmp edx, 0xd
jbe case.0x449e26.108
cmp edx, 0x85
je case.0x449e26.108
cmp edx, 0x2027
jbe 0x44a4a6
cmp edx, 0x2029
jbe case.0x449e26.108
jmp 0x44a4a6
cmp esi, dword [edi + 0x58]
jae case.0x449e26.108
movzx edx, byte [esi]
inc esi
cmp dword [ebp - 0x18], 0
je 0x44ac74
cmp edx, 0xc0
jb 0x44ac74
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 0x44ac6d
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 0x44ac5b
cmp edx, 0xa
jb case.0x449e26.108
cmp edx, 0xd
jbe 0x44a4a6
cmp edx, 0x85
je 0x44a4a6
cmp edx, 0x2027
jbe case.0x449e26.108
cmp edx, 0x2029
ja case.0x449e26.108
jmp 0x44a4a6
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 0x44acda
mov eax, dword [edi + 0xc]
lea eax, [eax + edx*4]
mov ecx, dword [eax]
test ecx, ecx
jl 0x44acda
mov ebx, dword [eax + 4]
sub ebx, ecx
jmp 0x44ace0
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 0x44adb5
cmp al, 0x4a
jbe 0x44ad2f
cmp al, 0x4c
ja 0x44adb5
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 0x44ad27
mov dword [ebp - 4], connect
add eax, 5
mov dword [ebp + 0xc], eax
jmp 0x44ad5c
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 0x44ad5c
mov dword [ebp - 4], connect
cmp dword [ebp - 0x10], 0
je 0x449def
xor eax, eax
inc eax
cmp ebx, eax
mov dword [ebp + 0x18], eax
jl 0x44ad96
push dword [ebp + 0x1c]
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0xc]
push esi
mov ecx, edi
call fcn.00449d45
test eax, eax
pop ecx
pop ecx
je case.0x449e26.108
add esi, dword [ebp - 0x10]
inc dword [ebp + 0x18]
cmp dword [ebp + 0x18], ebx
jle 0x44ad70
cmp ebx, dword [ebp - 4]
je 0x449def
cmp dword [ebp - 0x24], 0
je 0x44d378
mov dword [ebp + 0x18], ebx
mov ebx, dword [ebp + 0x28]
inc ebx
jmp 0x44d353
push dword [ebp + 0x1c]
mov ecx, edi
push esi
mov eax, ebx
call fcn.00449d45
test eax, eax
pop ecx
pop ecx
je case.0x449e26.108
add esi, ebx
jmp 0x449def
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 0x44ae53
cmp al, 0x4a
jbe 0x44ae20
cmp al, 0x4c
ja 0x44ae53
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 0x44ae18
mov dword [ebp - 4], connect
add ebx, 5
mov dword [ebp + 0xc], ebx
jmp 0x44ae5c
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 0x44ae5c
mov dword [ebp - 4], connect
jmp 0x44ae5c
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 0x44af01
cmp edx, eax
jl 0x44af38
cmp esi, dword [edi + 0x58]
jae case.0x449e26.108
movzx eax, byte [esi]
inc esi
cmp eax, 0xc0
jb 0x44aec8
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 0x44aec5
jmp 0x44aeaf
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 0x44aeac
mov edx, dword [ebp - 0x14]
cmp eax, 0xff
jbe 0x44aed5
cmp dword [ebp - 8], 0x4d
jmp 0x44aeea
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.0x449e26.108
inc dword [ebp + 0x18]
cmp dword [ebp + 0x18], edx
jle 0x44ae74
mov ebx, dword [ebp + 0xc]
jmp 0x44af38
cmp edx, eax
jl 0x44af38
cmp esi, dword [edi + 0x58]
jae case.0x449e26.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.0x449e26.108
inc dword [ebp + 0x18]
mov edx, dword [ebp - 0x14]
cmp dword [ebp + 0x18], edx
jle 0x44af05
cmp edx, dword [ebp - 4]
je 0x449def
xor eax, eax
cmp dword [ebp - 0x24], eax
je 0x44d4f3
cmp dword [ebp - 0x18], eax
mov dword [ebp + 0x18], edx
je 0x44d491
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 0x44d47b
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 0x44affc
cmp al, 0x4a
jbe 0x44afc9
cmp al, 0x4c
ja 0x44affc
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 0x44afc1
mov dword [ebp - 4], connect
add ebx, 5
mov dword [ebp + 0xc], ebx
jmp 0x44b005
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 0x44b005
mov dword [ebp - 4], connect
jmp 0x44b005
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 0x44b080
cmp esi, dword [edi + 0x58]
jae case.0x449e26.108
movzx eax, byte [esi]
inc esi
cmp eax, 0xc0
mov dword [ebp - 8], eax
jb 0x44b05b
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 0x44b057
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 0x44b047
push dword [ebp - 0x1c]
push dword [ebp - 8]
call fcn.0044eff1
test eax, eax
pop ecx
pop ecx
je case.0x449e26.108
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 0x14]
jle 0x44b010
mov ebx, dword [ebp + 0xc]
xor edx, edx
mov eax, dword [ebp - 0x14]
cmp eax, dword [ebp - 4]
je 0x449def
cmp dword [ebp - 0x24], edx
je 0x44d6f2
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 0x44d6dc
cmp dword [ebp - 0x18], edx
je 0x44b100
xor ecx, ecx
inc ecx
inc ebx
movzx eax, byte [ebx]
cmp eax, 0xc0
mov dword [ebp + 0xc], ebx
jb 0x44b0d6
and eax, 0x3f
movzx ecx, byte [eax + 0x467660]
inc ecx
mov eax, dword [edi + 0x58]
sub eax, esi
cmp ecx, eax
jg case.0x449e26.108
jmp 0x44b0f7
mov dl, byte [esi]
mov al, byte [ebx]
dec ecx
inc esi
inc ebx
cmp al, dl
mov dword [ebp + 0xc], ebx
jne case.0x449e26.108
test ecx, ecx
jg 0x44b0e5
jmp 0x449def
mov eax, dword [edi + 0x58]
sub eax, esi
cmp eax, 1
jl case.0x449e26.108
mov al, byte [esi]
inc esi
cmp byte [ebx + 1], al
jne case.0x449e26.108
jmp 0x449f3c
cmp dword [ebp - 0x18], edx
je 0x44b214
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 0x44b195
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 0x44b18b
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 0x44b16e
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.0x449e26.108
cmp dword [ebp - 8], 0x80
jae 0x44b1c1
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 0x44a626
movzx eax, byte [esi]
inc esi
cmp eax, 0xc0
mov dword [ebp + 0x18], eax
jb 0x44b203
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 0x44b1ff
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 0x44b1ef
mov eax, dword [ebp - 0x10]
add dword [ebp + 0xc], eax
mov eax, dword [ebp + 0x18]
cmp dword [ebp - 8], eax
jmp 0x44a626
mov eax, dword [edi + 0x58]
sub eax, esi
cmp eax, 1
jl case.0x449e26.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 0x44b114
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 0x44b2c8
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 0x44b246
mov dword [ebp - 0x1c], 1
xor ebx, ebx
inc dword [ebp + 0xc]
jmp 0x44b2c1
xor ebx, ebx
inc ebx
mov dword [ebp - 0x1c], ebx
jmp 0x44b27b
xor eax, eax
inc eax
xor ebx, ebx
inc dword [ebp + 0xc]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], eax
jmp 0x44b2c8
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 0x44b2c8
mov dword [ebp - 4], connect
cmp dword [ebp - 0x18], 0
je 0x44b3e4
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 0x44b346
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 0x44b342
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 0x44b31f
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.0x449e26.108
mov ecx, dword [ebp - 0x10]
add dword [ebp + 0xc], ecx
xor edx, edx
inc edx
cmp ecx, edx
jle 0x44b400
cmp ebx, edx
mov dword [ebp + 0x18], edx
jl 0x44b393
push dword [ebp - 0x10]
push dword [ebp - 0xc]
push esi
call fcn.0044fc25
add esp, 0xc
test eax, eax
jne case.0x449e26.108
add esi, dword [ebp - 0x10]
inc dword [ebp + 0x18]
cmp dword [ebp + 0x18], ebx
jle 0x44b371
cmp ebx, dword [ebp - 4]
je 0x449def
cmp dword [ebp - 0x24], 0
jne 0x44d7b7
mov dword [ebp - 0x14], esi
jmp 0x44b3cc
mov eax, dword [edi + 0x58]
sub eax, dword [ebp - 0x10]
cmp esi, eax
ja 0x44b3d1
push dword [ebp - 0x10]
push dword [ebp - 0xc]
push esi
call fcn.0044fc25
add esp, 0xc
test eax, eax
jne 0x44b3d1
add esi, dword [ebp - 0x10]
inc ebx
cmp ebx, dword [ebp - 4]
jl 0x44b3ab
cmp dword [ebp - 0x1c], 0
jne 0x449def
mov ebx, dword [ebp + 0x28]
inc ebx
jmp 0x44d823
mov eax, dword [edi + 0x58]
sub eax, esi
cmp ebx, eax
jg case.0x449e26.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 0x44b4a6
cmp ebx, edx
mov ecx, dword [edi + 0x24]
movzx eax, byte [ecx + eax]
mov dword [ebp - 8], eax
mov eax, edx
jl 0x44b430
movzx edx, byte [esi]
movzx edx, byte [edx + ecx]
inc esi
cmp dword [ebp - 8], edx
jne case.0x449e26.108
inc eax
cmp eax, ebx
jle 0x44b41a
cmp ebx, dword [ebp - 4]
je 0x449def
cmp dword [ebp - 0x24], 0
jne 0x44d848
mov dword [ebp - 0x14], esi
jmp 0x44b45b
cmp esi, dword [edi + 0x58]
jae 0x44b460
movzx eax, byte [esi]
movzx eax, byte [eax + ecx]
cmp dword [ebp - 8], eax
jne 0x44b460
inc esi
inc ebx
cmp ebx, dword [ebp - 4]
jl 0x44b448
cmp dword [ebp - 0x1c], 0
jne 0x449def
cmp esi, dword [ebp - 0x14]
jb case.0x449e26.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.00449da3
add esp, 0x24
dec esi
test eax, eax
jne 0x44e0a6
cmp esi, dword [ebp - 0x14]
jae 0x44b477
jmp case.0x449e26.108
cmp ebx, edx
mov ecx, edx
jl 0x44b4bd
movzx edx, byte [esi]
inc esi
cmp eax, edx
jne case.0x449e26.108
inc ecx
cmp ecx, ebx
jle 0x44b4ac
cmp ebx, dword [ebp - 4]
je 0x449def
cmp dword [ebp - 0x24], 0
jne 0x44d8a2
mov dword [ebp - 0x14], esi
jmp 0x44b4e4
cmp esi, dword [edi + 0x58]
jae 0x44b4e9
movzx eax, byte [esi]
cmp dword [ebp - 8], eax
jne 0x44b4e9
inc esi
inc ebx
cmp ebx, dword [ebp - 4]
jl 0x44b4d5
cmp dword [ebp - 0x1c], 0
jne 0x449def
cmp esi, dword [ebp - 0x14]
jb case.0x449e26.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.00449da3
add esp, 0x24
dec esi
test eax, eax
jne 0x44e0a6
cmp esi, dword [ebp - 0x14]
jae 0x44b500
jmp case.0x449e26.108
cmp esi, dword [edi + 0x58]
jae case.0x449e26.108
movzx edx, byte [esi]
inc ebx
inc esi
cmp dword [ebp - 0x18], 0
mov dword [ebp + 0xc], ebx
je 0x44b587
cmp edx, 0xc0
jb 0x44b587
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 0x44b580
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 0x44b56e
test byte [ebp + 0x1c], 1
je 0x44b5b9
cmp edx, 0x100
jae 0x44b59c
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 0x449def
jmp case.0x449e26.108
mov eax, dword [ebp + 0xc]
movzx eax, byte [eax]
jmp 0x44b5a9
xor edx, edx
mov dh, byte [ebx + 1]
mov dl, byte [ebx + 2]
mov dword [ebp - 4], edx
add ebx, 3
jmp 0x44b64e
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 0x44b5cc
mov dword [ebp - 0x1c], 1
xor edx, edx
inc ebx
jmp 0x44b647
xor edx, edx
inc edx
mov dword [ebp - 0x1c], edx
jmp 0x44b5f4
xor eax, eax
inc eax
xor edx, edx
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], eax
inc ebx
jmp 0x44b64e
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 0x44b5cc
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 0x44b64e
mov dword [ebp - 4], connect
mov eax, dword [edi + 0x58]
sub eax, esi
cmp edx, eax
jg case.0x449e26.108
movzx ecx, byte [ebx]
inc ebx
test byte [ebp + 0x1c], 1
mov dword [ebp - 8], ecx
mov dword [ebp + 0xc], ebx
je 0x44b846
cmp dword [ebp - 0x18], 0
mov eax, dword [edi + 0x24]
movzx ecx, byte [eax + ecx]
mov dword [ebp - 8], ecx
je 0x44b709
xor eax, eax
inc eax
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44b72c
movzx ebx, byte [esi]
inc esi
cmp ebx, 0xc0
jb 0x44b6e4
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 0x44b6dd
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 0x44b6c3
cmp ebx, 0x100
jae 0x44b6f3
mov eax, dword [edi + 0x24]
movzx ebx, byte [eax + ebx]
cmp dword [ebp - 8], ebx
je case.0x449e26.108
inc dword [ebp + 0x18]
cmp dword [ebp + 0x18], edx
jle 0x44b691
mov ebx, dword [ebp + 0xc]
jmp 0x44b72c
xor ecx, ecx
inc ecx
cmp edx, ecx
mov dword [ebp + 0x18], ecx
jl 0x44b72c
movzx ecx, byte [esi]
movzx ecx, byte [ecx + eax]
inc esi
cmp dword [ebp - 8], ecx
je case.0x449e26.108
inc dword [ebp + 0x18]
cmp dword [ebp + 0x18], edx
jle 0x44b713
cmp edx, dword [ebp - 4]
je 0x449def
xor ecx, ecx
cmp dword [ebp - 0x24], ecx
jne 0x44d8f5
cmp dword [ebp - 0x18], ecx
mov dword [ebp - 0x14], esi
je 0x44b7fc
cmp edx, dword [ebp - 4]
mov dword [ebp + 0x18], edx
jge 0x44b7cf
xor eax, eax
inc eax
cmp esi, dword [edi + 0x58]
jae 0x44b7cf
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x44b7ae
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 0x44b7aa
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 0x44b791
mov ebx, dword [ebp + 0xc]
inc eax
cmp edx, 0x100
jae 0x44b7bd
mov ecx, dword [edi + 0x24]
movzx edx, byte [ecx + edx]
cmp dword [ebp - 8], edx
je 0x44b7cf
add esi, eax
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jl 0x44b754
cmp dword [ebp - 0x1c], 0
jne 0x449def
mov eax, dword [ebp + 0x28]
inc eax
mov dword [ebp - 0x10], eax
push eax
jmp 0x44da2f
cmp esi, dword [edi + 0x58]
jae 0x44b801
movzx ebx, byte [esi]
mov eax, dword [edi + 0x24]
movzx eax, byte [ebx + eax]
cmp dword [ebp - 8], eax
je 0x44b801
inc esi
inc edx
cmp edx, dword [ebp - 4]
jl 0x44b7e6
cmp dword [ebp - 0x1c], ecx
jne 0x449def
cmp esi, dword [ebp - 0x14]
jb case.0x449e26.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.00449da3
add esp, 0x24
test eax, eax
jne 0x44e0a6
dec esi
cmp esi, dword [ebp - 0x14]
jae 0x44b817
jmp case.0x449e26.108
xor eax, eax
inc eax
cmp dword [ebp - 0x18], 0
je 0x44b8bf
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44b8d5
movzx ebx, byte [esi]
inc esi
cmp ebx, 0xc0
jb 0x44b8a9
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 0x44b8a2
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 0x44b888
cmp dword [ebp - 8], ebx
je case.0x449e26.108
inc dword [ebp + 0x18]
cmp dword [ebp + 0x18], edx
jle 0x44b856
mov ebx, dword [ebp + 0xc]
jmp 0x44b8d5
cmp edx, eax
jl 0x44b8d5
movzx ecx, byte [esi]
inc esi
cmp dword [ebp - 8], ecx
je case.0x449e26.108
inc eax
cmp eax, edx
jle 0x44b8c3
cmp edx, dword [ebp - 4]
je 0x449def
xor ecx, ecx
cmp dword [ebp - 0x24], ecx
jne 0x44da51
cmp dword [ebp - 0x18], ecx
mov dword [ebp - 0x14], esi
je 0x44b995
cmp edx, dword [ebp - 4]
mov dword [ebp + 0x18], edx
jge 0x44b96f
jmp 0x44b901
xor ecx, ecx
xor eax, eax
inc eax
cmp esi, dword [edi + 0x58]
jae 0x44b96f
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x44b95b
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 0x44b957
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 0x44b93e
mov ebx, dword [ebp + 0xc]
inc eax
cmp dword [ebp - 8], edx
je 0x44b96d
add esi, eax
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jl 0x44b8ff
xor ecx, ecx
cmp dword [ebp - 0x1c], ecx
jne 0x449def
mov eax, dword [ebp + 0x28]
inc eax
push eax
mov dword [ebp - 0x10], eax
push ecx
jmp 0x44db75
cmp esi, dword [edi + 0x58]
jae 0x44b99a
movzx eax, byte [esi]
cmp dword [ebp - 8], eax
je 0x44b99a
inc esi
inc edx
cmp edx, dword [ebp - 4]
jl 0x44b986
cmp dword [ebp - 0x1c], ecx
jne 0x449def
cmp esi, dword [ebp - 0x14]
jb case.0x449e26.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.00449da3
add esp, 0x24
test eax, eax
jne 0x44e0a6
dec esi
cmp esi, dword [ebp - 0x14]
jae 0x44b9b0
jmp case.0x449e26.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 0x44ba98
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 0x44ba95
and dword [ebp - 0x14], 0
mov dword [ebp - 0x1c], 1
mov dword [ebp - 4], connect
inc ebx
jmp 0x44ba1b
xor eax, eax
inc eax
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x14], eax
jmp 0x44ba2b
xor eax, eax
inc eax
and dword [ebp - 0x14], 0
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], eax
jmp 0x44ba32
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 0x44ba18
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 0x44ba95
mov dword [ebp - 4], connect
xor eax, eax
inc eax
movzx ecx, byte [ebx]
mov dword [ebp - 0xc], ecx
mov ecx, dword [edi + 0x58]
mov dword [ebp - 0x10], ecx
inc ebx
sub ecx, esi
cmp edx, ecx
mov dword [ebp + 0xc], ebx
jg case.0x449e26.108
test edx, edx
jle 0x44c375
mov ecx, dword [ebp - 0xc]
add ecx, 0xfffffffa
cmp dword [ebp - 0x18], 0
je 0x44c0bc
cmp ecx, 0xe
ja case.0x44df5b.14
jmp dword [ecx*4 + 0x44e22f]
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44c375
mov ecx, dword [ebp - 0x10]
cmp esi, ecx
jae case.0x449e26.108
test byte [ebp + 0x1c], 4
jne 0x44bb3e
mov edx, dword [edi + 0x18]
test edx, edx
je 0x44bb1a
push dword [ebp - 0x18]
lea eax, [edi + 0x1c]
push eax
push ecx
push edx
push esi
call fcn.0044ec03
add esp, 0x14
test eax, eax
jne case.0x449e26.108
inc eax
jmp 0x44bb3e
mov edx, dword [edi + 0x1c]
sub ecx, edx
cmp esi, ecx
ja 0x44bb3e
mov cl, byte [esi]
cmp cl, byte [edi + 0x20]
jne 0x44bb3e
cmp edx, eax
je case.0x449e26.108
mov cl, byte [esi + 1]
cmp cl, byte [edi + 0x21]
je case.0x449e26.108
mov ecx, dword [edi + 0x58]
inc esi
cmp esi, ecx
mov dword [ebp - 0x10], ecx
jae 0x44bb59
mov cl, byte [esi]
and cl, 0xc0
cmp cl, 0x80
jne 0x44bb59
inc esi
cmp esi, dword [edi + 0x58]
jb 0x44bb49
inc dword [ebp + 0x18]
mov ecx, dword [ebp + 0x18]
cmp ecx, dword [ebp - 0x14]
jle 0x44bae5
mov edx, dword [ebp - 0x14]
jmp 0x44c375
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44c375
cmp esi, dword [ebp - 0x10]
jae case.0x449e26.108
movzx edx, byte [esi]
inc esi
cmp edx, 0xc0
jb 0x44bbc5
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 0x44bbbe
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 0x44bbac
cmp edx, 0xa
je 0x44bc04
jbe case.0x449e26.108
cmp edx, 0xc
jbe 0x44bbfa
cmp edx, 0xd
je 0x44bc1b
cmp edx, 0x85
je 0x44bbfa
cmp edx, 0x2027
jbe case.0x449e26.108
cmp edx, 0x2029
ja case.0x449e26.108
cmp dword [edi + 0x4c], 0
jne case.0x449e26.108
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 0x14]
jle 0x44bb77
mov ebx, dword [ebp + 0xc]
jmp 0x44bb64
cmp esi, dword [ebp - 0x10]
jae 0x44bc04
cmp byte [esi], 0xa
jne 0x44bc04
inc esi
jmp 0x44bc04
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44c375
cmp esi, dword [ebp - 0x10]
jae case.0x449e26.108
movzx eax, byte [esi]
inc esi
cmp eax, 0xc0
jb 0x44bc84
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 0x44bc84
jmp 0x44bc6e
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 0x44bc6b
mov ecx, 0x180e
cmp eax, ecx
ja 0x44bcb7
je case.0x449e26.108
cmp eax, 9
je case.0x449e26.108
cmp eax, 0x20
je case.0x449e26.108
cmp eax, 0xa0
je case.0x449e26.108
cmp eax, 0x1680
jmp 0x44bce4
cmp eax, 0x2000
jb 0x44bcea
cmp eax, 0x200a
jbe case.0x449e26.108
cmp eax, 0x202f
je case.0x449e26.108
cmp eax, 0x205f
je case.0x449e26.108
cmp eax, 0x3000
je case.0x449e26.108
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 0x14]
jle 0x44bc33
jmp 0x44bc13
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44c375
cmp esi, dword [ebp - 0x10]
jae case.0x449e26.108
movzx eax, byte [esi]
inc esi
cmp eax, 0xc0
jb 0x44bd5a
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 0x44bd5a
jmp 0x44bd44
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 0x44bd41
mov ecx, 0x180e
cmp eax, ecx
ja 0x44bd7d
je 0x44bda8
cmp eax, 9
je 0x44bda8
cmp eax, 0x20
je 0x44bda8
cmp eax, 0xa0
je 0x44bda8
cmp eax, 0x1680
jmp 0x44bda2
cmp eax, 0x2000
jb case.0x449e26.108
cmp eax, 0x200a
jbe 0x44bda8
cmp eax, 0x202f
je 0x44bda8
cmp eax, 0x205f
je 0x44bda8
cmp eax, 0x3000
jne case.0x449e26.108
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 0x14]
jle 0x44bd09
jmp 0x44bc13
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44c375
cmp esi, dword [ebp - 0x10]
jae case.0x449e26.108
movzx edx, byte [esi]
inc esi
cmp edx, 0xc0
jb 0x44be15
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 0x44be0e
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 0x44bdfc
cmp edx, 0xa
jb 0x44be43
cmp edx, 0xd
jbe case.0x449e26.108
cmp edx, 0x85
je case.0x449e26.108
cmp edx, 0x2027
jbe 0x44be43
cmp edx, 0x2029
jbe case.0x449e26.108
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 0x14]
jle 0x44bdc7
jmp 0x44bc13
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44c375
cmp esi, dword [ebp - 0x10]
jae case.0x449e26.108
movzx edx, byte [esi]
inc esi
cmp edx, 0xc0
jb 0x44beb0
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 0x44bea9
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 0x44be97
cmp edx, 0xa
jb case.0x449e26.108
cmp edx, 0xd
jbe 0x44bede
cmp edx, 0x85
je 0x44bede
cmp edx, 0x2027
jbe case.0x449e26.108
cmp edx, 0x2029
ja case.0x449e26.108
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 0x14]
jle 0x44be62
jmp 0x44bc13
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44c375
cmp esi, dword [ebp - 0x10]
jae case.0x449e26.108
movzx edx, byte [esi]
inc esi
cmp edx, 0xc0
jb 0x44bf4b
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 0x44bf44
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 0x44bf32
cmp edx, 0x80
jae 0x44bf60
mov eax, dword [edi + 0x28]
test byte [edx + eax], 4
jne case.0x449e26.108
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 0x14]
jle 0x44befd
jmp 0x44bc13
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44c375
cmp esi, dword [ebp - 0x10]
jae case.0x449e26.108
mov cl, byte [esi]
cmp cl, 0x80
jae case.0x449e26.108
movzx eax, cl
mov ecx, dword [edi + 0x28]
mov al, byte [eax + ecx]
and al, 4
inc esi
test al, al
je case.0x449e26.108
inc dword [ebp + 0x18]
cmp dword [ebp + 0x18], edx
jle 0x44bf7b
jmp 0x44c375
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44c375
cmp esi, dword [ebp - 0x10]
jae case.0x449e26.108
mov cl, byte [esi]
cmp cl, 0x80
jae 0x44bfdb
movzx eax, cl
mov ecx, dword [edi + 0x28]
test byte [eax + ecx], 1
jne case.0x449e26.108
inc esi
cmp esi, dword [ebp - 0x10]
jae 0x44bfe9
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
je 0x44bfdb
inc dword [ebp + 0x18]
cmp dword [ebp + 0x18], edx
jle 0x44bfbb
jmp 0x44c375
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44c375
cmp esi, dword [ebp - 0x10]
jae case.0x449e26.108
mov cl, byte [esi]
cmp cl, 0x80
jae case.0x449e26.108
movzx eax, cl
mov ecx, dword [edi + 0x28]
mov al, byte [eax + ecx]
and al, 1
inc esi
test al, al
je case.0x449e26.108
inc dword [ebp + 0x18]
cmp dword [ebp + 0x18], edx
jle 0x44c001
jmp 0x44c375
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44c375
cmp esi, dword [ebp - 0x10]
jae case.0x449e26.108
mov cl, byte [esi]
cmp cl, 0x80
jae 0x44c061
movzx eax, cl
mov ecx, dword [edi + 0x28]
test byte [eax + ecx], 0x10
jne case.0x449e26.108
inc esi
cmp esi, dword [ebp - 0x10]
jae 0x44c06f
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
je 0x44c061
inc dword [ebp + 0x18]
cmp dword [ebp + 0x18], edx
jle 0x44c041
jmp 0x44c375
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44c375
cmp esi, dword [ebp - 0x10]
jae case.0x449e26.108
mov cl, byte [esi]
cmp cl, 0x80
jae case.0x449e26.108
movzx eax, cl
mov ecx, dword [edi + 0x28]
mov al, byte [eax + ecx]
and al, 0x10
inc esi
test al, al
je case.0x449e26.108
inc dword [ebp + 0x18]
cmp dword [ebp + 0x18], edx
jle 0x44c087
jmp 0x44c375
cmp ecx, 0xe
ja case.0x44df5b.14
jmp dword [ecx*4 + 0x44e26b]
test byte [ebp + 0x1c], 4
jne case.0x44c0c5.7
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44c375
mov edx, dword [edi + 0x18]
test edx, edx
je 0x44c107
mov ecx, dword [edi + 0x58]
cmp esi, ecx
jae 0x44c12e
push 0
lea eax, [edi + 0x1c]
push eax
push ecx
push edx
push esi
call fcn.0044ec03
add esp, 0x14
test eax, eax
jne case.0x449e26.108
inc eax
jmp 0x44c12e
mov ecx, dword [edi + 0x1c]
mov edx, dword [edi + 0x58]
sub edx, ecx
cmp esi, edx
ja 0x44c12e
mov dl, byte [esi]
cmp dl, byte [edi + 0x20]
jne 0x44c12e
cmp ecx, eax
je case.0x449e26.108
mov cl, byte [esi + 1]
cmp cl, byte [edi + 0x21]
je case.0x449e26.108
inc esi
inc dword [ebp + 0x18]
mov ecx, dword [ebp + 0x18]
cmp ecx, dword [ebp - 0x14]
jle 0x44c0dd
jmp 0x44bb64
add esi, edx
jmp 0x44c375
cmp edx, eax
jl 0x44c375
cmp esi, dword [ebp - 0x10]
jae case.0x449e26.108
movzx ecx, byte [esi]
inc esi
cmp ecx, 0xa
je 0x44c186
jle case.0x449e26.108
cmp ecx, 0xc
jle 0x44c17c
cmp ecx, 0xd
je 0x44c190
cmp ecx, 0x85
jne case.0x449e26.108
cmp dword [edi + 0x4c], 0
jne case.0x449e26.108
inc eax
cmp eax, edx
jle 0x44c14e
jmp 0x44c375
cmp esi, dword [ebp - 0x10]
jae 0x44c186
cmp byte [esi], 0xa
jne 0x44c186
inc esi
jmp 0x44c186
cmp edx, eax
jl 0x44c375
cmp esi, dword [ebp - 0x10]
jae case.0x449e26.108
movzx ecx, byte [esi]
inc esi
cmp ecx, 9
je case.0x449e26.108
cmp ecx, 0x20
je case.0x449e26.108
cmp ecx, 0xa0
je case.0x449e26.108
inc eax
cmp eax, edx
jle 0x44c1a5
jmp 0x44c375
cmp edx, eax
jl 0x44c375
cmp esi, dword [ebp - 0x10]
jae case.0x449e26.108
movzx ecx, byte [esi]
inc esi
cmp ecx, 9
je 0x44c205
cmp ecx, 0x20
je 0x44c205
cmp ecx, 0xa0
jne case.0x449e26.108
inc eax
cmp eax, edx
jle 0x44c1e2
jmp 0x44c375
cmp edx, eax
jl 0x44c375
cmp esi, dword [ebp - 0x10]
jae case.0x449e26.108
movzx ecx, byte [esi]
inc esi
cmp ecx, 0xa
jl 0x44c23e
cmp ecx, 0xd
jle case.0x449e26.108
cmp ecx, 0x85
je case.0x449e26.108
inc eax
cmp eax, edx
jle 0x44c217
jmp 0x44c375
cmp edx, eax
jl 0x44c375
cmp esi, dword [ebp - 0x10]
jae case.0x449e26.108
movzx ecx, byte [esi]
inc esi
cmp ecx, 0xa
jl case.0x449e26.108
cmp ecx, 0xd
jle 0x44c277
cmp ecx, 0x85
jne case.0x449e26.108
inc eax
cmp eax, edx
jle 0x44c250
jmp 0x44c375
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44c375
mov eax, dword [edi + 0x28]
movzx ecx, byte [esi]
mov cl, byte [ecx + eax]
and cl, 4
inc esi
test cl, cl
jne case.0x449e26.108
inc dword [ebp + 0x18]
cmp dword [ebp + 0x18], edx
jle 0x44c28f
jmp 0x44c375
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44c375
mov eax, dword [edi + 0x28]
movzx ecx, byte [esi]
mov cl, byte [ecx + eax]
and cl, 4
inc esi
test cl, cl
je case.0x449e26.108
inc dword [ebp + 0x18]
cmp dword [ebp + 0x18], edx
jle 0x44c2bc
jmp 0x44c375
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44c375
mov eax, dword [edi + 0x28]
movzx ecx, byte [esi]
mov cl, byte [ecx + eax]
and cl, 1
inc esi
test cl, cl
jne case.0x449e26.108
inc dword [ebp + 0x18]
cmp dword [ebp + 0x18], edx
jle 0x44c2e9
jmp 0x44c375
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44c375
mov eax, dword [edi + 0x28]
movzx ecx, byte [esi]
mov cl, byte [ecx + eax]
and cl, 1
inc esi
test cl, cl
je case.0x449e26.108
inc dword [ebp + 0x18]
cmp dword [ebp + 0x18], edx
jle 0x44c30f
jmp 0x44c375
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44c375
mov eax, dword [edi + 0x28]
movzx ecx, byte [esi]
mov cl, byte [ecx + eax]
and cl, 0x10
inc esi
test cl, cl
jne case.0x449e26.108
inc dword [ebp + 0x18]
cmp dword [ebp + 0x18], edx
jle 0x44c335
jmp 0x44c375
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44c375
mov eax, dword [edi + 0x28]
movzx ecx, byte [esi]
mov cl, byte [ecx + eax]
and cl, 0x10
inc esi
test cl, cl
je case.0x449e26.108
inc dword [ebp + 0x18]
cmp dword [ebp + 0x18], edx
jle 0x44c35b
mov ecx, dword [ebp - 4]
cmp edx, ecx
je 0x449def
xor eax, eax
cmp dword [ebp - 0x24], eax
jne 0x44db9c
cmp dword [ebp - 0x18], eax
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x14], esi
je 0x44cac0
add eax, 0xfffffffa
cmp eax, 0xe
ja case.0x44df5b.14
jmp dword [eax*4 + 0x44e2a7]
cmp ecx, 0x7fffffff
jge 0x44c46a
test byte [ebp + 0x1c], 4
jne 0x44c437
cmp edx, ecx
mov ebx, edx
jge 0x44caad
mov eax, dword [edi + 0x58]
cmp esi, eax
jae 0x44caad
mov ecx, dword [edi + 0x18]
test ecx, ecx
je 0x44c3f7
push dword [ebp - 0x18]
lea edx, [edi + 0x1c]
push edx
push eax
push ecx
push esi
call fcn.0044ec03
add esp, 0x14
test eax, eax
jne 0x44caad
jmp 0x44c426
mov ecx, dword [edi + 0x1c]
sub eax, ecx
cmp esi, eax
ja 0x44c426
mov al, byte [esi]
cmp al, byte [edi + 0x20]
jne 0x44c426
cmp ecx, 1
je 0x44caad
mov al, byte [esi + 1]
cmp al, byte [edi + 0x21]
je 0x44caad
jmp 0x44c426
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x44c42c
inc esi
cmp esi, dword [edi + 0x58]
jb 0x44c41e
inc ebx
cmp ebx, dword [ebp - 4]
jl 0x44c3c9
jmp 0x44caad
cmp edx, ecx
jge 0x44caad
mov eax, dword [edi + 0x58]
cmp esi, eax
jae 0x44caad
inc esi
cmp esi, eax
jae 0x44c45f
mov cl, byte [esi]
and cl, 0xc0
cmp cl, 0x80
jne 0x44c45f
inc esi
cmp esi, dword [edi + 0x58]
jb 0x44c44f
inc edx
cmp edx, dword [ebp - 4]
jl 0x44c442
jmp 0x44caad
test byte [ebp + 0x1c], 4
jne 0x44c4e8
cmp edx, ecx
mov ebx, edx
jge 0x44caad
mov eax, dword [edi + 0x58]
cmp esi, eax
jae 0x44caad
mov ecx, dword [edi + 0x18]
test ecx, ecx
je 0x44c4a8
push dword [ebp - 0x18]
lea edx, [edi + 0x1c]
push edx
push eax
push ecx
push esi
call fcn.0044ec03
add esp, 0x14
test eax, eax
jne 0x44caad
jmp 0x44c4d7
mov ecx, dword [edi + 0x1c]
sub eax, ecx
cmp esi, eax
ja 0x44c4d7
mov al, byte [esi]
cmp al, byte [edi + 0x20]
jne 0x44c4d7
cmp ecx, 1
je 0x44caad
mov al, byte [esi + 1]
cmp al, byte [edi + 0x21]
je 0x44caad
jmp 0x44c4d7
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x44c4dd
inc esi
cmp esi, dword [edi + 0x58]
jb 0x44c4cf
inc ebx
cmp ebx, dword [ebp - 4]
jl 0x44c47a
jmp 0x44caad
mov esi, dword [edi + 0x58]
jmp 0x44caad
mov eax, dword [edi + 0x58]
sub ecx, edx
sub eax, esi
cmp ecx, eax
jbe 0x44c4fd
mov ecx, eax
add esi, ecx
jmp 0x44caad
cmp edx, ecx
mov dword [ebp + 0x18], edx
jge 0x44caad
xor eax, eax
inc eax
cmp esi, dword [edi + 0x58]
jae 0x44caad
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x44c56a
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 0x44c569
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 0x44c550
inc eax
cmp edx, 0xd
jne 0x44c581
inc esi
cmp esi, dword [edi + 0x58]
jae 0x44caad
cmp byte [esi], 0xa
jne 0x44c5b8
inc esi
jmp 0x44c5b8
cmp edx, 0xa
je 0x44c5b6
cmp dword [edi + 0x4c], 0
jne 0x44caad
cmp edx, 0xb
je 0x44c5b6
cmp edx, 0xc
je 0x44c5b6
cmp edx, 0x85
je 0x44c5b6
cmp edx, 0x2028
je 0x44c5b6
cmp edx, 0x2029
jne 0x44caad
add esi, eax
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jl 0x44c50f
jmp 0x44caad
cmp edx, ecx
mov dword [ebp + 0x18], edx
jge 0x44caad
xor eax, eax
inc eax
cmp esi, dword [edi + 0x58]
jae 0x44caad
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x44c632
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 0x44c631
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 0x44c618
inc eax
mov ecx, 0x180e
cmp edx, ecx
ja 0x44c680
je 0x44c6a8
cmp edx, 9
je 0x44c6a8
cmp edx, 0x20
je 0x44c6a8
cmp edx, 0xa0
je 0x44c6a8
cmp edx, 0x1680
je 0x44c6a8
xor ecx, ecx
xor edx, edx
cmp dword [ebp - 0xc], 0x11
sete dl
cmp ecx, edx
je 0x44caad
add esi, eax
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jl 0x44c5d7
jmp 0x44caad
cmp edx, 0x2000
jb 0x44c657
cmp edx, 0x200a
jbe 0x44c6a8
cmp edx, 0x202f
je 0x44c6a8
cmp edx, 0x205f
je 0x44c6a8
cmp edx, 0x3000
jne 0x44c657
xor ecx, ecx
inc ecx
jmp 0x44c659
cmp edx, ecx
mov dword [ebp + 0x18], edx
jge 0x44caad
xor eax, eax
inc eax
cmp esi, dword [edi + 0x58]
jae 0x44caad
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x44c713
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 0x44c712
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 0x44c6f9
inc eax
cmp edx, 0xa
jb 0x44c73a
cmp edx, 0xd
jbe 0x44c735
cmp edx, 0x85
je 0x44c735
cmp edx, 0x2027
jbe 0x44c73a
cmp edx, 0x2029
ja 0x44c73a
xor ecx, ecx
inc ecx
jmp 0x44c73c
xor ecx, ecx
xor edx, edx
cmp dword [ebp - 0xc], 0x13
sete dl
cmp ecx, edx
je 0x44caad
add esi, eax
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jl 0x44c6b8
jmp 0x44caad
cmp edx, ecx
mov dword [ebp + 0x18], edx
jge 0x44caad
xor eax, eax
inc eax
cmp esi, dword [edi + 0x58]
jae 0x44caad
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x44c7c9
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 0x44c7c8
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 0x44c7af
inc eax
cmp edx, 0x100
jae 0x44c7de
mov ecx, dword [edi + 0x28]
test byte [edx + ecx], 4
jne 0x44caad
add esi, eax
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jl 0x44c76e
jmp 0x44caad
cmp edx, ecx
mov dword [ebp + 0x18], edx
jge 0x44caad
xor eax, eax
inc eax
cmp esi, dword [edi + 0x58]
jae 0x44caad
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x44c856
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 0x44c855
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 0x44c83c
inc eax
cmp edx, 0x100
jae 0x44caad
mov ecx, dword [edi + 0x28]
test byte [edx + ecx], 4
je 0x44caad
add esi, eax
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jl 0x44c7fb
jmp 0x44caad
cmp edx, ecx
mov dword [ebp + 0x18], edx
jge 0x44caad
xor eax, eax
inc eax
cmp esi, dword [edi + 0x58]
jae 0x44caad
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x44c8eb
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 0x44c8ea
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 0x44c8d1
inc eax
cmp edx, 0x100
jae 0x44c900
mov ecx, dword [edi + 0x28]
test byte [edx + ecx], 1
jne 0x44caad
add esi, eax
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jl 0x44c890
jmp 0x44caad
cmp edx, ecx
mov dword [ebp + 0x18], edx
jge 0x44caad
xor eax, eax
inc eax
cmp esi, dword [edi + 0x58]
jae 0x44caad
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x44c978
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 0x44c977
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 0x44c95e
inc eax
cmp edx, 0x100
jae 0x44caad
mov ecx, dword [edi + 0x28]
test byte [edx + ecx], 1
je 0x44caad
add esi, eax
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jl 0x44c91d
jmp 0x44caad
cmp edx, ecx
mov dword [ebp + 0x18], edx
jge 0x44caad
xor eax, eax
inc eax
cmp esi, dword [edi + 0x58]
jae 0x44caad
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x44ca0d
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 0x44ca0c
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 0x44c9f3
inc eax
cmp edx, 0x100
jae 0x44ca22
mov ecx, dword [edi + 0x28]
test byte [edx + ecx], 0x10
jne 0x44caad
add esi, eax
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jl 0x44c9b2
jmp 0x44caad
cmp edx, ecx
mov dword [ebp + 0x18], edx
jge 0x44caad
xor eax, eax
inc eax
cmp esi, dword [edi + 0x58]
jae 0x44caad
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x44ca8f
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 0x44ca8e
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 0x44ca75
inc eax
cmp edx, 0x100
jae 0x44caad
mov ecx, dword [edi + 0x28]
test byte [edx + ecx], 0x10
je 0x44caad
add esi, eax
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jl 0x44ca38
cmp dword [ebp - 0x1c], 0
jne 0x449def
mov ebx, dword [ebp + 0x28]
inc ebx
jmp 0x44e081
add eax, 0xfffffffa
cmp eax, 0xe
ja case.0x44df5b.14
jmp dword [eax*4 + 0x44e2e3]
test byte [ebp + 0x1c], 4
jne case.0x44cacc.13
cmp edx, ecx
mov ebx, edx
jge 0x44cd91
mov eax, dword [edi + 0x58]
cmp esi, eax
jae 0x44cd91
mov ecx, dword [edi + 0x18]
test ecx, ecx
je 0x44cb10
push 0
lea edx, [edi + 0x1c]
push edx
push eax
push ecx
push esi
call fcn.0044ec03
add esp, 0x14
test eax, eax
jne 0x44cd91
jmp 0x44cb35
mov ecx, dword [edi + 0x1c]
sub eax, ecx
cmp esi, eax
ja 0x44cb35
mov al, byte [esi]
cmp al, byte [edi + 0x20]
jne 0x44cb35
cmp ecx, 1
je 0x44cd91
mov al, byte [esi + 1]
cmp al, byte [edi + 0x21]
je 0x44cd91
inc esi
inc ebx
cmp ebx, dword [ebp - 4]
jl 0x44cae3
jmp 0x44cd91
mov eax, dword [edi + 0x58]
sub ecx, edx
sub eax, esi
cmp ecx, eax
jbe 0x44cb4e
mov ecx, eax
add esi, ecx
jmp 0x44cd91
cmp edx, ecx
jge 0x44cd91
mov ecx, dword [edi + 0x58]
cmp esi, ecx
jae 0x44cd91
movzx eax, byte [esi]
cmp eax, 0xd
jne 0x44cb80
inc esi
cmp esi, ecx
jae 0x44cd91
cmp byte [esi], 0xa
jne 0x44cba5
jmp 0x44cba4
cmp eax, 0xa
je 0x44cba4
cmp dword [edi + 0x4c], 0
jne 0x44cd91
cmp eax, 0xb
je 0x44cba4
cmp eax, 0xc
je 0x44cba4
cmp eax, 0x85
jne 0x44cd91
inc esi
inc edx
cmp edx, dword [ebp - 4]
jl 0x44cb60
jmp 0x44cd91
cmp edx, ecx
jge 0x44cd91
mov ecx, dword [edi + 0x58]
cmp esi, ecx
jae 0x44cd91
movzx eax, byte [esi]
cmp eax, 9
je 0x44cd91
cmp eax, 0x20
je 0x44cd91
cmp eax, 0xa0
je 0x44cd91
inc esi
inc edx
cmp edx, dword [ebp - 4]
jl 0x44cbbb
jmp 0x44cd91
cmp edx, ecx
jge 0x44cd91
mov ecx, dword [edi + 0x58]
cmp esi, ecx
jae 0x44cd91
movzx eax, byte [esi]
cmp eax, 9
je 0x44cc1a
cmp eax, 0x20
je 0x44cc1a
cmp eax, 0xa0
jne 0x44cd91
inc esi
inc edx
cmp edx, dword [ebp - 4]
jl 0x44cbfa
jmp 0x44cd91
cmp edx, ecx
jge 0x44cd91
mov ecx, dword [edi + 0x58]
cmp esi, ecx
jae 0x44cd91
movzx eax, byte [esi]
cmp eax, 0xa
je 0x44cd91
cmp eax, 0xb
je 0x44cd91
cmp eax, 0xc
je 0x44cd91
cmp eax, 0xd
je 0x44cd91
cmp eax, 0x85
je 0x44cd91
inc esi
inc edx
cmp edx, dword [ebp - 4]
jl 0x44cc31
jmp 0x44cd91
cmp edx, ecx
jge 0x44cd91
mov ecx, dword [edi + 0x58]
cmp esi, ecx
jae 0x44cd91
movzx eax, byte [esi]
cmp eax, 0xa
je 0x44ccac
cmp eax, 0xb
je 0x44ccac
cmp eax, 0xc
je 0x44ccac
cmp eax, 0xd
je 0x44ccac
cmp eax, 0x85
jne 0x44cd91
inc esi
inc edx
cmp edx, dword [ebp - 4]
jl 0x44cc82
jmp 0x44cd91
cmp edx, ecx
jge 0x44cd91
mov eax, dword [edi + 0x58]
cmp esi, eax
jae 0x44cd91
movzx ecx, byte [esi]
mov ebx, dword [edi + 0x28]
test byte [ecx + ebx], 4
jne 0x44cd91
inc esi
inc edx
cmp edx, dword [ebp - 4]
jl 0x44ccc3
jmp 0x44cd91
cmp edx, ecx
jge 0x44cd91
mov eax, dword [edi + 0x58]
cmp esi, eax
jae 0x44cd91
movzx ecx, byte [esi]
mov ebx, dword [edi + 0x28]
test byte [ecx + ebx], 4
je 0x44cd91
inc esi
inc edx
cmp edx, dword [ebp - 4]
jl 0x44ccf2
jmp 0x44cd91
cmp edx, ecx
jge 0x44cd91
mov eax, dword [edi + 0x58]
cmp esi, eax
jae 0x44cd91
movzx ecx, byte [esi]
mov ebx, dword [edi + 0x28]
test byte [ecx + ebx], 1
jne 0x44cd91
inc esi
inc edx
cmp edx, dword [ebp - 4]
jl 0x44cd1a
jmp 0x44cd91
cmp edx, ecx
jge 0x44cd91
mov eax, dword [edi + 0x58]
cmp esi, eax
jae 0x44cd91
movzx ecx, byte [esi]
mov ebx, dword [edi + 0x28]
test byte [ecx + ebx], 1
je 0x44cd91
inc esi
inc edx
cmp edx, dword [ebp - 4]
jl 0x44cd3a
jmp 0x44cd91
cmp edx, ecx
jge 0x44cd91
mov eax, dword [edi + 0x58]
cmp esi, eax
jae 0x44cd91
movzx ecx, byte [esi]
mov ebx, dword [edi + 0x28]
test byte [ecx + ebx], 0x10
jne 0x44cd91
inc esi
inc edx
cmp edx, dword [ebp - 4]
jl 0x44cd5a
jmp 0x44cd91
cmp edx, ecx
jge 0x44cd91
mov eax, dword [edi + 0x58]
cmp esi, eax
jae 0x44cd91
movzx ecx, byte [esi]
mov ebx, dword [edi + 0x28]
test byte [ecx + ebx], 0x10
je 0x44cd91
inc esi
inc edx
cmp edx, dword [ebp - 4]
jl 0x44cd7a
cmp dword [ebp - 0x1c], 0
jne 0x449def
cmp esi, dword [ebp - 0x14]
jb case.0x449e26.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.00449da3
add esp, 0x24
dec esi
test eax, eax
jne 0x44e0a6
cmp esi, dword [ebp - 0x14]
jae 0x44cda8
jmp case.0x449e26.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 0x44cdfd
xor ecx, ecx
mov ch, byte [eax + 1]
mov cl, byte [eax + 2]
add eax, ecx
cmp byte [eax], 0x53
je 0x44cdeb
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 0x44d17b
mov dword [ebp + 0x24], edx
jmp 0x44cf6c
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 0x44d084
cmp ecx, 0x60
mov dword [ebp + 0x24], 2
jge 0x44ce3f
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 0x44cea2
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.00449da3
add esp, 0x24
test eax, eax
je 0x44ce8a
cmp eax, 0xfffffc1c
jne 0x44e0a6
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 0x44ce50
cmp dword [ebp + 0x24], 0
jne 0x44d14b
movzx eax, byte [ebx]
movzx eax, byte [eax + 0x4675a0]
add ebx, eax
mov dword [ebp + 0xc], ebx
jmp 0x44cf6c
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.00449da3
add esp, 0x24
test eax, eax
jne 0x44e0a6
mov eax, dword [ebp - 0x20]
jmp 0x44a1b7
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 0x44cf3d
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.00449da3
add esp, 0x24
test eax, eax
jne 0x44e0a6
cmp dword [ebp + 0x24], eax
jne 0x44d301
mov eax, dword [ebp + 0x18]
mov dword [ebp + 0xc], eax
jmp 0x44cf6c
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.00449da3
add esp, 0x24
test eax, eax
jne 0x44e0a6
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 0x449dc6
inc dword [edi]
push 0xfffffffffffffff8
jmp 0x44e0a5
push 0xffffffffffffffeb
jmp 0x44e0a5
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.00449da3
add esp, 0x24
test eax, eax
jne 0x44e0a6
mov eax, 0xfffffc1a
jmp 0x44e0a6
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.00449da3
add esp, 0x24
test eax, eax
jne 0x44e0a6
mov eax, 0xfffffc19
jmp 0x44e0a6
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.00449da3
add esp, 0x24
test eax, eax
jne 0x44e0a6
mov dword [edi + 0x5c], esi
mov eax, 0xfffffc1b
jmp 0x44e0a6
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.00449da3
add esp, 0x24
test eax, eax
jne 0x44e0a6
mov eax, 0xfffffc1c
jmp 0x44e0a6
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 0x44d0c3
mov dword [ebp + 0x24], 2
jmp 0x44d0c7
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.00449da3
add esp, 0x24
test eax, eax
je 0x44d109
cmp eax, 0xfffffc1c
jne 0x44e0a6
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 0x44d0ce
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.0x449e26.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.00449da3
add esp, 0x24
jmp 0x44e0a6
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 0x44d16d
cmp dword [edi + 0x40], 0
je 0x44d1a1
cmp esi, dword [ebp + 0x10]
je case.0x449e26.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 0x44e0a6
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 0x44d1d2
and dword [ebp - 0x38], 0
jmp 0x44d1dd
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 0x44d205
lea ecx, [ebp - 0xec]
mov dword [ebp - 0x2c], ecx
jmp 0x44d221
shl eax, 2
push eax
call dword [0x47203c]
test eax, eax
pop ecx
mov dword [ebp - 0x2c], eax
jne 0x44d21e
push 0xfffffffffffffffa
jmp 0x44e0a5
mov eax, dword [ebp - 0x28]
shl eax, 2
push eax
push dword [edi + 0xc]
push dword [ebp - 0x2c]
call fcn.0044f8c0
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.00449da3
add esp, 0x24
cmp eax, 1
je 0x44d2dd
test eax, eax
je 0x44d288
cmp eax, 0xfffffc1c
jne 0x44e0a6
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.0044f8c0
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 0x44d24e
mov eax, dword [ebp - 0x3c]
mov dword [edi + 0x78], eax
lea eax, [ebp - 0xec]
cmp dword [ebp - 0x2c], eax
je case.0x449e26.108
push dword [ebp - 0x2c]
call dword [0x472040]
pop ecx
jmp case.0x449e26.108
mov eax, dword [ebp - 0x3c]
mov dword [edi + 0x78], eax
lea eax, [ebp - 0xec]
cmp dword [ebp - 0x2c], eax
je 0x44d1b0
push dword [ebp - 0x2c]
call dword [0x472040]
pop ecx
jmp 0x44d1b0
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 0x44d16d
mov eax, dword [ebp + 0x14]
mov dword [edi + 0x64], eax
jmp 0x44d1ad
mov eax, dword [ebp - 4]
cmp dword [ebp + 0x18], eax
jge case.0x449e26.108
push dword [ebp + 0x1c]
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0xc]
push esi
mov ecx, edi
call fcn.00449d45
test eax, eax
pop ecx
pop ecx
je case.0x449e26.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.00449da3
add esp, 0x24
test eax, eax
je 0x44d326
jmp 0x44e0a6
cmp ebx, dword [ebp - 4]
mov dword [ebp - 0x14], esi
jge 0x44d3a9
push dword [ebp + 0x1c]
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0xc]
push esi
mov ecx, edi
call fcn.00449d45
test eax, eax
pop ecx
pop ecx
je 0x44d3a0
add esi, dword [ebp - 0x10]
inc ebx
cmp ebx, dword [ebp - 4]
jl 0x44d380
cmp esi, dword [ebp - 0x14]
jb case.0x449e26.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.00449da3
add esp, 0x24
test eax, eax
jne 0x44e0a6
sub esi, dword [ebp - 0x10]
cmp esi, dword [ebp - 0x14]
jae 0x44d3ad
jmp case.0x449e26.108
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jge case.0x449e26.108
cmp esi, dword [edi + 0x58]
jae case.0x449e26.108
movzx eax, byte [esi]
inc esi
cmp eax, 0xc0
jb 0x44d43b
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 0x44d43b
jmp 0x44d425
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 0x44d422
cmp eax, 0xff
jbe 0x44d448
cmp dword [ebp - 8], 0x4d
jmp 0x44d45d
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.0x449e26.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.00449da3
add esp, 0x24
test eax, eax
je 0x44d3de
jmp 0x44e0a6
mov ebx, dword [ebp + 0x28]
inc ebx
jmp 0x44d4ce
mov eax, dword [ebp - 4]
cmp dword [ebp + 0x18], eax
jge case.0x449e26.108
cmp esi, dword [edi + 0x58]
jae case.0x449e26.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.0x449e26.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.00449da3
add esp, 0x24
test eax, eax
je 0x44d497
jmp 0x44e0a6
cmp dword [ebp - 0x18], eax
mov dword [ebp - 0x14], esi
je 0x44d5f1
cmp edx, dword [ebp - 4]
mov dword [ebp + 0x18], edx
jge 0x44d5ab
cmp esi, dword [edi + 0x58]
mov dword [ebp - 0x20], 1
jae 0x44d5ab
movzx eax, byte [esi]
cmp eax, 0xc0
jb 0x44d575
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 0x44d56e
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 0x44d552
mov ebx, dword [ebp + 0xc]
inc edx
mov dword [ebp - 0x20], edx
cmp eax, 0xff
jbe 0x44d582
cmp dword [ebp - 8], 0x4d
jmp 0x44d597
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 0x44d5ab
add esi, dword [ebp - 0x20]
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jl 0x44d50b
mov eax, dword [ebp + 0x28]
inc eax
mov dword [ebp - 0x10], eax
push eax
jmp 0x44d5cf
mov eax, esi
dec esi
cmp eax, dword [ebp - 0x14]
je case.0x449e26.108
jmp 0x44d5c4
dec esi
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
je 0x44d5c3
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.00449da3
add esp, 0x24
test eax, eax
je 0x44d5b5
jmp 0x44e0a6
cmp edx, dword [ebp - 4]
jge 0x44d625
cmp esi, dword [edi + 0x58]
jae 0x44d61c
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 0x44d61c
inc esi
inc edx
cmp edx, dword [ebp - 4]
jl 0x44d5f6
cmp esi, dword [ebp - 0x14]
jb case.0x449e26.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.00449da3
add esp, 0x24
test eax, eax
jne 0x44e0a6
dec esi
cmp esi, dword [ebp - 0x14]
jae 0x44d629
jmp case.0x449e26.108
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jge case.0x449e26.108
cmp esi, dword [edi + 0x58]
jae case.0x449e26.108
movzx eax, byte [esi]
inc esi
cmp eax, 0xc0
mov dword [ebp - 8], eax
jb 0x44d6af
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 0x44d6ab
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 0x44d69b
push dword [ebp - 0x1c]
push dword [ebp - 8]
call fcn.0044eff1
test eax, eax
pop ecx
pop ecx
je case.0x449e26.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.00449da3
add esp, 0x24
test eax, eax
je 0x44d658
jmp 0x44e0a6
mov dword [ebp - 0x14], esi
mov dword [ebp + 0x18], eax
jmp 0x44d76a
xor ebx, ebx
inc ebx
cmp esi, dword [edi + 0x58]
jae 0x44d76f
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x44d753
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 0x44d750
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 0x44d737
lea ebx, [eax + 1]
push dword [ebp - 0x1c]
push edx
call fcn.0044eff1
test eax, eax
pop ecx
pop ecx
je 0x44d76f
add esi, ebx
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jl 0x44d6fa
mov ebx, dword [ebp + 0x28]
inc ebx
jmp 0x44d792
mov eax, esi
dec esi
cmp eax, dword [ebp - 0x14]
je case.0x449e26.108
cmp dword [ebp - 0x18], 0
je 0x44d792
jmp 0x44d78a
dec esi
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
je 0x44d789
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.00449da3
add esp, 0x24
test eax, eax
je 0x44d775
jmp 0x44e0a6
mov dword [ebp + 0x18], ebx
mov ebx, dword [ebp + 0x28]
inc ebx
jmp 0x44d7f2
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jge case.0x449e26.108
cmp esi, dword [edi + 0x58]
jae case.0x449e26.108
push dword [ebp - 0x10]
push dword [ebp - 0xc]
push esi
call fcn.0044fc25
add esp, 0xc
test eax, eax
jne case.0x449e26.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.00449da3
add esp, 0x24
test eax, eax
je 0x44d7c0
jmp 0x44e0a6
cmp esi, dword [ebp - 0x14]
je case.0x449e26.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.00449da3
add esp, 0x24
test eax, eax
je 0x44d817
jmp 0x44e0a6
mov dword [ebp + 0x18], ebx
mov ebx, dword [ebp + 0x28]
inc ebx
jmp 0x44d87d
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jge case.0x449e26.108
cmp esi, dword [edi + 0x58]
jae case.0x449e26.108
movzx eax, byte [esi]
mov ecx, dword [edi + 0x24]
movzx eax, byte [eax + ecx]
inc esi
cmp dword [ebp - 8], eax
jne case.0x449e26.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.00449da3
add esp, 0x24
test eax, eax
je 0x44d851
jmp 0x44e0a6
mov dword [ebp + 0x18], ebx
mov ebx, dword [ebp + 0x28]
inc ebx
jmp 0x44d8d0
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jge case.0x449e26.108
cmp esi, dword [edi + 0x58]
jae case.0x449e26.108
movzx eax, byte [esi]
inc esi
cmp dword [ebp - 8], eax
jne case.0x449e26.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.00449da3
add esp, 0x24
test eax, eax
je 0x44d8ab
jmp 0x44e0a6
cmp dword [ebp - 0x18], ecx
mov dword [ebp + 0x18], edx
je 0x44d9be
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 0x44d9a8
movzx edx, byte [esi]
inc esi
cmp edx, 0xc0
jb 0x44d963
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 0x44d95c
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 0x44d94a
cmp edx, 0x100
jae 0x44d972
mov eax, dword [edi + 0x24]
movzx edx, byte [eax + edx]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jge case.0x449e26.108
cmp esi, dword [edi + 0x58]
jae case.0x449e26.108
cmp dword [ebp - 8], edx
je case.0x449e26.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.00449da3
add esp, 0x24
test eax, eax
je 0x44d91e
jmp 0x44e0a6
mov ebx, dword [ebp + 0x28]
inc ebx
jmp 0x44d9f0
mov eax, dword [ebp - 4]
cmp dword [ebp + 0x18], eax
jge case.0x449e26.108
cmp esi, dword [edi + 0x58]
jae case.0x449e26.108
movzx eax, byte [esi]
mov ecx, dword [edi + 0x24]
movzx eax, byte [eax + ecx]
inc esi
cmp dword [ebp - 8], eax
je case.0x449e26.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.00449da3
add esp, 0x24
test eax, eax
je 0x44d9c4
jmp 0x44e0a6
mov eax, esi
dec esi
cmp eax, dword [ebp - 0x14]
je case.0x449e26.108
jmp 0x44da24
dec esi
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
je 0x44da23
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.00449da3
add esp, 0x24
test eax, eax
je 0x44da15
jmp 0x44e0a6
cmp dword [ebp - 0x18], ecx
mov dword [ebp + 0x18], edx
je 0x44db07
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 0x44daf1
movzx edx, byte [esi]
inc esi
cmp edx, 0xc0
jb 0x44dabb
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 0x44dab4
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 0x44daa2
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jge case.0x449e26.108
cmp esi, dword [edi + 0x58]
jae case.0x449e26.108
cmp dword [ebp - 8], edx
je case.0x449e26.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.00449da3
add esp, 0x24
test eax, eax
je 0x44da76
jmp 0x44e0a6
mov ebx, dword [ebp + 0x28]
inc ebx
push ebx
push ecx
jmp 0x44db37
mov eax, dword [ebp - 4]
cmp dword [ebp + 0x18], eax
jge case.0x449e26.108
cmp esi, dword [edi + 0x58]
jae case.0x449e26.108
movzx eax, byte [esi]
inc esi
cmp dword [ebp - 8], eax
je case.0x449e26.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.00449da3
add esp, 0x24
test eax, eax
je 0x44db0f
jmp 0x44e0a6
mov eax, esi
dec esi
cmp eax, dword [ebp - 0x14]
je case.0x449e26.108
jmp 0x44db68
dec esi
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
je 0x44db67
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.00449da3
add esp, 0x24
test eax, eax
je 0x44db59
jmp 0x44e0a6
push 0xfffffffffffffff2
jmp 0x44e0a5
cmp dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x14]
mov dword [ebp + 0x18], eax
mov eax, dword [ebp + 0x28]
je 0x44deda
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.00449da3
add esp, 0x24
test eax, eax
jne 0x44e0a6
mov ebx, 0x100
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jge case.0x449e26.108
mov eax, dword [edi + 0x58]
cmp esi, eax
jae case.0x449e26.108
cmp dword [ebp - 0xc], 0xc
jne 0x44dc44
test byte [ebp + 0x1c], 4
jne 0x44dc44
mov ecx, dword [edi + 0x18]
test ecx, ecx
je 0x44dc1f
push dword [ebp - 0x18]
lea edx, [edi + 0x1c]
push edx
push eax
push ecx
push esi
call fcn.0044ec03
add esp, 0x14
test eax, eax
jne case.0x449e26.108
jmp 0x44dc44
mov ecx, dword [edi + 0x1c]
sub eax, ecx
cmp esi, eax
ja 0x44dc44
mov al, byte [esi]
cmp al, byte [edi + 0x20]
jne 0x44dc44
cmp ecx, 1
je case.0x449e26.108
mov al, byte [esi + 1]
cmp al, byte [edi + 0x21]
je case.0x449e26.108
movzx eax, byte [esi]
inc esi
cmp eax, 0xc0
jb 0x44dc91
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 0x44dc8c
jmp 0x44dc76
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 0x44dc73
mov ebx, 0x100
mov ecx, dword [ebp - 0xc]
add ecx, 0xfffffffa
cmp ecx, 0xe
ja case.0x44df5b.14
jmp dword [ecx*4 + 0x44e31f]
cmp eax, 0xa
je case.0x44dca0.12
jbe case.0x449e26.108
cmp eax, 0xc
jbe 0x44dcdd
cmp eax, 0xd
je 0x44dcec
cmp eax, 0x85
je 0x44dcdd
cmp eax, 0x2027
jbe case.0x449e26.108
cmp eax, 0x2029
ja case.0x449e26.108
cmp dword [edi + 0x4c], 0
jne case.0x449e26.108
jmp case.0x44dca0.12
cmp esi, dword [edi + 0x58]
jae case.0x44dca0.12
cmp byte [esi], 0xa
jne case.0x44dca0.12
inc esi
jmp case.0x44dca0.12
mov ecx, 0x180e
cmp eax, ecx
ja 0x44dd3a
je case.0x449e26.108
cmp eax, 9
je case.0x449e26.108
cmp eax, 0x20
je case.0x449e26.108
cmp eax, 0xa0
je case.0x449e26.108
cmp eax, 0x1680
jmp 0x44dea6
cmp eax, 0x2000
jb case.0x44dca0.12
cmp eax, 0x200a
jbe case.0x449e26.108
cmp eax, 0x202f
je case.0x449e26.108
cmp eax, 0x205f
je case.0x449e26.108
cmp eax, 0x3000
jmp 0x44dea6
mov ecx, 0x180e
cmp eax, ecx
ja 0x44dda6
je case.0x44dca0.12
cmp eax, 9
je case.0x44dca0.12
cmp eax, 0x20
je case.0x44dca0.12
cmp eax, 0xa0
je case.0x44dca0.12
cmp eax, 0x1680
jmp 0x44dce1
cmp eax, 0x2000
jb case.0x449e26.108
cmp eax, 0x200a
jbe case.0x44dca0.12
cmp eax, 0x202f
je case.0x44dca0.12
cmp eax, 0x205f
je case.0x44dca0.12
cmp eax, 0x3000
jmp 0x44dce1
cmp eax, 0xa
jb case.0x44dca0.12
cmp eax, 0xd
jbe case.0x449e26.108
cmp eax, 0x85
je case.0x449e26.108
cmp eax, 0x2027
jbe case.0x44dca0.12
cmp eax, 0x2029
jbe case.0x449e26.108
jmp case.0x44dca0.12
cmp eax, 0xa
jb case.0x449e26.108
cmp eax, 0xd
jbe case.0x44dca0.12
cmp eax, 0x85
je case.0x44dca0.12
cmp eax, 0x2027
jbe case.0x449e26.108
cmp eax, 0x2029
ja case.0x449e26.108
jmp case.0x44dca0.12
cmp eax, ebx
jae case.0x44dca0.12
mov ecx, dword [edi + 0x28]
test byte [eax + ecx], 4
jmp 0x44dce1
cmp eax, ebx
jae case.0x449e26.108
mov ecx, dword [edi + 0x28]
test byte [eax + ecx], 4
jmp 0x44dea6
cmp eax, ebx
jae case.0x44dca0.12
mov ecx, dword [edi + 0x28]
test byte [eax + ecx], 1
jmp 0x44dce1
cmp eax, ebx
jae case.0x449e26.108
mov ecx, dword [edi + 0x28]
test byte [eax + ecx], 1
jmp 0x44dea6
cmp eax, ebx
jae case.0x44dca0.12
mov ecx, dword [edi + 0x28]
test byte [eax + ecx], 0x10
jmp 0x44dce1
cmp eax, ebx
jae case.0x449e26.108
mov ecx, dword [edi + 0x28]
test byte [eax + ecx], 0x10
je case.0x449e26.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.00449da3
add esp, 0x24
test eax, eax
je 0x44dbd9
jmp 0x44e0a6
inc eax
mov dword [ebp - 0x10], eax
push eax
jmp 0x44e047
mov eax, dword [ebp - 4]
cmp dword [ebp + 0x18], eax
jge case.0x449e26.108
mov eax, dword [edi + 0x58]
cmp esi, eax
jae case.0x449e26.108
test byte [ebp + 0x1c], 4
jne 0x44df48
mov ecx, dword [edi + 0x18]
test ecx, ecx
je 0x44df23
push 0
lea edx, [edi + 0x1c]
push edx
push eax
push ecx
push esi
call fcn.0044ec03
add esp, 0x14
test eax, eax
jne case.0x449e26.108
jmp 0x44df48
mov ecx, dword [edi + 0x1c]
sub eax, ecx
cmp esi, eax
ja 0x44df48
mov al, byte [esi]
cmp al, byte [edi + 0x20]
jne 0x44df48
cmp ecx, 1
je case.0x449e26.108
mov al, byte [esi + 1]
cmp al, byte [edi + 0x21]
je case.0x449e26.108
mov ecx, dword [ebp - 0xc]
movzx eax, byte [esi]
add ecx, 0xfffffffa
inc esi
cmp ecx, 0xe
ja case.0x44df5b.14
jmp dword [ecx*4 + 0x44e35b]
cmp eax, 0xa
je case.0x44df5b.12
jbe case.0x449e26.108
cmp eax, 0xc
jbe 0x44df86
cmp eax, 0xd
je 0x44df95
cmp eax, 0x85
jne case.0x449e26.108
cmp dword [edi + 0x4c], 0
jne case.0x449e26.108
jmp case.0x44df5b.12
cmp esi, dword [edi + 0x58]
jae case.0x44df5b.12
cmp byte [esi], 0xa
jne case.0x44df5b.12
inc esi
jmp case.0x44df5b.12
cmp eax, 9
je case.0x449e26.108
cmp eax, 0x20
je case.0x449e26.108
cmp eax, 0xa0
jmp 0x44e03b
cmp eax, 9
je case.0x44df5b.12
cmp eax, 0x20
je case.0x44df5b.12
cmp eax, 0xa0
jmp 0x44df8a
cmp eax, 0xa
jb case.0x44df5b.12
cmp eax, 0xd
jbe case.0x449e26.108
cmp eax, 0x85
jmp 0x44e03b
cmp eax, 0xa
jb case.0x449e26.108
cmp eax, 0xd
jbe case.0x44df5b.12
cmp eax, 0x85
jmp 0x44df8a
mov ecx, dword [edi + 0x28]
test byte [eax + ecx], 4
jmp 0x44df8a
mov ecx, dword [edi + 0x28]
test byte [eax + ecx], 4
jmp 0x44e03b
mov ecx, dword [edi + 0x28]
test byte [eax + ecx], 1
jmp 0x44df8a
mov ecx, dword [edi + 0x28]
test byte [eax + ecx], 1
jmp 0x44e03b
mov ecx, dword [edi + 0x28]
test byte [eax + ecx], 0x10
jmp 0x44df8a
mov ecx, dword [edi + 0x28]
test byte [eax + ecx], 0x10
je case.0x449e26.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.00449da3
add esp, 0x24
test eax, eax
je 0x44dee4
jmp 0x44e0a6
mov eax, esi
dec esi
cmp eax, dword [ebp - 0x14]
je case.0x449e26.108
jmp 0x44e079
dec esi
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
je 0x44e078
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.00449da3
add esp, 0x24
test eax, eax
je 0x44e06a
jmp 0x44e0a6
push 0xfffffffffffffffb
pop eax
pop edi
pop esi
pop ebx
leave
ret