Function at 0x4488ce
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 0x44ba56
mov esi, dword [ebp + 8]
mov eax, dword [ebp + 0x28]
inc dword [edi]
cmp eax, dword [edi + 8]
jae 0x44ba5f
test byte [ebp + 0x24], 2
mov eax, dword [ebp + 0x1c]
mov dword [ebp - 0x20], eax
je 0x44891a
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 0x448941
cmp esi, dword [edi + 0x54]
jb 0x448941
cmp esi, dword [ebp + 0x10]
jbe 0x448941
mov dword [edi + 0x48], 1
cmp ecx, 0x6d
ja case.0x448951.14
movzx eax, byte [ecx + 0x44cc56]
jmp dword [eax*4 + 0x44cb42]
lea eax, [ebx + 3]
mov cl, byte [eax]
cmp cl, 0x64
jne 0x44898c
mov eax, dword [edi + 0x74]
xor ecx, ecx
cmp eax, edx
mov ch, byte [ebx + 4]
mov cl, byte [ebx + 5]
je 0x44897e
cmp ecx, 0xffff
je 0x4489a8
cmp ecx, dword [eax + 4]
je 0x4489a8
xor ecx, ecx
xor eax, eax
mov ah, byte [ebx + 1]
mov al, byte [ebx + 2]
add ebx, eax
jmp 0x448a04
cmp cl, 0x63
jne 0x4489b0
xor eax, eax
mov ah, byte [ebx + 4]
mov al, byte [ebx + 5]
add eax, eax
cmp eax, dword [ebp + 0x14]
jge 0x44897e
mov ecx, dword [edi + 0xc]
cmp dword [ecx + eax*4], edx
jl 0x44897e
xor ecx, ecx
push 3
inc ecx
pop eax
jmp 0x448988
cmp cl, 0x65
jne 0x4489c1
xor eax, eax
mov ah, byte [ebx + 1]
mov al, byte [ebx + 2]
add ebx, eax
jmp 0x448a0c
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.004488ce
add esp, 0x24
cmp eax, 1
je 0x44b8b0
test eax, eax
je 0x4489f6
cmp eax, 0xfffffc1c
jne 0x44cb3c
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 0x44b8db
cmp byte [ebx], 0x53
je 0x44b8db
jmp 0x448b41
mov ebx, dword [edi + 0x74]
test ebx, ebx
je 0x44bc6b
cmp dword [ebx + 4], 0
jne 0x44bc6b
mov eax, dword [ebx]
mov dword [edi + 0x74], eax
mov eax, dword [ebx + 0x14]
shl eax, 2
push eax
push dword [ebx + 0x10]
push dword [edi + 0xc]
call fcn.00450e80
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 0x44891a
movzx eax, byte [ebx + 1]
mov dword [ebp + 0x1c], eax
inc ebx
inc ebx
jmp 0x448b44
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.004488ce
add esp, 0x24
cmp eax, 1
je 0x448ab9
test eax, eax
je 0x448aaa
cmp eax, 0xfffffc1c
jne 0x44cb3c
xor eax, eax
mov ah, byte [ebx + 1]
mov al, byte [ebx + 2]
add ebx, eax
cmp byte [ebx], 0x53
je 0x448a78
cmp byte [ebx], 0x54
je case.0x448951.108
test byte [ebp + 0x24], 1
jne 0x44bc89
xor eax, eax
mov ah, byte [ebx + 1]
mov al, byte [ebx + 2]
add ebx, eax
cmp byte [ebx], 0x53
je 0x448acc
mov eax, dword [edi + 0x60]
add ebx, 3
mov dword [ebp + 0xc], ebx
mov dword [ebp + 0x14], eax
jmp 0x44891a
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.004488ce
add esp, 0x24
cmp eax, 1
je case.0x448951.108
test eax, eax
je 0x448b28
cmp eax, 0xfffffc1c
jne 0x44cb3c
xor eax, eax
mov ah, byte [ebx + 1]
mov al, byte [ebx + 2]
add ebx, eax
cmp byte [ebx], 0x53
je 0x448af6
test byte [ebp + 0x24], 1
jne 0x44bc89
add ebx, 3
mov dword [ebp + 0xc], ebx
jmp 0x44891a
xor eax, eax
cmp dword [ebp - 0x18], edx
mov ah, byte [ebx + 1]
mov al, byte [ebx + 2]
je 0x448b7e
cmp eax, edx
jle 0x448b41
mov ecx, dword [edi + 0x50]
dec eax
dec esi
cmp esi, ecx
jae 0x448b6e
xor eax, eax
jmp 0x44cb3c
dec esi
mov dl, byte [esi]
and dl, 0xc0
cmp dl, 0x80
je 0x448b6d
test eax, eax
jg 0x448b60
jmp 0x448b41
sub esi, eax
cmp esi, dword [edi + 0x50]
jb case.0x448951.108
jmp 0x448b41
mov ecx, dword [0x477ac0]
cmp ecx, edx
je 0x448c04
movzx eax, byte [ebx + 1]
mov edx, dword [edi + 0x54]
mov dword [ebp - 0x70], eax
mov eax, dword [edi + 0xc]
mov dword [ebp - 0x6c], eax
mov eax, dword [edi + 0x50]
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 + 0x64]
mov dword [ebp - 0x54], eax
mov eax, dword [edi + 0x78]
mov dword [ebp - 0x50], eax
lea eax, [ebp - 0x74]
push eax
call ecx
test eax, eax
pop ecx
jg case.0x448951.108
jl 0x44cb3c
add ebx, 6
jmp 0x448b44
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.004488ce
add esp, 0x24
cmp eax, 1
je 0x448c5e
test eax, eax
je 0x448c4f
cmp eax, 0xfffffc1c
jne 0x44cb3c
xor eax, eax
mov ah, byte [ebx + 1]
mov al, byte [ebx + 2]
add ebx, eax
cmp byte [ebx], 0x53
je 0x448c1c
mov al, byte [ebx]
cmp al, 0x5c
je 0x448c6c
cmp al, 0x53
jne case.0x448951.108
xor eax, eax
mov ah, byte [ebx + 1]
mov al, byte [ebx + 2]
add ebx, eax
cmp byte [ebx], 0x53
je 0x448c6c
cmp byte [ebx], 0x54
mov eax, dword [edi + 0x60]
mov esi, dword [edi + 0x5c]
mov dword [ebp + 0x14], eax
je 0x448b41
cmp esi, dword [ebp - 0x1c]
je 0x448b41
lea ecx, [ebx + 3]
cmp byte [ecx], 0x18
mov dword [ebp - 0x20], ecx
jne 0x448cb0
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 0x44b999
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.004488ce
add esp, 0x24
test eax, eax
jne 0x44cb3c
mov eax, dword [ebp + 0x18]
mov dword [ebp + 0xc], eax
jmp 0x44ba41
xor eax, eax
mov ah, byte [ebx + 1]
mov al, byte [ebx + 2]
add ebx, eax
cmp byte [ebx], 0x53
je case.0x448951.83
jmp 0x448b44
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.004488ce
add esp, 0x24
test eax, eax
jne 0x44cb3c
xor eax, eax
mov ah, byte [ebx + 1]
mov al, byte [ebx + 2]
add ebx, eax
cmp byte [ebx], 0x53
je 0x448d28
jmp 0x448b41
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 0x448d3f
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.004488ce
add esp, 0x24
test eax, eax
jne 0x44cb3c
jmp 0x448b44
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 0x448d9a
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 0x44bdf4
cmp al, 0x58
je 0x44bdf4
cmp al, 0x59
je 0x44bdf4
cmp al, 0x5a
je 0x44bdf4
cmp al, 0x5c
je 0x44bdf4
cmp al, 0x5e
je 0x448dd4
cmp al, 0x61
jne 0x448e58
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 + 0x64], edx
jl 0x448df3
mov dword [edi + 0x2c], 1
jmp 0x448e1b
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 + 0x50]
cmp dword [ebp + 0x14], ecx
mov dword [edx + ecx*4 + 4], eax
mov edx, dword [ebp - 0xc]
jg 0x448e1b
add ecx, 2
mov dword [ebp + 0x14], ecx
mov ebx, dword [edi + 0x74]
test ebx, ebx
je 0x448e58
cmp dword [ebx + 4], edx
jne 0x448e58
mov eax, dword [ebx]
mov dword [edi + 0x74], 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.00450190
mov eax, dword [ebx + 8]
mov dword [ebp + 0xc], eax
mov eax, dword [ebp - 0x20]
add esp, 0xc
mov dword [ebp + 0x1c], eax
jmp 0x44891a
mov eax, dword [ebp - 0x20]
mov dword [ebp + 0x1c], eax
mov eax, dword [ebp + 0xc]
cmp byte [eax], 0x54
je 0x448e6f
cmp esi, dword [ebp - 0x1c]
jne 0x44b9c2
add eax, 3
jmp 0x448a58
cmp dword [edi + 0x30], edx
je 0x448e85
cmp esi, dword [edi + 0x50]
je case.0x448951.108
test byte [ebp + 0x1c], 2
je case.0x448951.1
mov ecx, dword [edi + 0x50]
cmp esi, ecx
je 0x448ef3
cmp esi, dword [edi + 0x54]
je case.0x448951.108
mov eax, dword [edi + 0x18]
test eax, eax
je 0x448ec6
cmp esi, ecx
jbe case.0x448951.108
push dword [ebp - 0x18]
lea edx, [edi + 0x1c]
push edx
push ecx
push eax
push esi
call fcn.0044d6e7
add esp, 0x14
test eax, eax
je case.0x448951.108
jmp 0x448ef3
mov eax, dword [edi + 0x1c]
add ecx, eax
cmp esi, ecx
jb case.0x448951.108
mov ecx, esi
sub ecx, eax
mov dl, byte [ecx]
cmp dl, byte [edi + 0x20]
jne case.0x448951.108
cmp eax, 1
je 0x448ef3
mov al, byte [ecx + 1]
cmp al, byte [edi + 0x21]
jne case.0x448951.108
inc ebx
jmp 0x448b44
cmp esi, dword [edi + 0x50]
jmp 0x448eed
mov eax, dword [edi + 0x68]
add eax, dword [edi + 0x50]
cmp esi, eax
jmp 0x448eed
mov dword [ebp + 0x10], esi
jmp 0x448ef3
test byte [ebp + 0x1c], 2
je 0x448f59
mov eax, dword [edi + 0x54]
cmp esi, eax
jae 0x448f54
mov ecx, dword [edi + 0x18]
test ecx, ecx
je 0x448f32
push dword [ebp - 0x18]
lea edx, [edi + 0x1c]
push edx
push eax
push ecx
push esi
call fcn.0044d61c
jmp 0x448eb9
mov ecx, dword [edi + 0x1c]
sub eax, ecx
cmp esi, eax
ja case.0x448951.108
mov al, byte [esi]
cmp al, byte [edi + 0x20]
jne case.0x448951.108
cmp ecx, 1
je 0x448ef3
mov al, byte [esi + 1]
jmp 0x448eea
cmp dword [edi + 0x34], edx
jmp 0x448eed
cmp dword [edi + 0x34], edx
jne case.0x448951.108
cmp dword [edi + 0x3c], edx
jne case.0x448951.23
mov eax, dword [edi + 0x54]
cmp esi, eax
je 0x448fd1
mov ecx, dword [edi + 0x18]
test ecx, ecx
je 0x448f99
cmp esi, eax
jae case.0x448951.108
push dword [ebp - 0x18]
lea ebx, [edi + 0x1c]
push ebx
push eax
push ecx
push esi
call fcn.0044d61c
add esp, 0x14
test eax, eax
je case.0x448951.108
jmp 0x448fc4
lea ebx, [edi + 0x1c]
mov ecx, dword [ebx]
sub eax, ecx
cmp esi, eax
ja case.0x448951.108
mov al, byte [esi]
cmp al, byte [edi + 0x20]
jne case.0x448951.108
cmp ecx, 1
je 0x448fc4
mov al, byte [esi + 1]
cmp al, byte [edi + 0x21]
jne case.0x448951.108
mov eax, dword [edi + 0x54]
sub eax, dword [ebx]
cmp esi, eax
jne case.0x448951.108
inc dword [ebp + 0xc]
jmp 0x44891a
cmp esi, dword [edi + 0x54]
jb case.0x448951.108
jmp 0x448ef3
cmp dword [ebp - 0x18], edx
je 0x4490fc
cmp esi, dword [edi + 0x50]
jne 0x448ffd
mov dword [ebp + 0x18], edx
jmp 0x449086
lea eax, [esi - 1]
jmp 0x449003
dec eax
mov cl, byte [eax]
and cl, 0xc0
cmp cl, 0x80
je 0x449002
movzx edx, byte [eax]
cmp edx, 0xc0
jb 0x449068
mov ecx, edx
and ecx, 0x3f
movzx ebx, byte [ecx + 0x467a08]
mov ecx, ebx
imul ecx, ecx, 6
mov dword [ebp - 0xc], ebx
mov ebx, dword [ebx*4 + 0x4679ec]
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 0x449065
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 0x449047
mov edx, dword [ebp - 8]
mov ebx, dword [ebp + 0xc]
cmp edx, 0x100
jae 0x449082
mov eax, dword [edi + 0x28]
test byte [edx + eax], 0x10
je 0x449082
mov dword [ebp + 0x18], 1
jmp 0x449086
and dword [ebp + 0x18], 0
cmp esi, dword [edi + 0x54]
jb 0x44908f
xor eax, eax
jmp 0x4490f8
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x4490dd
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x467a08]
mov ebx, dword [eax*4 + 0x4679ec]
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 0x4490dd
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 0x4490c4
cmp edx, 0x100
jae 0x4490f3
mov eax, dword [edi + 0x28]
test byte [edx + eax], 0x10
je 0x4490f3
xor eax, eax
inc eax
jmp 0x4490f5
xor eax, eax
mov ebx, dword [ebp + 0xc]
xor edx, edx
jmp 0x449130
cmp esi, dword [edi + 0x50]
je 0x449115
movzx eax, byte [esi - 1]
mov ecx, dword [edi + 0x28]
test byte [eax + ecx], 0x10
mov dword [ebp + 0x18], 1
jne 0x449118
mov dword [ebp + 0x18], edx
cmp esi, dword [edi + 0x54]
jae 0x44912e
movzx eax, byte [esi]
mov ecx, dword [edi + 0x28]
test byte [eax + ecx], 0x10
je 0x44912e
xor eax, eax
inc eax
jmp 0x449130
xor eax, eax
mov cl, byte [ebx]
inc ebx
cmp cl, 5
mov dword [ebp + 0xc], ebx
jne 0x449145
xor ecx, ecx
cmp eax, dword [ebp + 0x18]
sete cl
jmp 0x44914d
xor ecx, ecx
cmp eax, dword [ebp + 0x18]
setne cl
mov eax, ecx
cmp eax, edx
je 0x44891a
jmp case.0x448951.108
test byte [ebp + 0x1c], 4
jne 0x4491b4
mov ecx, dword [edi + 0x18]
test ecx, ecx
je 0x44918c
mov eax, dword [edi + 0x54]
cmp esi, eax
jae 0x4491b4
push dword [ebp - 0x18]
lea edx, [edi + 0x1c]
push edx
push eax
push ecx
push esi
call fcn.0044d61c
add esp, 0x14
test eax, eax
jne case.0x448951.108
jmp 0x4491b4
mov eax, dword [edi + 0x1c]
mov ecx, dword [edi + 0x54]
sub ecx, eax
cmp esi, ecx
ja 0x4491b4
mov cl, byte [esi]
cmp cl, byte [edi + 0x20]
jne 0x4491b4
cmp eax, 1
je case.0x448951.108
mov al, byte [esi + 1]
cmp al, byte [edi + 0x21]
je case.0x448951.108
mov eax, dword [edi + 0x54]
mov ecx, esi
inc esi
cmp ecx, eax
jae case.0x448951.108
cmp dword [ebp - 0x18], 0
je 0x448ef3
cmp esi, eax
jae 0x448ef3
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x448ef3
inc esi
cmp esi, dword [edi + 0x54]
jb 0x4491d4
jmp 0x448ef3
mov eax, esi
inc esi
cmp eax, dword [edi + 0x54]
jae case.0x448951.108
jmp 0x448ef3
cmp esi, dword [edi + 0x54]
jae case.0x448951.108
movzx edx, byte [esi]
inc esi
cmp dword [ebp - 0x18], 0
je 0x449250
cmp edx, 0xc0
jb 0x449250
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x467a08]
mov ebx, dword [eax*4 + 0x4679ec]
mov ecx, eax
imul ecx, ecx, 6
and ebx, edx
shl ebx, cl
mov edx, ebx
jmp 0x449249
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 0x449237
cmp edx, 0x100
jae 0x448fd1
mov eax, dword [edi + 0x28]
test byte [edx + eax], 4
jmp 0x448fcb
cmp esi, dword [edi + 0x54]
jae case.0x448951.108
movzx edx, byte [esi]
inc esi
cmp dword [ebp - 0x18], 0
je 0x4492bc
cmp edx, 0xc0
jb 0x4492bc
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x467a08]
mov ebx, dword [eax*4 + 0x4679ec]
mov ecx, eax
imul ecx, ecx, 6
and ebx, edx
shl ebx, cl
mov edx, ebx
jmp 0x4492b5
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 0x4492a3
cmp edx, 0x100
jae case.0x448951.108
mov eax, dword [edi + 0x28]
test byte [edx + eax], 4
je case.0x448951.108
jmp 0x448fd1
cmp esi, dword [edi + 0x54]
jae case.0x448951.108
movzx edx, byte [esi]
inc esi
cmp dword [ebp - 0x18], 0
je 0x44932e
cmp edx, 0xc0
jb 0x44932e
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x467a08]
mov ebx, dword [eax*4 + 0x4679ec]
mov ecx, eax
imul ecx, ecx, 6
and ebx, edx
shl ebx, cl
mov edx, ebx
jmp 0x449327
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 0x449315
cmp edx, 0x100
jae 0x448fd1
mov eax, dword [edi + 0x28]
test byte [edx + eax], 1
jmp 0x448fcb
cmp esi, dword [edi + 0x54]
jae case.0x448951.108
movzx edx, byte [esi]
inc esi
cmp dword [ebp - 0x18], 0
je 0x44939a
cmp edx, 0xc0
jb 0x44939a
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x467a08]
mov ebx, dword [eax*4 + 0x4679ec]
mov ecx, eax
imul ecx, ecx, 6
and ebx, edx
shl ebx, cl
mov edx, ebx
jmp 0x449393
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 0x449381
cmp edx, 0x100
jae case.0x448951.108
mov eax, dword [edi + 0x28]
test byte [edx + eax], 1
jmp 0x4492cf
cmp esi, dword [edi + 0x54]
jae case.0x448951.108
movzx edx, byte [esi]
inc esi
cmp dword [ebp - 0x18], 0
je 0x449406
cmp edx, 0xc0
jb 0x449406
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x467a08]
mov ebx, dword [eax*4 + 0x4679ec]
mov ecx, eax
imul ecx, ecx, 6
and ebx, edx
shl ebx, cl
mov edx, ebx
jmp 0x4493ff
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 0x4493ed
cmp edx, 0x100
jae 0x448fd1
mov eax, dword [edi + 0x28]
test byte [edx + eax], 0x10
jmp 0x448fcb
cmp esi, dword [edi + 0x54]
jae case.0x448951.108
movzx edx, byte [esi]
inc esi
cmp dword [ebp - 0x18], 0
je 0x449472
cmp edx, 0xc0
jb 0x449472
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x467a08]
mov ebx, dword [eax*4 + 0x4679ec]
mov ecx, eax
imul ecx, ecx, 6
and ebx, edx
shl ebx, cl
mov edx, ebx
jmp 0x44946b
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 0x449459
cmp edx, 0x100
jae case.0x448951.108
mov eax, dword [edi + 0x28]
test byte [edx + eax], 0x10
jmp 0x4492cf
cmp esi, dword [edi + 0x54]
jae case.0x448951.108
movzx edx, byte [esi]
inc esi
cmp dword [ebp - 0x18], 0
je 0x4494de
cmp edx, 0xc0
jb 0x4494de
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x467a08]
mov ebx, dword [eax*4 + 0x4679ec]
mov ecx, eax
imul ecx, ecx, 6
and ebx, edx
shl ebx, cl
mov edx, ebx
jmp 0x4494d7
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 0x4494c5
cmp edx, 0xa
jb case.0x448951.108
cmp edx, 0xc
jbe 0x448fd1
cmp edx, 0xd
je 0x44951e
cmp edx, 0x85
je 0x448fd1
cmp edx, 0x2027
jbe case.0x448951.108
cmp edx, 0x2029
ja case.0x448951.108
jmp 0x448fd1
cmp esi, dword [edi + 0x54]
jae 0x448fd1
cmp byte [esi], 0xa
jne 0x448fd1
inc esi
jmp 0x448fd1
cmp esi, dword [edi + 0x54]
jae case.0x448951.108
movzx eax, byte [esi]
inc esi
cmp dword [ebp - 0x18], edx
je 0x44958c
cmp eax, 0xc0
jb 0x44958c
mov ecx, eax
and ecx, 0x3f
movzx edx, byte [ecx + 0x467a08]
mov ebx, dword [edx*4 + 0x4679ec]
mov ecx, edx
imul ecx, ecx, 6
and ebx, eax
shl ebx, cl
test edx, edx
mov eax, ebx
jle 0x44958c
jmp 0x449576
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 0x449573
mov ecx, 0x180e
cmp eax, ecx
ja 0x4495c2
je case.0x448951.108
cmp eax, 9
je case.0x448951.108
cmp eax, 0x20
je case.0x448951.108
cmp eax, 0xa0
je case.0x448951.108
cmp eax, 0x1680
jmp 0x4492cf
cmp eax, 0x2000
jb 0x448fd1
cmp eax, 0x200a
jbe case.0x448951.108
cmp eax, 0x202f
je case.0x448951.108
cmp eax, 0x205f
je case.0x448951.108
cmp eax, 0x3000
jmp 0x4492cf
cmp esi, dword [edi + 0x54]
jae case.0x448951.108
movzx eax, byte [esi]
inc esi
cmp dword [ebp - 0x18], edx
je 0x44964e
cmp eax, 0xc0
jb 0x44964e
mov ecx, eax
and ecx, 0x3f
movzx edx, byte [ecx + 0x467a08]
mov ebx, dword [edx*4 + 0x4679ec]
mov ecx, edx
imul ecx, ecx, 6
and ebx, eax
shl ebx, cl
test edx, edx
mov eax, ebx
jle 0x44964e
jmp 0x449638
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 0x449635
mov ecx, 0x180e
cmp eax, ecx
ja 0x449684
je 0x448fd1
cmp eax, 9
je 0x448fd1
cmp eax, 0x20
je 0x448fd1
cmp eax, 0xa0
je 0x448fd1
cmp eax, 0x1680
jmp 0x448fcb
cmp eax, 0x2000
jb case.0x448951.108
cmp eax, 0x200a
jbe 0x448fd1
cmp eax, 0x202f
je 0x448fd1
cmp eax, 0x205f
je 0x448fd1
cmp eax, 0x3000
jmp 0x448fcb
cmp esi, dword [edi + 0x54]
jae case.0x448951.108
movzx edx, byte [esi]
inc esi
cmp dword [ebp - 0x18], 0
je 0x44970e
cmp edx, 0xc0
jb 0x44970e
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x467a08]
mov ebx, dword [eax*4 + 0x4679ec]
mov ecx, eax
imul ecx, ecx, 6
and ebx, edx
shl ebx, cl
mov edx, ebx
jmp 0x449707
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 0x4496f5
cmp edx, 0xa
jb 0x448fd1
cmp edx, 0xd
jbe case.0x448951.108
cmp edx, 0x85
je case.0x448951.108
cmp edx, 0x2027
jbe 0x448fd1
cmp edx, 0x2029
jbe case.0x448951.108
jmp 0x448fd1
cmp esi, dword [edi + 0x54]
jae case.0x448951.108
movzx edx, byte [esi]
inc esi
cmp dword [ebp - 0x18], 0
je 0x44979d
cmp edx, 0xc0
jb 0x44979d
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x467a08]
mov ebx, dword [eax*4 + 0x4679ec]
mov ecx, eax
imul ecx, ecx, 6
and ebx, edx
shl ebx, cl
mov edx, ebx
jmp 0x449796
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 0x449784
cmp edx, 0xa
jb case.0x448951.108
cmp edx, 0xd
jbe 0x448fd1
jmp 0x4494f5
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 0x4497df
mov eax, dword [edi + 0xc]
lea eax, [eax + edx*4]
mov ecx, dword [eax]
test ecx, ecx
jl 0x4497df
mov ebx, dword [eax + 4]
sub ebx, ecx
jmp 0x4497e5
mov ebx, dword [edi + 0x54]
sub ebx, esi
inc ebx
mov eax, dword [ebp + 0xc]
mov al, byte [eax]
cmp al, 0x45
mov dword [ebp - 0x10], ebx
jb 0x4498ba
cmp al, 0x4a
jbe 0x449834
cmp al, 0x4c
ja 0x4498ba
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 0x44982c
mov dword [ebp - 4], bind
add eax, 5
mov dword [ebp + 0xc], eax
jmp 0x449861
movzx eax, al
movsx ebx, byte [eax + 0x4675d3]
sub eax, 0x45
inc dword [ebp + 0xc]
mov ecx, eax
movsx eax, byte [eax + 0x467620]
and ecx, 1
test eax, eax
mov dword [ebp - 0x24], ecx
mov dword [ebp - 4], eax
jne 0x449861
mov dword [ebp - 4], bind
cmp dword [ebp - 0x10], 0
je 0x44891a
xor eax, eax
inc eax
cmp ebx, eax
mov dword [ebp + 0x18], eax
jl 0x44989b
push dword [ebp + 0x1c]
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0xc]
push esi
mov ecx, edi
call fcn.00448870
test eax, eax
pop ecx
pop ecx
je case.0x448951.108
add esi, dword [ebp - 0x10]
inc dword [ebp + 0x18]
cmp dword [ebp + 0x18], ebx
jle 0x449875
cmp ebx, dword [ebp - 4]
je 0x44891a
cmp dword [ebp - 0x24], 0
je 0x44be51
mov dword [ebp + 0x18], ebx
mov ebx, dword [ebp + 0x28]
inc ebx
jmp 0x44be2c
push dword [ebp + 0x1c]
mov ecx, edi
push esi
mov eax, ebx
call fcn.00448870
test eax, eax
pop ecx
pop ecx
je case.0x448951.108
add esi, ebx
jmp 0x44891a
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 0x449958
cmp al, 0x4a
jbe 0x449925
cmp al, 0x4c
ja 0x449958
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 0x44991d
mov dword [ebp - 4], bind
add ebx, 5
mov dword [ebp + 0xc], ebx
jmp 0x449961
movzx eax, al
movsx edx, byte [eax + 0x4675d3]
sub eax, 0x45
mov ecx, eax
movsx eax, byte [eax + 0x467620]
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 0x449961
mov dword [ebp - 4], bind
jmp 0x449961
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 0x449a06
cmp edx, eax
jl 0x449a3d
cmp esi, dword [edi + 0x54]
jae case.0x448951.108
movzx eax, byte [esi]
inc esi
cmp eax, 0xc0
jb 0x4499cd
mov ecx, eax
and ecx, 0x3f
movzx edx, byte [ecx + 0x467a08]
mov ebx, dword [edx*4 + 0x4679ec]
mov ecx, edx
imul ecx, ecx, 6
and ebx, eax
shl ebx, cl
test edx, edx
mov eax, ebx
jle 0x4499ca
jmp 0x4499b4
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 0x4499b1
mov edx, dword [ebp - 0x14]
cmp eax, 0xff
jbe 0x4499da
cmp dword [ebp - 8], 0x4d
jmp 0x4499ef
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.0x448951.108
inc dword [ebp + 0x18]
cmp dword [ebp + 0x18], edx
jle 0x449979
mov ebx, dword [ebp + 0xc]
jmp 0x449a3d
cmp edx, eax
jl 0x449a3d
cmp esi, dword [edi + 0x54]
jae case.0x448951.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.0x448951.108
inc dword [ebp + 0x18]
mov edx, dword [ebp - 0x14]
cmp dword [ebp + 0x18], edx
jle 0x449a0a
cmp edx, dword [ebp - 4]
je 0x44891a
xor eax, eax
cmp dword [ebp - 0x24], eax
je 0x44bfcc
cmp dword [ebp - 0x18], eax
mov dword [ebp + 0x18], edx
je 0x44bf6a
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 0x44bf54
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 0x449b01
cmp al, 0x4a
jbe 0x449ace
cmp al, 0x4c
ja 0x449b01
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 0x449ac6
mov dword [ebp - 4], bind
add ebx, 5
mov dword [ebp + 0xc], ebx
jmp 0x449b0a
movzx eax, al
sub eax, 0x45
mov ecx, eax
and ecx, 1
mov dword [ebp - 0x24], ecx
movsx ecx, byte [eax + 0x467618]
movsx eax, byte [eax + 0x467620]
inc ebx
cmp eax, edx
mov dword [ebp + 0xc], ebx
mov dword [ebp - 0x14], ecx
mov dword [ebp - 4], eax
jne 0x449b0a
mov dword [ebp - 4], bind
jmp 0x449b0a
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 0x449b85
cmp esi, dword [edi + 0x54]
jae case.0x448951.108
movzx eax, byte [esi]
inc esi
cmp eax, 0xc0
mov dword [ebp - 8], eax
jb 0x449b60
and eax, 0x3f
movzx eax, byte [eax + 0x467a08]
mov edx, dword [eax*4 + 0x4679ec]
and edx, dword [ebp - 8]
mov ecx, eax
imul ecx, ecx, 6
shl edx, cl
mov dword [ebp - 8], edx
jmp 0x449b5c
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 0x449b4c
push dword [ebp - 0x1c]
push dword [ebp - 8]
call fcn.0044d9fc
test eax, eax
pop ecx
pop ecx
je case.0x448951.108
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 0x14]
jle 0x449b15
mov ebx, dword [ebp + 0xc]
xor edx, edx
mov eax, dword [ebp - 0x14]
cmp eax, dword [ebp - 4]
je 0x44891a
cmp dword [ebp - 0x24], edx
je 0x44c1cb
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 0x44c1b5
cmp dword [ebp - 0x18], edx
je 0x449c05
xor ecx, ecx
inc ecx
inc ebx
movzx eax, byte [ebx]
cmp eax, 0xc0
mov dword [ebp + 0xc], ebx
jb 0x449bdb
and eax, 0x3f
movzx ecx, byte [eax + 0x467a08]
inc ecx
mov eax, dword [edi + 0x54]
sub eax, esi
cmp ecx, eax
jg case.0x448951.108
jmp 0x449bfc
mov dl, byte [esi]
mov al, byte [ebx]
dec ecx
inc esi
inc ebx
cmp al, dl
mov dword [ebp + 0xc], ebx
jne case.0x448951.108
test ecx, ecx
jg 0x449bea
jmp 0x44891a
mov eax, dword [edi + 0x54]
sub eax, esi
cmp eax, 1
jl case.0x448951.108
mov al, byte [esi]
inc esi
cmp byte [ebx + 1], al
jne case.0x448951.108
jmp 0x448a67
cmp dword [ebp - 0x18], edx
je 0x449d19
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 0x449c9a
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x467a08]
mov ebx, dword [eax*4 + 0x4679ec]
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 0x449c90
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 0x449c73
mov ecx, dword [ebp - 0xc]
mov ebx, dword [ebp + 0xc]
inc eax
mov dword [ebp - 0x10], eax
mov edx, dword [edi + 0x54]
sub edx, esi
cmp eax, edx
jg case.0x448951.108
cmp dword [ebp - 8], 0x80
jae 0x449cc6
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 0x449151
movzx eax, byte [esi]
inc esi
cmp eax, 0xc0
mov dword [ebp + 0x18], eax
jb 0x449d08
and eax, 0x3f
movzx edx, byte [eax + 0x467a08]
mov eax, dword [edx*4 + 0x4679ec]
and eax, dword [ebp + 0x18]
mov ecx, edx
imul ecx, ecx, 6
shl eax, cl
mov dword [ebp + 0x18], eax
jmp 0x449d04
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 0x449cf4
mov eax, dword [ebp - 0x10]
add dword [ebp + 0xc], eax
mov eax, dword [ebp + 0x18]
cmp dword [ebp - 8], eax
jmp 0x449151
mov eax, dword [edi + 0x54]
sub eax, esi
cmp eax, 1
jl case.0x448951.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 0x449c19
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 0x449dcd
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 0x449d4b
mov dword [ebp - 0x1c], 1
xor ebx, ebx
inc dword [ebp + 0xc]
jmp 0x449dc6
xor ebx, ebx
inc ebx
mov dword [ebp - 0x1c], ebx
jmp 0x449d80
xor eax, eax
inc eax
xor ebx, ebx
inc dword [ebp + 0xc]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], eax
jmp 0x449dcd
mov eax, dword [ebp + 0xc]
movzx eax, byte [eax]
movsx ebx, byte [eax + 0x4675fa]
sub eax, 0x1e
inc dword [ebp + 0xc]
mov ecx, eax
movsx eax, byte [eax + 0x467620]
and ecx, 1
test eax, eax
mov dword [ebp - 0x24], ecx
mov dword [ebp - 4], eax
jne 0x449dcd
mov dword [ebp - 4], bind
cmp dword [ebp - 0x18], 0
je 0x449ee9
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 0x449e4b
mov ecx, eax
and ecx, 0x3f
movzx edx, byte [ecx + 0x467a08]
mov ecx, edx
imul ecx, ecx, 6
mov dword [ebp - 0x10], edx
mov edx, dword [edx*4 + 0x4679ec]
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 0x449e47
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 0x449e24
mov eax, dword [ebp - 8]
inc edx
mov dword [ebp - 0x10], edx
mov edx, dword [edi + 0x54]
mov ecx, ebx
imul ecx, dword [ebp - 0x10]
sub edx, esi
cmp ecx, edx
jg case.0x448951.108
mov ecx, dword [ebp - 0x10]
add dword [ebp + 0xc], ecx
xor edx, edx
inc edx
cmp ecx, edx
jle 0x449f05
cmp ebx, edx
mov dword [ebp + 0x18], edx
jl 0x449e98
push dword [ebp - 0x10]
push dword [ebp - 0xc]
push esi
call fcn.0044e7d6
add esp, 0xc
test eax, eax
jne case.0x448951.108
add esi, dword [ebp - 0x10]
inc dword [ebp + 0x18]
cmp dword [ebp + 0x18], ebx
jle 0x449e76
cmp ebx, dword [ebp - 4]
je 0x44891a
cmp dword [ebp - 0x24], 0
jne 0x44c290
mov dword [ebp - 0x14], esi
jmp 0x449ed1
mov eax, dword [edi + 0x54]
sub eax, dword [ebp - 0x10]
cmp esi, eax
ja 0x449ed6
push dword [ebp - 0x10]
push dword [ebp - 0xc]
push esi
call fcn.0044e7d6
add esp, 0xc
test eax, eax
jne 0x449ed6
add esi, dword [ebp - 0x10]
inc ebx
cmp ebx, dword [ebp - 4]
jl 0x449eb0
cmp dword [ebp - 0x1c], 0
jne 0x44891a
mov ebx, dword [ebp + 0x28]
inc ebx
jmp 0x44c2fc
mov eax, dword [edi + 0x54]
sub eax, esi
cmp ebx, eax
jg case.0x448951.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 0x449fab
cmp ebx, edx
mov ecx, dword [edi + 0x24]
movzx eax, byte [ecx + eax]
mov dword [ebp - 8], eax
mov eax, edx
jl 0x449f35
movzx edx, byte [esi]
movzx edx, byte [edx + ecx]
inc esi
cmp dword [ebp - 8], edx
jne case.0x448951.108
inc eax
cmp eax, ebx
jle 0x449f1f
cmp ebx, dword [ebp - 4]
je 0x44891a
cmp dword [ebp - 0x24], 0
jne 0x44c321
mov dword [ebp - 0x14], esi
jmp 0x449f60
cmp esi, dword [edi + 0x54]
jae 0x449f65
movzx eax, byte [esi]
movzx eax, byte [eax + ecx]
cmp dword [ebp - 8], eax
jne 0x449f65
inc esi
inc ebx
cmp ebx, dword [ebp - 4]
jl 0x449f4d
cmp dword [ebp - 0x1c], 0
jne 0x44891a
cmp esi, dword [ebp - 0x14]
jb case.0x448951.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.004488ce
add esp, 0x24
dec esi
test eax, eax
jne 0x44cb3c
cmp esi, dword [ebp - 0x14]
jae 0x449f7c
jmp case.0x448951.108
cmp ebx, edx
mov ecx, edx
jl 0x449fc2
movzx edx, byte [esi]
inc esi
cmp eax, edx
jne case.0x448951.108
inc ecx
cmp ecx, ebx
jle 0x449fb1
cmp ebx, dword [ebp - 4]
je 0x44891a
cmp dword [ebp - 0x24], 0
jne 0x44c37b
mov dword [ebp - 0x14], esi
jmp 0x449fe9
cmp esi, dword [edi + 0x54]
jae 0x449fee
movzx eax, byte [esi]
cmp dword [ebp - 8], eax
jne 0x449fee
inc esi
inc ebx
cmp ebx, dword [ebp - 4]
jl 0x449fda
cmp dword [ebp - 0x1c], 0
jne 0x44891a
cmp esi, dword [ebp - 0x14]
jb case.0x448951.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.004488ce
add esp, 0x24
dec esi
test eax, eax
jne 0x44cb3c
cmp esi, dword [ebp - 0x14]
jae 0x44a005
jmp case.0x448951.108
cmp esi, dword [edi + 0x54]
jae case.0x448951.108
movzx edx, byte [esi]
inc ebx
inc esi
cmp dword [ebp - 0x18], 0
mov dword [ebp + 0xc], ebx
je 0x44a08c
cmp edx, 0xc0
jb 0x44a08c
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x467a08]
mov ebx, dword [eax*4 + 0x4679ec]
mov ecx, eax
imul ecx, ecx, 6
and ebx, edx
shl ebx, cl
mov edx, ebx
jmp 0x44a085
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 0x44a073
test byte [ebp + 0x1c], 1
je 0x44a0be
cmp edx, 0x100
jae 0x44a0a1
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 0x44891a
jmp case.0x448951.108
mov eax, dword [ebp + 0xc]
movzx eax, byte [eax]
jmp 0x44a0ae
xor edx, edx
mov dh, byte [ebx + 1]
mov dl, byte [ebx + 2]
mov dword [ebp - 4], edx
add ebx, 3
jmp 0x44a153
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 0x44a0d1
mov dword [ebp - 0x1c], 1
xor edx, edx
inc ebx
jmp 0x44a14c
xor edx, edx
inc edx
mov dword [ebp - 0x1c], edx
jmp 0x44a0f9
xor eax, eax
inc eax
xor edx, edx
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], eax
inc ebx
jmp 0x44a153
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 0x44a0d1
movzx eax, byte [ebx]
movsx edx, byte [eax + 0x4675ed]
sub eax, 0x2b
mov ecx, eax
movsx eax, byte [eax + 0x467620]
and ecx, 1
inc ebx
test eax, eax
mov dword [ebp - 0x24], ecx
mov dword [ebp - 4], eax
jne 0x44a153
mov dword [ebp - 4], bind
mov eax, dword [edi + 0x54]
sub eax, esi
cmp edx, eax
jg case.0x448951.108
movzx ecx, byte [ebx]
inc ebx
test byte [ebp + 0x1c], 1
mov dword [ebp - 8], ecx
mov dword [ebp + 0xc], ebx
je 0x44a34b
cmp dword [ebp - 0x18], 0
mov eax, dword [edi + 0x24]
movzx ecx, byte [eax + ecx]
mov dword [ebp - 8], ecx
je 0x44a20e
xor eax, eax
inc eax
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44a231
movzx ebx, byte [esi]
inc esi
cmp ebx, 0xc0
jb 0x44a1e9
mov eax, ebx
and eax, 0x3f
movzx eax, byte [eax + 0x467a08]
mov ecx, eax
imul ecx, ecx, 6
mov dword [ebp - 0xc], ecx
mov ecx, dword [eax*4 + 0x4679ec]
and ecx, ebx
mov ebx, ecx
mov ecx, dword [ebp - 0xc]
shl ebx, cl
jmp 0x44a1e2
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 0x44a1c8
cmp ebx, 0x100
jae 0x44a1f8
mov eax, dword [edi + 0x24]
movzx ebx, byte [eax + ebx]
cmp dword [ebp - 8], ebx
je case.0x448951.108
inc dword [ebp + 0x18]
cmp dword [ebp + 0x18], edx
jle 0x44a196
mov ebx, dword [ebp + 0xc]
jmp 0x44a231
xor ecx, ecx
inc ecx
cmp edx, ecx
mov dword [ebp + 0x18], ecx
jl 0x44a231
movzx ecx, byte [esi]
movzx ecx, byte [ecx + eax]
inc esi
cmp dword [ebp - 8], ecx
je case.0x448951.108
inc dword [ebp + 0x18]
cmp dword [ebp + 0x18], edx
jle 0x44a218
cmp edx, dword [ebp - 4]
je 0x44891a
xor ecx, ecx
cmp dword [ebp - 0x24], ecx
jne 0x44c3ce
cmp dword [ebp - 0x18], ecx
mov dword [ebp - 0x14], esi
je 0x44a301
cmp edx, dword [ebp - 4]
mov dword [ebp + 0x18], edx
jge 0x44a2d4
xor eax, eax
inc eax
cmp esi, dword [edi + 0x54]
jae 0x44a2d4
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x44a2b3
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x467a08]
mov ebx, dword [eax*4 + 0x4679ec]
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 0x44a2af
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 0x44a296
mov ebx, dword [ebp + 0xc]
inc eax
cmp edx, 0x100
jae 0x44a2c2
mov ecx, dword [edi + 0x24]
movzx edx, byte [ecx + edx]
cmp dword [ebp - 8], edx
je 0x44a2d4
add esi, eax
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jl 0x44a259
cmp dword [ebp - 0x1c], 0
jne 0x44891a
mov eax, dword [ebp + 0x28]
inc eax
mov dword [ebp - 0x10], eax
push eax
jmp 0x44c508
cmp esi, dword [edi + 0x54]
jae 0x44a306
movzx ebx, byte [esi]
mov eax, dword [edi + 0x24]
movzx eax, byte [ebx + eax]
cmp dword [ebp - 8], eax
je 0x44a306
inc esi
inc edx
cmp edx, dword [ebp - 4]
jl 0x44a2eb
cmp dword [ebp - 0x1c], ecx
jne 0x44891a
cmp esi, dword [ebp - 0x14]
jb case.0x448951.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.004488ce
add esp, 0x24
test eax, eax
jne 0x44cb3c
dec esi
cmp esi, dword [ebp - 0x14]
jae 0x44a31c
jmp case.0x448951.108
xor eax, eax
inc eax
cmp dword [ebp - 0x18], 0
je 0x44a3c4
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44a3da
movzx ebx, byte [esi]
inc esi
cmp ebx, 0xc0
jb 0x44a3ae
mov eax, ebx
and eax, 0x3f
movzx eax, byte [eax + 0x467a08]
mov ecx, eax
imul ecx, ecx, 6
mov dword [ebp - 0xc], ecx
mov ecx, dword [eax*4 + 0x4679ec]
and ecx, ebx
mov ebx, ecx
mov ecx, dword [ebp - 0xc]
shl ebx, cl
jmp 0x44a3a7
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 0x44a38d
cmp dword [ebp - 8], ebx
je case.0x448951.108
inc dword [ebp + 0x18]
cmp dword [ebp + 0x18], edx
jle 0x44a35b
mov ebx, dword [ebp + 0xc]
jmp 0x44a3da
cmp edx, eax
jl 0x44a3da
movzx ecx, byte [esi]
inc esi
cmp dword [ebp - 8], ecx
je case.0x448951.108
inc eax
cmp eax, edx
jle 0x44a3c8
cmp edx, dword [ebp - 4]
je 0x44891a
xor ecx, ecx
cmp dword [ebp - 0x24], ecx
jne 0x44c52a
cmp dword [ebp - 0x18], ecx
mov dword [ebp - 0x14], esi
je 0x44a49a
cmp edx, dword [ebp - 4]
mov dword [ebp + 0x18], edx
jge 0x44a474
jmp 0x44a406
xor ecx, ecx
xor eax, eax
inc eax
cmp esi, dword [edi + 0x54]
jae 0x44a474
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x44a460
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x467a08]
mov ebx, dword [eax*4 + 0x4679ec]
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 0x44a45c
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 0x44a443
mov ebx, dword [ebp + 0xc]
inc eax
cmp dword [ebp - 8], edx
je 0x44a472
add esi, eax
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jl 0x44a404
xor ecx, ecx
cmp dword [ebp - 0x1c], ecx
jne 0x44891a
mov eax, dword [ebp + 0x28]
inc eax
push eax
mov dword [ebp - 0x10], eax
push ecx
jmp 0x44c64e
cmp esi, dword [edi + 0x54]
jae 0x44a49f
movzx eax, byte [esi]
cmp dword [ebp - 8], eax
je 0x44a49f
inc esi
inc edx
cmp edx, dword [ebp - 4]
jl 0x44a48b
cmp dword [ebp - 0x1c], ecx
jne 0x44891a
cmp esi, dword [ebp - 0x14]
jb case.0x448951.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.004488ce
add esp, 0x24
test eax, eax
jne 0x44cb3c
dec esi
cmp esi, dword [ebp - 0x14]
jae 0x44a4b5
jmp case.0x448951.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 0x44a59d
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 0x44a59a
and dword [ebp - 0x14], 0
mov dword [ebp - 0x1c], 1
mov dword [ebp - 4], bind
inc ebx
jmp 0x44a520
xor eax, eax
inc eax
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x14], eax
jmp 0x44a530
xor eax, eax
inc eax
and dword [ebp - 0x14], 0
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], eax
jmp 0x44a537
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 0x44a51d
movzx eax, byte [ebx]
movsx edx, byte [eax + 0x4675e0]
sub eax, 0x38
mov ecx, eax
movsx eax, byte [eax + 0x467620]
and ecx, 1
inc ebx
test eax, eax
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x14], edx
mov dword [ebp - 4], eax
jne 0x44a59a
mov dword [ebp - 4], bind
xor eax, eax
inc eax
movzx ecx, byte [ebx]
mov dword [ebp - 0xc], ecx
mov ecx, dword [edi + 0x54]
mov dword [ebp - 0x10], ecx
inc ebx
sub ecx, esi
cmp edx, ecx
mov dword [ebp + 0xc], ebx
jg case.0x448951.108
test edx, edx
jle 0x44ae62
mov ecx, dword [ebp - 0xc]
add ecx, 0xfffffffa
cmp dword [ebp - 0x18], 0
je 0x44abb5
cmp ecx, 0xe
ja case.0x44ca0d.14
jmp dword [ecx*4 + 0x44ccc6]
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44ae62
mov ecx, dword [ebp - 0x10]
cmp esi, ecx
jae case.0x448951.108
test byte [ebp + 0x1c], 4
jne 0x44a643
mov edx, dword [edi + 0x18]
test edx, edx
je 0x44a61f
push dword [ebp - 0x18]
lea eax, [edi + 0x1c]
push eax
push ecx
push edx
push esi
call fcn.0044d61c
add esp, 0x14
test eax, eax
jne case.0x448951.108
inc eax
jmp 0x44a643
mov edx, dword [edi + 0x1c]
sub ecx, edx
cmp esi, ecx
ja 0x44a643
mov cl, byte [esi]
cmp cl, byte [edi + 0x20]
jne 0x44a643
cmp edx, eax
je case.0x448951.108
mov cl, byte [esi + 1]
cmp cl, byte [edi + 0x21]
je case.0x448951.108
mov ecx, dword [edi + 0x54]
inc esi
cmp esi, ecx
mov dword [ebp - 0x10], ecx
jae 0x44a65e
mov cl, byte [esi]
and cl, 0xc0
cmp cl, 0x80
jne 0x44a65e
inc esi
cmp esi, dword [edi + 0x54]
jb 0x44a64e
inc dword [ebp + 0x18]
mov ecx, dword [ebp + 0x18]
cmp ecx, dword [ebp - 0x14]
jle 0x44a5ea
mov edx, dword [ebp - 0x14]
jmp 0x44ae62
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44ae62
cmp esi, dword [ebp - 0x10]
jae case.0x448951.108
movzx edx, byte [esi]
inc esi
cmp edx, 0xc0
jb 0x44a6ca
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x467a08]
mov ebx, dword [eax*4 + 0x4679ec]
mov ecx, eax
imul ecx, ecx, 6
and ebx, edx
shl ebx, cl
mov edx, ebx
jmp 0x44a6c3
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 0x44a6b1
cmp edx, 0xa
jb case.0x448951.108
cmp edx, 0xc
jbe 0x44a70a
cmp edx, 0xd
je 0x44a6ff
cmp edx, 0x85
je 0x44a70a
cmp edx, 0x2027
jbe case.0x448951.108
cmp edx, 0x2029
ja case.0x448951.108
jmp 0x44a70a
cmp esi, dword [ebp - 0x10]
jae 0x44a70a
cmp byte [esi], 0xa
jne 0x44a70a
inc esi
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 0x14]
jle 0x44a67c
mov ebx, dword [ebp + 0xc]
jmp 0x44a669
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44ae62
cmp esi, dword [ebp - 0x10]
jae case.0x448951.108
movzx eax, byte [esi]
inc esi
cmp eax, 0xc0
jb 0x44a77d
mov ecx, eax
and ecx, 0x3f
movzx edx, byte [ecx + 0x467a08]
mov ebx, dword [edx*4 + 0x4679ec]
mov ecx, edx
imul ecx, ecx, 6
and ebx, eax
shl ebx, cl
test edx, edx
mov eax, ebx
jle 0x44a77d
jmp 0x44a767
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 0x44a764
mov ecx, 0x180e
cmp eax, ecx
ja 0x44a7b0
je case.0x448951.108
cmp eax, 9
je case.0x448951.108
cmp eax, 0x20
je case.0x448951.108
cmp eax, 0xa0
je case.0x448951.108
cmp eax, 0x1680
jmp 0x44a7dd
cmp eax, 0x2000
jb 0x44a7e3
cmp eax, 0x200a
jbe case.0x448951.108
cmp eax, 0x202f
je case.0x448951.108
cmp eax, 0x205f
je case.0x448951.108
cmp eax, 0x3000
je case.0x448951.108
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 0x14]
jle 0x44a72c
jmp 0x44a719
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44ae62
cmp esi, dword [ebp - 0x10]
jae case.0x448951.108
movzx eax, byte [esi]
inc esi
cmp eax, 0xc0
jb 0x44a853
mov ecx, eax
and ecx, 0x3f
movzx edx, byte [ecx + 0x467a08]
mov ebx, dword [edx*4 + 0x4679ec]
mov ecx, edx
imul ecx, ecx, 6
and ebx, eax
shl ebx, cl
test edx, edx
mov eax, ebx
jle 0x44a853
jmp 0x44a83d
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 0x44a83a
mov ecx, 0x180e
cmp eax, ecx
ja 0x44a876
je 0x44a8a1
cmp eax, 9
je 0x44a8a1
cmp eax, 0x20
je 0x44a8a1
cmp eax, 0xa0
je 0x44a8a1
cmp eax, 0x1680
jmp 0x44a89b
cmp eax, 0x2000
jb case.0x448951.108
cmp eax, 0x200a
jbe 0x44a8a1
cmp eax, 0x202f
je 0x44a8a1
cmp eax, 0x205f
je 0x44a8a1
cmp eax, 0x3000
jne case.0x448951.108
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 0x14]
jle 0x44a802
jmp 0x44a719
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44ae62
cmp esi, dword [ebp - 0x10]
jae case.0x448951.108
movzx edx, byte [esi]
inc esi
cmp edx, 0xc0
jb 0x44a90e
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x467a08]
mov ebx, dword [eax*4 + 0x4679ec]
mov ecx, eax
imul ecx, ecx, 6
and ebx, edx
shl ebx, cl
mov edx, ebx
jmp 0x44a907
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 0x44a8f5
cmp edx, 0xa
jb 0x44a93c
cmp edx, 0xd
jbe case.0x448951.108
cmp edx, 0x85
je case.0x448951.108
cmp edx, 0x2027
jbe 0x44a93c
cmp edx, 0x2029
jbe case.0x448951.108
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 0x14]
jle 0x44a8c0
jmp 0x44a719
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44ae62
cmp esi, dword [ebp - 0x10]
jae case.0x448951.108
movzx edx, byte [esi]
inc esi
cmp edx, 0xc0
jb 0x44a9a9
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x467a08]
mov ebx, dword [eax*4 + 0x4679ec]
mov ecx, eax
imul ecx, ecx, 6
and ebx, edx
shl ebx, cl
mov edx, ebx
jmp 0x44a9a2
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 0x44a990
cmp edx, 0xa
jb case.0x448951.108
cmp edx, 0xd
jbe 0x44a9d7
cmp edx, 0x85
je 0x44a9d7
cmp edx, 0x2027
jbe case.0x448951.108
cmp edx, 0x2029
ja case.0x448951.108
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 0x14]
jle 0x44a95b
jmp 0x44a719
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44ae62
cmp esi, dword [ebp - 0x10]
jae case.0x448951.108
movzx edx, byte [esi]
inc esi
cmp edx, 0xc0
jb 0x44aa44
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x467a08]
mov ebx, dword [eax*4 + 0x4679ec]
mov ecx, eax
imul ecx, ecx, 6
and ebx, edx
shl ebx, cl
mov edx, ebx
jmp 0x44aa3d
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 0x44aa2b
cmp edx, 0x80
jae 0x44aa59
mov eax, dword [edi + 0x28]
test byte [edx + eax], 4
jne case.0x448951.108
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 0x14]
jle 0x44a9f6
jmp 0x44a719
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44ae62
cmp esi, dword [ebp - 0x10]
jae case.0x448951.108
mov cl, byte [esi]
cmp cl, 0x80
jae case.0x448951.108
movzx eax, cl
mov ecx, dword [edi + 0x28]
mov al, byte [eax + ecx]
and al, 4
inc esi
test al, al
je case.0x448951.108
inc dword [ebp + 0x18]
cmp dword [ebp + 0x18], edx
jle 0x44aa74
jmp 0x44ae62
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44ae62
cmp esi, dword [ebp - 0x10]
jae case.0x448951.108
mov cl, byte [esi]
cmp cl, 0x80
jae 0x44aad4
movzx eax, cl
mov ecx, dword [edi + 0x28]
test byte [eax + ecx], 1
jne case.0x448951.108
inc esi
cmp esi, dword [ebp - 0x10]
jae 0x44aae2
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
je 0x44aad4
inc dword [ebp + 0x18]
cmp dword [ebp + 0x18], edx
jle 0x44aab4
jmp 0x44ae62
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44ae62
cmp esi, dword [ebp - 0x10]
jae case.0x448951.108
mov cl, byte [esi]
cmp cl, 0x80
jae case.0x448951.108
movzx eax, cl
mov ecx, dword [edi + 0x28]
mov al, byte [eax + ecx]
and al, 1
inc esi
test al, al
je case.0x448951.108
inc dword [ebp + 0x18]
cmp dword [ebp + 0x18], edx
jle 0x44aafa
jmp 0x44ae62
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44ae62
cmp esi, dword [ebp - 0x10]
jae case.0x448951.108
mov cl, byte [esi]
cmp cl, 0x80
jae 0x44ab5a
movzx eax, cl
mov ecx, dword [edi + 0x28]
test byte [eax + ecx], 0x10
jne case.0x448951.108
inc esi
cmp esi, dword [ebp - 0x10]
jae 0x44ab68
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
je 0x44ab5a
inc dword [ebp + 0x18]
cmp dword [ebp + 0x18], edx
jle 0x44ab3a
jmp 0x44ae62
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44ae62
cmp esi, dword [ebp - 0x10]
jae case.0x448951.108
mov cl, byte [esi]
cmp cl, 0x80
jae case.0x448951.108
movzx eax, cl
mov ecx, dword [edi + 0x28]
mov al, byte [eax + ecx]
and al, 0x10
inc esi
test al, al
je case.0x448951.108
inc dword [ebp + 0x18]
cmp dword [ebp + 0x18], edx
jle 0x44ab80
jmp 0x44ae62
cmp ecx, 0xe
ja case.0x44ca0d.14
jmp dword [ecx*4 + 0x44cd02]
test byte [ebp + 0x1c], 4
jne case.0x44abbe.7
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44ae62
mov edx, dword [edi + 0x18]
test edx, edx
je 0x44ac00
mov ecx, dword [edi + 0x54]
cmp esi, ecx
jae 0x44ac27
push 0
lea eax, [edi + 0x1c]
push eax
push ecx
push edx
push esi
call fcn.0044d61c
add esp, 0x14
test eax, eax
jne case.0x448951.108
inc eax
jmp 0x44ac27
mov ecx, dword [edi + 0x1c]
mov edx, dword [edi + 0x54]
sub edx, ecx
cmp esi, edx
ja 0x44ac27
mov dl, byte [esi]
cmp dl, byte [edi + 0x20]
jne 0x44ac27
cmp ecx, eax
je case.0x448951.108
mov cl, byte [esi + 1]
cmp cl, byte [edi + 0x21]
je case.0x448951.108
inc esi
inc dword [ebp + 0x18]
mov ecx, dword [ebp + 0x18]
cmp ecx, dword [ebp - 0x14]
jle 0x44abd6
jmp 0x44a669
add esi, edx
jmp 0x44ae62
cmp edx, eax
jl 0x44ae62
cmp esi, dword [ebp - 0x10]
jae case.0x448951.108
movzx ecx, byte [esi]
inc esi
cmp ecx, 0xa
jl case.0x448951.108
cmp ecx, 0xc
jle 0x44ac80
cmp ecx, 0xd
je 0x44ac75
cmp ecx, 0x85
jne case.0x448951.108
jmp 0x44ac80
cmp esi, dword [ebp - 0x10]
jae 0x44ac80
cmp byte [esi], 0xa
jne 0x44ac80
inc esi
inc eax
cmp eax, edx
jle 0x44ac47
jmp 0x44ae62
cmp edx, eax
jl 0x44ae62
cmp esi, dword [ebp - 0x10]
jae case.0x448951.108
movzx ecx, byte [esi]
inc esi
cmp ecx, 9
je case.0x448951.108
cmp ecx, 0x20
je case.0x448951.108
cmp ecx, 0xa0
je case.0x448951.108
inc eax
cmp eax, edx
jle 0x44ac92
jmp 0x44ae62
cmp edx, eax
jl 0x44ae62
cmp esi, dword [ebp - 0x10]
jae case.0x448951.108
movzx ecx, byte [esi]
inc esi
cmp ecx, 9
je 0x44acf2
cmp ecx, 0x20
je 0x44acf2
cmp ecx, 0xa0
jne case.0x448951.108
inc eax
cmp eax, edx
jle 0x44accf
jmp 0x44ae62
cmp edx, eax
jl 0x44ae62
cmp esi, dword [ebp - 0x10]
jae case.0x448951.108
movzx ecx, byte [esi]
inc esi
cmp ecx, 0xa
jl 0x44ad2b
cmp ecx, 0xd
jle case.0x448951.108
cmp ecx, 0x85
je case.0x448951.108
inc eax
cmp eax, edx
jle 0x44ad04
jmp 0x44ae62
cmp edx, eax
jl 0x44ae62
cmp esi, dword [ebp - 0x10]
jae case.0x448951.108
movzx ecx, byte [esi]
inc esi
cmp ecx, 0xa
jl case.0x448951.108
cmp ecx, 0xd
jle 0x44ad64
cmp ecx, 0x85
jne case.0x448951.108
inc eax
cmp eax, edx
jle 0x44ad3d
jmp 0x44ae62
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44ae62
mov eax, dword [edi + 0x28]
movzx ecx, byte [esi]
mov cl, byte [ecx + eax]
and cl, 4
inc esi
test cl, cl
jne case.0x448951.108
inc dword [ebp + 0x18]
cmp dword [ebp + 0x18], edx
jle 0x44ad7c
jmp 0x44ae62
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44ae62
mov eax, dword [edi + 0x28]
movzx ecx, byte [esi]
mov cl, byte [ecx + eax]
and cl, 4
inc esi
test cl, cl
je case.0x448951.108
inc dword [ebp + 0x18]
cmp dword [ebp + 0x18], edx
jle 0x44ada9
jmp 0x44ae62
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44ae62
mov eax, dword [edi + 0x28]
movzx ecx, byte [esi]
mov cl, byte [ecx + eax]
and cl, 1
inc esi
test cl, cl
jne case.0x448951.108
inc dword [ebp + 0x18]
cmp dword [ebp + 0x18], edx
jle 0x44add6
jmp 0x44ae62
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44ae62
mov eax, dword [edi + 0x28]
movzx ecx, byte [esi]
mov cl, byte [ecx + eax]
and cl, 1
inc esi
test cl, cl
je case.0x448951.108
inc dword [ebp + 0x18]
cmp dword [ebp + 0x18], edx
jle 0x44adfc
jmp 0x44ae62
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44ae62
mov eax, dword [edi + 0x28]
movzx ecx, byte [esi]
mov cl, byte [ecx + eax]
and cl, 0x10
inc esi
test cl, cl
jne case.0x448951.108
inc dword [ebp + 0x18]
cmp dword [ebp + 0x18], edx
jle 0x44ae22
jmp 0x44ae62
cmp edx, eax
mov dword [ebp + 0x18], eax
jl 0x44ae62
mov eax, dword [edi + 0x28]
movzx ecx, byte [esi]
mov cl, byte [ecx + eax]
and cl, 0x10
inc esi
test cl, cl
je case.0x448951.108
inc dword [ebp + 0x18]
cmp dword [ebp + 0x18], edx
jle 0x44ae48
mov ecx, dword [ebp - 4]
cmp edx, ecx
je 0x44891a
xor eax, eax
cmp dword [ebp - 0x24], eax
jne 0x44c675
cmp dword [ebp - 0x18], eax
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x14], esi
je 0x44b5a3
add eax, 0xfffffffa
cmp eax, 0xe
ja case.0x44ca0d.14
jmp dword [eax*4 + 0x44cd3e]
cmp ecx, 0x7fffffff
jge 0x44af57
test byte [ebp + 0x1c], 4
jne 0x44af24
cmp edx, ecx
mov ebx, edx
jge 0x44b590
mov eax, dword [edi + 0x54]
cmp esi, eax
jae 0x44b590
mov ecx, dword [edi + 0x18]
test ecx, ecx
je 0x44aee4
push dword [ebp - 0x18]
lea edx, [edi + 0x1c]
push edx
push eax
push ecx
push esi
call fcn.0044d61c
add esp, 0x14
test eax, eax
jne 0x44b590
jmp 0x44af13
mov ecx, dword [edi + 0x1c]
sub eax, ecx
cmp esi, eax
ja 0x44af13
mov al, byte [esi]
cmp al, byte [edi + 0x20]
jne 0x44af13
cmp ecx, 1
je 0x44b590
mov al, byte [esi + 1]
cmp al, byte [edi + 0x21]
je 0x44b590
jmp 0x44af13
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x44af19
inc esi
cmp esi, dword [edi + 0x54]
jb 0x44af0b
inc ebx
cmp ebx, dword [ebp - 4]
jl 0x44aeb6
jmp 0x44b590
cmp edx, ecx
jge 0x44b590
mov eax, dword [edi + 0x54]
cmp esi, eax
jae 0x44b590
inc esi
cmp esi, eax
jae 0x44af4c
mov cl, byte [esi]
and cl, 0xc0
cmp cl, 0x80
jne 0x44af4c
inc esi
cmp esi, dword [edi + 0x54]
jb 0x44af3c
inc edx
cmp edx, dword [ebp - 4]
jl 0x44af2f
jmp 0x44b590
test byte [ebp + 0x1c], 4
jne 0x44afd5
cmp edx, ecx
mov ebx, edx
jge 0x44b590
mov eax, dword [edi + 0x54]
cmp esi, eax
jae 0x44b590
mov ecx, dword [edi + 0x18]
test ecx, ecx
je 0x44af95
push dword [ebp - 0x18]
lea edx, [edi + 0x1c]
push edx
push eax
push ecx
push esi
call fcn.0044d61c
add esp, 0x14
test eax, eax
jne 0x44b590
jmp 0x44afc4
mov ecx, dword [edi + 0x1c]
sub eax, ecx
cmp esi, eax
ja 0x44afc4
mov al, byte [esi]
cmp al, byte [edi + 0x20]
jne 0x44afc4
cmp ecx, 1
je 0x44b590
mov al, byte [esi + 1]
cmp al, byte [edi + 0x21]
je 0x44b590
jmp 0x44afc4
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x44afca
inc esi
cmp esi, dword [edi + 0x54]
jb 0x44afbc
inc ebx
cmp ebx, dword [ebp - 4]
jl 0x44af67
jmp 0x44b590
mov esi, dword [edi + 0x54]
jmp 0x44b590
mov eax, dword [edi + 0x54]
sub ecx, edx
sub eax, esi
cmp ecx, eax
jbe 0x44afea
mov ecx, eax
add esi, ecx
jmp 0x44b590
cmp edx, ecx
mov dword [ebp + 0x18], edx
jge 0x44b590
xor eax, eax
inc eax
cmp esi, dword [edi + 0x54]
jae 0x44b590
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x44b057
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x467a08]
mov ebx, dword [eax*4 + 0x4679ec]
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 0x44b056
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 0x44b03d
inc eax
cmp edx, 0xd
jne 0x44b06e
inc esi
cmp esi, dword [edi + 0x54]
jae 0x44b590
cmp byte [esi], 0xa
jne 0x44b09b
inc esi
jmp 0x44b09b
cmp edx, 0xa
je 0x44b099
cmp edx, 0xb
je 0x44b099
cmp edx, 0xc
je 0x44b099
cmp edx, 0x85
je 0x44b099
cmp edx, 0x2028
je 0x44b099
cmp edx, 0x2029
jne 0x44b590
add esi, eax
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jl 0x44affc
jmp 0x44b590
cmp edx, ecx
mov dword [ebp + 0x18], edx
jge 0x44b590
xor eax, eax
inc eax
cmp esi, dword [edi + 0x54]
jae 0x44b590
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x44b115
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x467a08]
mov ebx, dword [eax*4 + 0x4679ec]
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 0x44b114
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 0x44b0fb
inc eax
mov ecx, 0x180e
cmp edx, ecx
ja 0x44b163
je 0x44b18b
cmp edx, 9
je 0x44b18b
cmp edx, 0x20
je 0x44b18b
cmp edx, 0xa0
je 0x44b18b
cmp edx, 0x1680
je 0x44b18b
xor ecx, ecx
xor edx, edx
cmp dword [ebp - 0xc], 0x11
sete dl
cmp ecx, edx
je 0x44b590
add esi, eax
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jl 0x44b0ba
jmp 0x44b590
cmp edx, 0x2000
jb 0x44b13a
cmp edx, 0x200a
jbe 0x44b18b
cmp edx, 0x202f
je 0x44b18b
cmp edx, 0x205f
je 0x44b18b
cmp edx, 0x3000
jne 0x44b13a
xor ecx, ecx
inc ecx
jmp 0x44b13c
cmp edx, ecx
mov dword [ebp + 0x18], edx
jge 0x44b590
xor eax, eax
inc eax
cmp esi, dword [edi + 0x54]
jae 0x44b590
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x44b1f6
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x467a08]
mov ebx, dword [eax*4 + 0x4679ec]
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 0x44b1f5
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 0x44b1dc
inc eax
cmp edx, 0xa
jb 0x44b21d
cmp edx, 0xd
jbe 0x44b218
cmp edx, 0x85
je 0x44b218
cmp edx, 0x2027
jbe 0x44b21d
cmp edx, 0x2029
ja 0x44b21d
xor ecx, ecx
inc ecx
jmp 0x44b21f
xor ecx, ecx
xor edx, edx
cmp dword [ebp - 0xc], 0x13
sete dl
cmp ecx, edx
je 0x44b590
add esi, eax
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jl 0x44b19b
jmp 0x44b590
cmp edx, ecx
mov dword [ebp + 0x18], edx
jge 0x44b590
xor eax, eax
inc eax
cmp esi, dword [edi + 0x54]
jae 0x44b590
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x44b2ac
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x467a08]
mov ebx, dword [eax*4 + 0x4679ec]
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 0x44b2ab
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 0x44b292
inc eax
cmp edx, 0x100
jae 0x44b2c1
mov ecx, dword [edi + 0x28]
test byte [edx + ecx], 4
jne 0x44b590
add esi, eax
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jl 0x44b251
jmp 0x44b590
cmp edx, ecx
mov dword [ebp + 0x18], edx
jge 0x44b590
xor eax, eax
inc eax
cmp esi, dword [edi + 0x54]
jae 0x44b590
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x44b339
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x467a08]
mov ebx, dword [eax*4 + 0x4679ec]
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 0x44b338
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 0x44b31f
inc eax
cmp edx, 0x100
jae 0x44b590
mov ecx, dword [edi + 0x28]
test byte [edx + ecx], 4
je 0x44b590
add esi, eax
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jl 0x44b2de
jmp 0x44b590
cmp edx, ecx
mov dword [ebp + 0x18], edx
jge 0x44b590
xor eax, eax
inc eax
cmp esi, dword [edi + 0x54]
jae 0x44b590
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x44b3ce
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x467a08]
mov ebx, dword [eax*4 + 0x4679ec]
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 0x44b3cd
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 0x44b3b4
inc eax
cmp edx, 0x100
jae 0x44b3e3
mov ecx, dword [edi + 0x28]
test byte [edx + ecx], 1
jne 0x44b590
add esi, eax
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jl 0x44b373
jmp 0x44b590
cmp edx, ecx
mov dword [ebp + 0x18], edx
jge 0x44b590
xor eax, eax
inc eax
cmp esi, dword [edi + 0x54]
jae 0x44b590
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x44b45b
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x467a08]
mov ebx, dword [eax*4 + 0x4679ec]
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 0x44b45a
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 0x44b441
inc eax
cmp edx, 0x100
jae 0x44b590
mov ecx, dword [edi + 0x28]
test byte [edx + ecx], 1
je 0x44b590
add esi, eax
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jl 0x44b400
jmp 0x44b590
cmp edx, ecx
mov dword [ebp + 0x18], edx
jge 0x44b590
xor eax, eax
inc eax
cmp esi, dword [edi + 0x54]
jae 0x44b590
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x44b4f0
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x467a08]
mov ebx, dword [eax*4 + 0x4679ec]
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 0x44b4ef
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 0x44b4d6
inc eax
cmp edx, 0x100
jae 0x44b505
mov ecx, dword [edi + 0x28]
test byte [edx + ecx], 0x10
jne 0x44b590
add esi, eax
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jl 0x44b495
jmp 0x44b590
cmp edx, ecx
mov dword [ebp + 0x18], edx
jge 0x44b590
xor eax, eax
inc eax
cmp esi, dword [edi + 0x54]
jae 0x44b590
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x44b572
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x467a08]
mov ebx, dword [eax*4 + 0x4679ec]
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 0x44b571
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 0x44b558
inc eax
cmp edx, 0x100
jae 0x44b590
mov ecx, dword [edi + 0x28]
test byte [edx + ecx], 0x10
je 0x44b590
add esi, eax
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jl 0x44b51b
cmp dword [ebp - 0x1c], 0
jne 0x44891a
mov ebx, dword [ebp + 0x28]
inc ebx
jmp 0x44cb17
add eax, 0xfffffffa
cmp eax, 0xe
ja case.0x44ca0d.14
jmp dword [eax*4 + 0x44cd7a]
test byte [ebp + 0x1c], 4
jne case.0x44b5af.13
cmp edx, ecx
mov ebx, edx
jge 0x44b86a
mov eax, dword [edi + 0x54]
cmp esi, eax
jae 0x44b86a
mov ecx, dword [edi + 0x18]
test ecx, ecx
je 0x44b5f3
push 0
lea edx, [edi + 0x1c]
push edx
push eax
push ecx
push esi
call fcn.0044d61c
add esp, 0x14
test eax, eax
jne 0x44b86a
jmp 0x44b618
mov ecx, dword [edi + 0x1c]
sub eax, ecx
cmp esi, eax
ja 0x44b618
mov al, byte [esi]
cmp al, byte [edi + 0x20]
jne 0x44b618
cmp ecx, 1
je 0x44b86a
mov al, byte [esi + 1]
cmp al, byte [edi + 0x21]
je 0x44b86a
inc esi
inc ebx
cmp ebx, dword [ebp - 4]
jl 0x44b5c6
jmp 0x44b86a
mov eax, dword [edi + 0x54]
sub ecx, edx
sub eax, esi
cmp ecx, eax
jbe 0x44b631
mov ecx, eax
add esi, ecx
jmp 0x44b86a
cmp edx, ecx
jge 0x44b86a
mov ecx, dword [edi + 0x54]
cmp esi, ecx
jae 0x44b86a
movzx eax, byte [esi]
cmp eax, 0xd
jne 0x44b663
inc esi
cmp esi, ecx
jae 0x44b86a
cmp byte [esi], 0xa
jne 0x44b67e
jmp 0x44b67d
cmp eax, 0xa
je 0x44b67d
cmp eax, 0xb
je 0x44b67d
cmp eax, 0xc
je 0x44b67d
cmp eax, 0x85
jne 0x44b86a
inc esi
inc edx
cmp edx, dword [ebp - 4]
jl 0x44b643
jmp 0x44b86a
cmp edx, ecx
jge 0x44b86a
mov ecx, dword [edi + 0x54]
cmp esi, ecx
jae 0x44b86a
movzx eax, byte [esi]
cmp eax, 9
je 0x44b86a
cmp eax, 0x20
je 0x44b86a
cmp eax, 0xa0
je 0x44b86a
inc esi
inc edx
cmp edx, dword [ebp - 4]
jl 0x44b694
jmp 0x44b86a
cmp edx, ecx
jge 0x44b86a
mov ecx, dword [edi + 0x54]
cmp esi, ecx
jae 0x44b86a
movzx eax, byte [esi]
cmp eax, 9
je 0x44b6f3
cmp eax, 0x20
je 0x44b6f3
cmp eax, 0xa0
jne 0x44b86a
inc esi
inc edx
cmp edx, dword [ebp - 4]
jl 0x44b6d3
jmp 0x44b86a
cmp edx, ecx
jge 0x44b86a
mov ecx, dword [edi + 0x54]
cmp esi, ecx
jae 0x44b86a
movzx eax, byte [esi]
cmp eax, 0xa
je 0x44b86a
cmp eax, 0xb
je 0x44b86a
cmp eax, 0xc
je 0x44b86a
cmp eax, 0xd
je 0x44b86a
cmp eax, 0x85
je 0x44b86a
inc esi
inc edx
cmp edx, dword [ebp - 4]
jl 0x44b70a
jmp 0x44b86a
cmp edx, ecx
jge 0x44b86a
mov ecx, dword [edi + 0x54]
cmp esi, ecx
jae 0x44b86a
movzx eax, byte [esi]
cmp eax, 0xa
je 0x44b785
cmp eax, 0xb
je 0x44b785
cmp eax, 0xc
je 0x44b785
cmp eax, 0xd
je 0x44b785
cmp eax, 0x85
jne 0x44b86a
inc esi
inc edx
cmp edx, dword [ebp - 4]
jl 0x44b75b
jmp 0x44b86a
cmp edx, ecx
jge 0x44b86a
mov eax, dword [edi + 0x54]
cmp esi, eax
jae 0x44b86a
movzx ecx, byte [esi]
mov ebx, dword [edi + 0x28]
test byte [ecx + ebx], 4
jne 0x44b86a
inc esi
inc edx
cmp edx, dword [ebp - 4]
jl 0x44b79c
jmp 0x44b86a
cmp edx, ecx
jge 0x44b86a
mov eax, dword [edi + 0x54]
cmp esi, eax
jae 0x44b86a
movzx ecx, byte [esi]
mov ebx, dword [edi + 0x28]
test byte [ecx + ebx], 4
je 0x44b86a
inc esi
inc edx
cmp edx, dword [ebp - 4]
jl 0x44b7cb
jmp 0x44b86a
cmp edx, ecx
jge 0x44b86a
mov eax, dword [edi + 0x54]
cmp esi, eax
jae 0x44b86a
movzx ecx, byte [esi]
mov ebx, dword [edi + 0x28]
test byte [ecx + ebx], 1
jne 0x44b86a
inc esi
inc edx
cmp edx, dword [ebp - 4]
jl 0x44b7f3
jmp 0x44b86a
cmp edx, ecx
jge 0x44b86a
mov eax, dword [edi + 0x54]
cmp esi, eax
jae 0x44b86a
movzx ecx, byte [esi]
mov ebx, dword [edi + 0x28]
test byte [ecx + ebx], 1
je 0x44b86a
inc esi
inc edx
cmp edx, dword [ebp - 4]
jl 0x44b813
jmp 0x44b86a
cmp edx, ecx
jge 0x44b86a
mov eax, dword [edi + 0x54]
cmp esi, eax
jae 0x44b86a
movzx ecx, byte [esi]
mov ebx, dword [edi + 0x28]
test byte [ecx + ebx], 0x10
jne 0x44b86a
inc esi
inc edx
cmp edx, dword [ebp - 4]
jl 0x44b833
jmp 0x44b86a
cmp edx, ecx
jge 0x44b86a
mov eax, dword [edi + 0x54]
cmp esi, eax
jae 0x44b86a
movzx ecx, byte [esi]
mov ebx, dword [edi + 0x28]
test byte [ecx + ebx], 0x10
je 0x44b86a
inc esi
inc edx
cmp edx, dword [ebp - 4]
jl 0x44b853
cmp dword [ebp - 0x1c], 0
jne 0x44891a
cmp esi, dword [ebp - 0x14]
jb case.0x448951.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.004488ce
add esp, 0x24
dec esi
test eax, eax
jne 0x44cb3c
cmp esi, dword [ebp - 0x14]
jae 0x44b881
jmp case.0x448951.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 0x44b8d6
xor ecx, ecx
mov ch, byte [eax + 1]
mov cl, byte [eax + 2]
add eax, ecx
cmp byte [eax], 0x53
je 0x44b8c4
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 0x44bc54
mov dword [ebp + 0x24], edx
jmp 0x44ba45
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 0x44bb5d
cmp ecx, 0x60
mov dword [ebp + 0x24], 2
jge 0x44b918
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 0x44b97b
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 + 0x467948]
push dword [ebp + 0x1c]
add eax, ebx
push edi
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push eax
push esi
call fcn.004488ce
add esp, 0x24
test eax, eax
je 0x44b963
cmp eax, 0xfffffc1c
jne 0x44cb3c
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 0x44b929
cmp dword [ebp + 0x24], 0
jne 0x44bc24
movzx eax, byte [ebx]
movzx eax, byte [eax + 0x467948]
add ebx, eax
mov dword [ebp + 0xc], ebx
jmp 0x44ba45
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.004488ce
add esp, 0x24
test eax, eax
jne 0x44cb3c
mov eax, dword [ebp - 0x20]
jmp 0x448ce2
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 0x44ba16
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.004488ce
add esp, 0x24
test eax, eax
jne 0x44cb3c
cmp dword [ebp + 0x24], eax
jne 0x44bdda
mov eax, dword [ebp + 0x18]
mov dword [ebp + 0xc], eax
jmp 0x44ba45
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.004488ce
add esp, 0x24
test eax, eax
jne 0x44cb3c
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 0x4488f1
inc dword [edi]
push 0xfffffffffffffff8
jmp 0x44cb3b
push 0xffffffffffffffeb
jmp 0x44cb3b
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 + 0x467948]
push dword [ebp + 0x1c]
add eax, ebx
push edi
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push eax
push esi
call fcn.004488ce
add esp, 0x24
test eax, eax
jne 0x44cb3c
mov eax, 0xfffffc1a
jmp 0x44cb3c
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 + 0x467948]
push dword [ebp + 0x1c]
add eax, ebx
push edi
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push eax
push esi
call fcn.004488ce
add esp, 0x24
test eax, eax
jne 0x44cb3c
mov eax, 0xfffffc19
jmp 0x44cb3c
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 + 0x467948]
push dword [ebp + 0x1c]
add eax, ebx
push edi
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push eax
push esi
call fcn.004488ce
add esp, 0x24
test eax, eax
jne 0x44cb3c
mov dword [edi + 0x58], esi
mov eax, 0xfffffc1b
jmp 0x44cb3c
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 + 0x467948]
push dword [ebp + 0x1c]
add eax, ebx
push edi
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push eax
push esi
call fcn.004488ce
add esp, 0x24
test eax, eax
jne 0x44cb3c
mov eax, 0xfffffc1c
jmp 0x44cb3c
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 + 0x64]
mov dword [ebp + 0x18], ecx
mov ecx, esi
sub ecx, dword [edi + 0x50]
cmp dword [ebp - 8], 0x61
mov dword [eax], ecx
jne 0x44bb9c
mov dword [ebp + 0x24], 2
jmp 0x44bba0
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 + 0x467948]
push dword [ebp + 0x1c]
add ecx, eax
push edi
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push ecx
push esi
call fcn.004488ce
add esp, 0x24
test eax, eax
je 0x44bbe2
cmp eax, 0xfffffc1c
jne 0x44cb3c
mov eax, dword [ebp + 0x18]
mov dword [edi + 0x64], 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 0x44bba7
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.0x448951.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 + 0x467948]
push dword [ebp + 0x1c]
add eax, ebx
push edi
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push eax
push esi
call fcn.004488ce
add esp, 0x24
jmp 0x44cb3c
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 0x44bc46
cmp dword [edi + 0x40], 0
je 0x44bc7a
cmp esi, dword [ebp + 0x10]
je case.0x448951.108
mov eax, dword [ebp + 0x14]
mov dword [edi + 0x60], eax
mov eax, dword [ebp + 0x10]
mov dword [edi + 0x58], eax
mov dword [edi + 0x5c], esi
xor eax, eax
inc eax
jmp 0x44cb3c
mov eax, dword [edi + 0x4c]
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 0x44bcab
and dword [ebp - 0x38], 0
jmp 0x44bcb6
xor eax, eax
mov ah, byte [ecx + 3]
mov al, byte [ecx + 4]
mov dword [ebp - 0x38], eax
mov eax, dword [edi + 0x74]
mov dword [ebp - 0x3c], eax
lea eax, [ebp - 0x3c]
mov dword [edi + 0x74], eax
mov eax, dword [edi + 0x10]
add ebx, 3
cmp eax, 0x1e
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x28], eax
jg 0x44bcde
lea ecx, [ebp - 0xec]
mov dword [ebp - 0x2c], ecx
jmp 0x44bcfa
shl eax, 2
push eax
call dword [0x475150]
test eax, eax
pop ecx
mov dword [ebp - 0x2c], eax
jne 0x44bcf7
push 0xfffffffffffffffa
jmp 0x44cb3b
mov eax, dword [ebp - 0x28]
shl eax, 2
push eax
push dword [edi + 0xc]
push dword [ebp - 0x2c]
call fcn.00450190
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 + 0x467948]
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.004488ce
add esp, 0x24
cmp eax, 1
je 0x44bdb6
test eax, eax
je 0x44bd61
cmp eax, 0xfffffc1c
jne 0x44cb3c
lea eax, [ebp - 0x3c]
mov dword [edi + 0x74], eax
mov eax, dword [ebp - 0x28]
shl eax, 2
push eax
push dword [ebp - 0x2c]
push dword [edi + 0xc]
call fcn.00450190
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 0x44bd27
mov eax, dword [ebp - 0x3c]
mov dword [edi + 0x74], eax
lea eax, [ebp - 0xec]
cmp dword [ebp - 0x2c], eax
je case.0x448951.108
push dword [ebp - 0x2c]
call dword [0x475154]
pop ecx
jmp case.0x448951.108
mov eax, dword [ebp - 0x3c]
mov dword [edi + 0x74], eax
lea eax, [ebp - 0xec]
cmp dword [ebp - 0x2c], eax
je 0x44bc89
push dword [ebp - 0x2c]
call dword [0x475154]
pop ecx
jmp 0x44bc89
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 0x44bc46
mov eax, dword [ebp + 0x14]
mov dword [edi + 0x60], eax
jmp 0x44bc86
mov eax, dword [ebp - 4]
cmp dword [ebp + 0x18], eax
jge case.0x448951.108
push dword [ebp + 0x1c]
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0xc]
push esi
mov ecx, edi
call fcn.00448870
test eax, eax
pop ecx
pop ecx
je case.0x448951.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.004488ce
add esp, 0x24
test eax, eax
je 0x44bdff
jmp 0x44cb3c
cmp ebx, dword [ebp - 4]
mov dword [ebp - 0x14], esi
jge 0x44be82
push dword [ebp + 0x1c]
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0xc]
push esi
mov ecx, edi
call fcn.00448870
test eax, eax
pop ecx
pop ecx
je 0x44be79
add esi, dword [ebp - 0x10]
inc ebx
cmp ebx, dword [ebp - 4]
jl 0x44be59
cmp esi, dword [ebp - 0x14]
jb case.0x448951.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.004488ce
add esp, 0x24
test eax, eax
jne 0x44cb3c
sub esi, dword [ebp - 0x10]
cmp esi, dword [ebp - 0x14]
jae 0x44be86
jmp case.0x448951.108
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jge case.0x448951.108
cmp esi, dword [edi + 0x54]
jae case.0x448951.108
movzx eax, byte [esi]
inc esi
cmp eax, 0xc0
jb 0x44bf14
mov ecx, eax
and ecx, 0x3f
movzx edx, byte [ecx + 0x467a08]
mov ebx, dword [edx*4 + 0x4679ec]
mov ecx, edx
imul ecx, ecx, 6
and ebx, eax
shl ebx, cl
test edx, edx
mov eax, ebx
jle 0x44bf14
jmp 0x44befe
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 0x44befb
cmp eax, 0xff
jbe 0x44bf21
cmp dword [ebp - 8], 0x4d
jmp 0x44bf36
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.0x448951.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.004488ce
add esp, 0x24
test eax, eax
je 0x44beb7
jmp 0x44cb3c
mov ebx, dword [ebp + 0x28]
inc ebx
jmp 0x44bfa7
mov eax, dword [ebp - 4]
cmp dword [ebp + 0x18], eax
jge case.0x448951.108
cmp esi, dword [edi + 0x54]
jae case.0x448951.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.0x448951.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.004488ce
add esp, 0x24
test eax, eax
je 0x44bf70
jmp 0x44cb3c
cmp dword [ebp - 0x18], eax
mov dword [ebp - 0x14], esi
je 0x44c0ca
cmp edx, dword [ebp - 4]
mov dword [ebp + 0x18], edx
jge 0x44c084
cmp esi, dword [edi + 0x54]
mov dword [ebp - 0x20], 1
jae 0x44c084
movzx eax, byte [esi]
cmp eax, 0xc0
jb 0x44c04e
mov ecx, eax
and ecx, 0x3f
movzx edx, byte [ecx + 0x467a08]
mov ebx, dword [edx*4 + 0x4679ec]
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 0x44c047
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 0x44c02b
mov ebx, dword [ebp + 0xc]
inc edx
mov dword [ebp - 0x20], edx
cmp eax, 0xff
jbe 0x44c05b
cmp dword [ebp - 8], 0x4d
jmp 0x44c070
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 0x44c084
add esi, dword [ebp - 0x20]
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jl 0x44bfe4
mov eax, dword [ebp + 0x28]
inc eax
mov dword [ebp - 0x10], eax
push eax
jmp 0x44c0a8
mov eax, esi
dec esi
cmp eax, dword [ebp - 0x14]
je case.0x448951.108
jmp 0x44c09d
dec esi
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
je 0x44c09c
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.004488ce
add esp, 0x24
test eax, eax
je 0x44c08e
jmp 0x44cb3c
cmp edx, dword [ebp - 4]
jge 0x44c0fe
cmp esi, dword [edi + 0x54]
jae 0x44c0f5
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 0x44c0f5
inc esi
inc edx
cmp edx, dword [ebp - 4]
jl 0x44c0cf
cmp esi, dword [ebp - 0x14]
jb case.0x448951.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.004488ce
add esp, 0x24
test eax, eax
jne 0x44cb3c
dec esi
cmp esi, dword [ebp - 0x14]
jae 0x44c102
jmp case.0x448951.108
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jge case.0x448951.108
cmp esi, dword [edi + 0x54]
jae case.0x448951.108
movzx eax, byte [esi]
inc esi
cmp eax, 0xc0
mov dword [ebp - 8], eax
jb 0x44c188
and eax, 0x3f
movzx eax, byte [eax + 0x467a08]
mov edx, dword [eax*4 + 0x4679ec]
and edx, dword [ebp - 8]
mov ecx, eax
imul ecx, ecx, 6
shl edx, cl
mov dword [ebp - 8], edx
jmp 0x44c184
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 0x44c174
push dword [ebp - 0x1c]
push dword [ebp - 8]
call fcn.0044d9fc
test eax, eax
pop ecx
pop ecx
je case.0x448951.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.004488ce
add esp, 0x24
test eax, eax
je 0x44c131
jmp 0x44cb3c
mov dword [ebp - 0x14], esi
mov dword [ebp + 0x18], eax
jmp 0x44c243
xor ebx, ebx
inc ebx
cmp esi, dword [edi + 0x54]
jae 0x44c248
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x44c22c
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x467a08]
mov ebx, dword [eax*4 + 0x4679ec]
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 0x44c229
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 0x44c210
lea ebx, [eax + 1]
push dword [ebp - 0x1c]
push edx
call fcn.0044d9fc
test eax, eax
pop ecx
pop ecx
je 0x44c248
add esi, ebx
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jl 0x44c1d3
mov ebx, dword [ebp + 0x28]
inc ebx
jmp 0x44c26b
mov eax, esi
dec esi
cmp eax, dword [ebp - 0x14]
je case.0x448951.108
cmp dword [ebp - 0x18], 0
je 0x44c26b
jmp 0x44c263
dec esi
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
je 0x44c262
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.004488ce
add esp, 0x24
test eax, eax
je 0x44c24e
jmp 0x44cb3c
mov dword [ebp + 0x18], ebx
mov ebx, dword [ebp + 0x28]
inc ebx
jmp 0x44c2cb
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jge case.0x448951.108
cmp esi, dword [edi + 0x54]
jae case.0x448951.108
push dword [ebp - 0x10]
push dword [ebp - 0xc]
push esi
call fcn.0044e7d6
add esp, 0xc
test eax, eax
jne case.0x448951.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.004488ce
add esp, 0x24
test eax, eax
je 0x44c299
jmp 0x44cb3c
cmp esi, dword [ebp - 0x14]
je case.0x448951.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.004488ce
add esp, 0x24
test eax, eax
je 0x44c2f0
jmp 0x44cb3c
mov dword [ebp + 0x18], ebx
mov ebx, dword [ebp + 0x28]
inc ebx
jmp 0x44c356
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jge case.0x448951.108
cmp esi, dword [edi + 0x54]
jae case.0x448951.108
movzx eax, byte [esi]
mov ecx, dword [edi + 0x24]
movzx eax, byte [eax + ecx]
inc esi
cmp dword [ebp - 8], eax
jne case.0x448951.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.004488ce
add esp, 0x24
test eax, eax
je 0x44c32a
jmp 0x44cb3c
mov dword [ebp + 0x18], ebx
mov ebx, dword [ebp + 0x28]
inc ebx
jmp 0x44c3a9
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jge case.0x448951.108
cmp esi, dword [edi + 0x54]
jae case.0x448951.108
movzx eax, byte [esi]
inc esi
cmp dword [ebp - 8], eax
jne case.0x448951.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.004488ce
add esp, 0x24
test eax, eax
je 0x44c384
jmp 0x44cb3c
cmp dword [ebp - 0x18], ecx
mov dword [ebp + 0x18], edx
je 0x44c497
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 0x44c481
movzx edx, byte [esi]
inc esi
cmp edx, 0xc0
jb 0x44c43c
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x467a08]
mov ebx, dword [eax*4 + 0x4679ec]
mov ecx, eax
imul ecx, ecx, 6
and ebx, edx
shl ebx, cl
mov edx, ebx
jmp 0x44c435
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 0x44c423
cmp edx, 0x100
jae 0x44c44b
mov eax, dword [edi + 0x24]
movzx edx, byte [eax + edx]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jge case.0x448951.108
cmp esi, dword [edi + 0x54]
jae case.0x448951.108
cmp dword [ebp - 8], edx
je case.0x448951.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.004488ce
add esp, 0x24
test eax, eax
je 0x44c3f7
jmp 0x44cb3c
mov ebx, dword [ebp + 0x28]
inc ebx
jmp 0x44c4c9
mov eax, dword [ebp - 4]
cmp dword [ebp + 0x18], eax
jge case.0x448951.108
cmp esi, dword [edi + 0x54]
jae case.0x448951.108
movzx eax, byte [esi]
mov ecx, dword [edi + 0x24]
movzx eax, byte [eax + ecx]
inc esi
cmp dword [ebp - 8], eax
je case.0x448951.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.004488ce
add esp, 0x24
test eax, eax
je 0x44c49d
jmp 0x44cb3c
mov eax, esi
dec esi
cmp eax, dword [ebp - 0x14]
je case.0x448951.108
jmp 0x44c4fd
dec esi
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
je 0x44c4fc
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.004488ce
add esp, 0x24
test eax, eax
je 0x44c4ee
jmp 0x44cb3c
cmp dword [ebp - 0x18], ecx
mov dword [ebp + 0x18], edx
je 0x44c5e0
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 0x44c5ca
movzx edx, byte [esi]
inc esi
cmp edx, 0xc0
jb 0x44c594
mov eax, edx
and eax, 0x3f
movzx eax, byte [eax + 0x467a08]
mov ebx, dword [eax*4 + 0x4679ec]
mov ecx, eax
imul ecx, ecx, 6
and ebx, edx
shl ebx, cl
mov edx, ebx
jmp 0x44c58d
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 0x44c57b
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jge case.0x448951.108
cmp esi, dword [edi + 0x54]
jae case.0x448951.108
cmp dword [ebp - 8], edx
je case.0x448951.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.004488ce
add esp, 0x24
test eax, eax
je 0x44c54f
jmp 0x44cb3c
mov ebx, dword [ebp + 0x28]
inc ebx
push ebx
push ecx
jmp 0x44c610
mov eax, dword [ebp - 4]
cmp dword [ebp + 0x18], eax
jge case.0x448951.108
cmp esi, dword [edi + 0x54]
jae case.0x448951.108
movzx eax, byte [esi]
inc esi
cmp dword [ebp - 8], eax
je case.0x448951.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.004488ce
add esp, 0x24
test eax, eax
je 0x44c5e8
jmp 0x44cb3c
mov eax, esi
dec esi
cmp eax, dword [ebp - 0x14]
je case.0x448951.108
jmp 0x44c641
dec esi
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
je 0x44c640
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.004488ce
add esp, 0x24
test eax, eax
je 0x44c632
jmp 0x44cb3c
push 0xfffffffffffffff2
jmp 0x44cb3b
cmp dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x14]
mov dword [ebp + 0x18], eax
mov eax, dword [ebp + 0x28]
je 0x44c98c
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.004488ce
add esp, 0x24
test eax, eax
jne 0x44cb3c
mov ebx, pe_nt_image_headers32
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 4]
jge case.0x448951.108
mov eax, dword [edi + 0x54]
cmp esi, eax
jae case.0x448951.108
cmp dword [ebp - 0xc], 0xc
jne 0x44c71d
test byte [ebp + 0x1c], 4
jne 0x44c71d
mov ecx, dword [edi + 0x18]
test ecx, ecx
je 0x44c6f8
push dword [ebp - 0x18]
lea edx, [edi + 0x1c]
push edx
push eax
push ecx
push esi
call fcn.0044d61c
add esp, 0x14
test eax, eax
jne case.0x448951.108
jmp 0x44c71d
mov ecx, dword [edi + 0x1c]
sub eax, ecx
cmp esi, eax
ja 0x44c71d
mov al, byte [esi]
cmp al, byte [edi + 0x20]
jne 0x44c71d
cmp ecx, 1
je case.0x448951.108
mov al, byte [esi + 1]
cmp al, byte [edi + 0x21]
je case.0x448951.108
movzx eax, byte [esi]
inc esi
cmp eax, 0xc0
jb 0x44c76a
mov ecx, eax
and ecx, 0x3f
movzx edx, byte [ecx + 0x467a08]
mov ebx, dword [edx*4 + 0x4679ec]
mov ecx, edx
imul ecx, ecx, 6
and ebx, eax
shl ebx, cl
test edx, edx
mov eax, ebx
jle 0x44c765
jmp 0x44c74f
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 0x44c74c
mov ebx, pe_nt_image_headers32
mov ecx, dword [ebp - 0xc]
add ecx, 0xfffffffa
cmp ecx, 0xe
ja case.0x44ca0d.14
jmp dword [ecx*4 + 0x44cdb6]
cmp eax, 0xa
jb case.0x448951.108
cmp eax, 0xc
jbe case.0x44c779.12
cmp eax, 0xd
jne 0x44c8d8
cmp esi, dword [edi + 0x54]
jae case.0x44c779.12
cmp byte [esi], 0xa
jne case.0x44c779.12
inc esi
jmp case.0x44c779.12
mov ecx, 0x180e
cmp eax, ecx
ja 0x44c7e9
je case.0x448951.108
cmp eax, 9
je case.0x448951.108
cmp eax, 0x20
je case.0x448951.108
cmp eax, 0xa0
je case.0x448951.108
cmp eax, 0x1680
jmp 0x44c958
cmp eax, 0x2000
jb case.0x44c779.12
cmp eax, 0x200a
jbe case.0x448951.108
cmp eax, 0x202f
je case.0x448951.108
cmp eax, 0x205f
je case.0x448951.108
cmp eax, 0x3000
jmp 0x44c958
mov ecx, 0x180e
cmp eax, ecx
ja 0x44c852
je case.0x44c779.12
cmp eax, 9
je case.0x44c779.12
cmp eax, 0x20
je case.0x44c779.12
cmp eax, 0xa0
je case.0x44c779.12
cmp eax, 0x1680
jmp 0x44c883
cmp eax, 0x2000
jb case.0x448951.108
cmp eax, 0x200a
jbe case.0x44c779.12
cmp eax, 0x202f
je case.0x44c779.12
cmp eax, 0x205f
je case.0x44c779.12
cmp eax, 0x3000
jne case.0x448951.108
jmp case.0x44c779.12
cmp eax, 0xa
jb case.0x44c779.12
cmp eax, 0xd
jbe case.0x448951.108
cmp eax, 0x85
je case.0x448951.108
cmp eax, 0x2027
jbe case.0x44c779.12
cmp eax, 0x2029
jbe case.0x448951.108
jmp case.0x44c779.12
cmp eax, 0xa
jb case.0x448951.108
cmp eax, 0xd
jbe case.0x44c779.12
cmp eax, 0x85
je case.0x44c779.12
cmp eax, 0x2027
jbe case.0x448951.108
cmp eax, 0x2029
ja case.0x448951.108
jmp case.0x44c779.12
cmp eax, ebx
jae case.0x44c779.12
mov ecx, dword [edi + 0x28]
test byte [eax + ecx], 4
jmp 0x44c883
cmp eax, ebx
jae case.0x448951.108
mov ecx, dword [edi + 0x28]
test byte [eax + ecx], 4
jmp 0x44c958
cmp eax, ebx
jae case.0x44c779.12
mov ecx, dword [edi + 0x28]
test byte [eax + ecx], 1
jmp 0x44c883
cmp eax, ebx
jae case.0x448951.108
mov ecx, dword [edi + 0x28]
test byte [eax + ecx], 1
jmp 0x44c958
cmp eax, ebx
jae case.0x44c779.12
mov ecx, dword [edi + 0x28]
test byte [eax + ecx], 0x10
jmp 0x44c883
cmp eax, ebx
jae case.0x448951.108
mov ecx, dword [edi + 0x28]
test byte [eax + ecx], 0x10
je case.0x448951.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.004488ce
add esp, 0x24
test eax, eax
je 0x44c6b2
jmp 0x44cb3c
inc eax
mov dword [ebp - 0x10], eax
push eax
jmp 0x44cadd
mov eax, dword [ebp - 4]
cmp dword [ebp + 0x18], eax
jge case.0x448951.108
mov eax, dword [edi + 0x54]
cmp esi, eax
jae case.0x448951.108
test byte [ebp + 0x1c], 4
jne 0x44c9fa
mov ecx, dword [edi + 0x18]
test ecx, ecx
je 0x44c9d5
push 0
lea edx, [edi + 0x1c]
push edx
push eax
push ecx
push esi
call fcn.0044d61c
add esp, 0x14
test eax, eax
jne case.0x448951.108
jmp 0x44c9fa
mov ecx, dword [edi + 0x1c]
sub eax, ecx
cmp esi, eax
ja 0x44c9fa
mov al, byte [esi]
cmp al, byte [edi + 0x20]
jne 0x44c9fa
cmp ecx, 1
je case.0x448951.108
mov al, byte [esi + 1]
cmp al, byte [edi + 0x21]
je case.0x448951.108
mov ecx, dword [ebp - 0xc]
movzx eax, byte [esi]
add ecx, 0xfffffffa
inc esi
cmp ecx, 0xe
ja case.0x44ca0d.14
jmp dword [ecx*4 + 0x44cdf2]
cmp eax, 0xa
jb case.0x448951.108
cmp eax, 0xc
jbe case.0x44ca0d.12
cmp eax, 0xd
jne 0x44ca96
cmp esi, dword [edi + 0x54]
jae case.0x44ca0d.12
cmp byte [esi], 0xa
jne case.0x44ca0d.12
inc esi
jmp case.0x44ca0d.12
cmp eax, 9
je case.0x448951.108
cmp eax, 0x20
je case.0x448951.108
cmp eax, 0xa0
jmp 0x44cad1
cmp eax, 9
je case.0x44ca0d.12
cmp eax, 0x20
je case.0x44ca0d.12
cmp eax, 0xa0
jne case.0x448951.108
jmp case.0x44ca0d.12
cmp eax, 0xa
jb case.0x44ca0d.12
cmp eax, 0xd
jbe case.0x448951.108
cmp eax, 0x85
jmp 0x44cad1
cmp eax, 0xa
jb case.0x448951.108
cmp eax, 0xd
jbe case.0x44ca0d.12
cmp eax, 0x85
jmp 0x44ca6b
mov ecx, dword [edi + 0x28]
test byte [eax + ecx], 4
jmp 0x44ca6b
mov ecx, dword [edi + 0x28]
test byte [eax + ecx], 4
jmp 0x44cad1
mov ecx, dword [edi + 0x28]
test byte [eax + ecx], 1
jmp 0x44ca6b
mov ecx, dword [edi + 0x28]
test byte [eax + ecx], 1
jmp 0x44cad1
mov ecx, dword [edi + 0x28]
test byte [eax + ecx], 0x10
jmp 0x44ca6b
mov ecx, dword [edi + 0x28]
test byte [eax + ecx], 0x10
je case.0x448951.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.004488ce
add esp, 0x24
test eax, eax
je 0x44c996
jmp 0x44cb3c
mov eax, esi
dec esi
cmp eax, dword [ebp - 0x14]
je case.0x448951.108
jmp 0x44cb0f
dec esi
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
je 0x44cb0e
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.004488ce
add esp, 0x24
test eax, eax
je 0x44cb00
jmp 0x44cb3c
push 0xfffffffffffffffb
pop eax
pop edi
pop esi
pop ebx
leave
ret