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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x124
push ebx
push esi
push edi
mov edi, dword [ebp + 0x1c]
mov eax, dword [edi + 0x44]
mov dword [ebp - 0x1c], eax
mov eax, dword [edi]
cmp eax, dword [edi + 4]
jae 0x442ba7
mov ebx, dword [ebp + 0xc]
mov esi, dword [ebp + 8]
mov ecx, dword [ebp + 0x2c]
inc eax
mov dword [edi], eax
cmp ecx, dword [edi + 8]
jae 0x442bb5
test byte [ebp + 0x28], 2
mov edx, dword [ebp + 0x20]
mov dword [ebp - 0x20], edx
je 0x43d150
mov eax, dword [ebp + 0x24]
lea ecx, [ebp - 0x44]
mov dword [ebp - 0x40], esi
mov dword [ebp - 0x44], eax
mov dword [ebp + 0x24], ecx
movzx ecx, byte [ebx]
xor eax, eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], eax
mov dword [ebp - 4], ecx
cmp ecx, 0x76
ja case.0x43d16e.15
movzx edx, byte [ecx + 0x444adc]
jmp dword [edx*4 + 0x4449ac]
movzx eax, byte [ebx + 1]
movzx ecx, byte [ebx + 2]
shl eax, 8
or eax, ecx
cmp byte [ebx + 3], 0x53
mov dword [ebp + 0x1c], eax
jne 0x43d249
cmp dword [0x4bc108], 0
je 0x43d246
mov dword [ebp - 0xa4], 1
movzx edx, byte [ebx + 4]
mov dword [ebp - 0xa0], edx
mov eax, dword [edi + 0xc]
mov dword [ebp - 0x9c], eax
mov ecx, dword [edi + 0x68]
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x98], ecx
mov edx, dword [edi + 0x6c]
sub edx, dword [edi + 0x68]
mov ecx, esi
mov dword [ebp - 0x94], edx
sub eax, dword [edi + 0x68]
mov dword [ebp - 0x90], eax
sub ecx, dword [edi + 0x68]
mov dword [ebp - 0x8c], ecx
movzx edx, byte [ebx + 5]
movzx eax, byte [ebx + 6]
shl edx, 8
or edx, eax
mov eax, dword [ebp + 0x18]
mov dword [ebp - 0x7c], edx
movzx ecx, byte [ebx + 7]
movzx edx, byte [ebx + 8]
shl ecx, 8
or ecx, edx
cdq
sub eax, edx
sar eax, 1
mov dword [ebp - 0x78], ecx
mov dword [ebp - 0x88], eax
mov eax, dword [edi + 0x84]
mov dword [ebp - 0x84], eax
mov ecx, dword [edi + 0x98]
lea edx, [ebp - 0xa4]
push edx
mov dword [ebp - 0x80], ecx
call dword [0x4bc108]
add esp, 4
test eax, eax
jg case.0x444864.14
js 0x4449a4
add ebx, 6
movzx ecx, byte [ebx + 3]
lea eax, [ebx + 3]
cmp ecx, 0x66
je 0x43d44d
cmp ecx, 0x67
je 0x43d44d
cmp ecx, 0x64
je 0x43d2d2
cmp ecx, 0x65
je 0x43d2d2
cmp ecx, 0x68
jne 0x43d285
movzx eax, byte [ebx + 1]
movzx ecx, byte [ebx + 2]
shl eax, 8
or eax, ecx
add ebx, eax
jmp 0x43d43c
mov edx, dword [ebp + 0x2c]
mov ecx, dword [ebp + 0x20]
inc edx
push edx
mov edx, dword [ebp + 0x18]
push 1
push 0
push ecx
mov ecx, dword [ebp + 0x14]
push edi
push edx
mov edx, dword [ebp + 0x10]
push ecx
push edx
push eax
push esi
call fcn.0043d100
add esp, 0x28
cmp eax, 1
je 0x442946
test eax, eax
je 0x43d2ca
cmp eax, 0xfffffc1e
jne 0x4449a4
cmp dword [edi + 0x70], ebx
jne 0x4449a4
add ebx, dword [ebp + 0x1c]
jmp 0x43d43c
movzx eax, byte [ebx + 4]
movzx edx, byte [ebx + 5]
shl eax, 8
or eax, edx
add eax, eax
cmp eax, dword [ebp + 0x18]
jge 0x43d2f3
mov edx, dword [edi + 0xc]
cmp dword [edx + eax*4], 0
jge 0x43d5a8
mov dword [ebp - 0x18], 0
cmp ecx, 0x65
jne 0x43d423
mov ecx, dword [edi + 0x28]
sar eax, 1
mov dword [ebp - 0x24], eax
xor eax, eax
mov dword [ebp - 0x10], ecx
mov dword [ebp + 0x1c], eax
cmp dword [edi + 0x20], eax
jle 0x43d343
jmp 0x43d320
movzx eax, byte [ecx]
movzx edx, byte [ecx + 1]
shl eax, 8
or eax, edx
cmp eax, dword [ebp - 0x24]
je 0x43d340
mov eax, dword [ebp + 0x1c]
add ecx, dword [edi + 0x24]
inc eax
mov dword [ebp + 0x1c], eax
cmp eax, dword [edi + 0x20]
jl 0x43d320
mov dword [ebp - 0x10], ecx
mov eax, dword [ebp + 0x1c]
cmp eax, dword [edi + 0x20]
jge 0x43d423
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x14], eax
cmp eax, dword [edi + 0x28]
jbe 0x43d3af
lea ebx, [ebx]
mov eax, dword [ebp - 0x14]
sub eax, dword [edi + 0x24]
mov dword [ebp - 0x14], eax
add eax, 2
push eax
mov eax, dword [ebp - 0x10]
add eax, 2
push eax
call fcn.00415e70
add esp, 8
test eax, eax
jne 0x43d3af
mov ecx, dword [ebp - 0x14]
movzx eax, byte [ecx]
movzx edx, byte [ecx + 1]
shl eax, 8
or eax, edx
add eax, eax
cmp eax, dword [ebp + 0x18]
jge 0x43d3a3
mov edx, dword [edi + 0xc]
cmp dword [edx + eax*4], 0
jge 0x43d5a8
mov dword [ebp - 0x18], 0
cmp ecx, dword [edi + 0x28]
ja 0x43d360
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp + 0x1c]
inc eax
mov dword [ebp + 0x1c], eax
cmp eax, dword [edi + 0x20]
jge 0x43d423
mov ecx, dword [ebp - 0x10]
add ecx, 2
mov dword [ebp - 0x24], ecx
lea ebx, [ebx]
mov eax, dword [ebp - 0x14]
add eax, dword [edi + 0x24]
mov edx, dword [ebp - 0x24]
mov dword [ebp - 0x14], eax
add eax, 2
push eax
push edx
call fcn.00415e70
add esp, 8
test eax, eax
jne 0x43d423
mov ecx, dword [ebp - 0x14]
movzx eax, byte [ecx]
movzx ecx, byte [ecx + 1]
shl eax, 8
or eax, ecx
add eax, eax
cmp eax, dword [ebp + 0x18]
jge 0x43d410
mov edx, dword [edi + 0xc]
cmp dword [edx + eax*4], 0
jge 0x43d5a8
mov eax, dword [ebp + 0x1c]
inc eax
mov dword [ebp - 0x18], 0
mov dword [ebp + 0x1c], eax
cmp eax, dword [edi + 0x20]
jl 0x43d3d0
movzx eax, byte [ebx + 1]
movzx ecx, byte [ebx + 2]
shl eax, 8
or eax, ecx
add ebx, eax
cmp dword [ebp - 0x18], 0
jne 0x442974
cmp byte [ebx], 0x54
je 0x442974
add ebx, 3
jmp 0x43d150
cmp dword [edi + 0x94], 0
jne 0x43d467
movzx edx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl edx, 8
or edx, eax
add ebx, edx
jmp 0x43d43c
movzx eax, byte [ebx + 4]
movzx edx, byte [ebx + 5]
shl eax, 8
or eax, edx
mov dword [ebp - 0x24], eax
cmp eax, 0xffff
je 0x43d5a8
mov edx, dword [edi + 0x94]
cmp eax, dword [edx + 4]
je 0x43d5a8
mov dword [ebp - 0x18], 0
cmp ecx, 0x67
jne 0x43d423
mov eax, dword [edi + 0x28]
xor ecx, ecx
mov dword [ebp - 0x10], eax
mov dword [ebp + 0x1c], ecx
cmp dword [edi + 0x20], ecx
jle 0x43d4d3
lea ecx, [ecx]
movzx ecx, byte [eax]
movzx edx, byte [eax + 1]
shl ecx, 8
or ecx, edx
cmp ecx, dword [ebp - 0x24]
je 0x43d4d0
mov ecx, dword [ebp + 0x1c]
add eax, dword [edi + 0x24]
inc ecx
mov dword [ebp + 0x1c], ecx
cmp ecx, dword [edi + 0x20]
jl 0x43d4b0
mov dword [ebp - 0x10], eax
mov eax, dword [ebp + 0x1c]
cmp eax, dword [edi + 0x20]
jge 0x43d423
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x14], eax
cmp eax, dword [edi + 0x28]
jbe 0x43d536
lea ebx, [ebx]
mov eax, dword [ebp - 0x14]
sub eax, dword [edi + 0x24]
mov dword [ebp - 0x14], eax
add eax, 2
push eax
mov eax, dword [ebp - 0x10]
add eax, 2
push eax
call fcn.00415e70
add esp, 8
test eax, eax
jne 0x43d536
mov eax, dword [ebp - 0x14]
movzx edx, byte [eax]
movzx ecx, byte [eax + 1]
shl edx, 8
or ecx, edx
mov edx, dword [edi + 0x94]
cmp ecx, dword [edx + 4]
je 0x43d5a8
mov dword [ebp - 0x18], 0
cmp eax, dword [edi + 0x28]
ja 0x43d4f0
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp + 0x1c]
inc eax
mov dword [ebp + 0x1c], eax
cmp eax, dword [edi + 0x20]
jge 0x43d423
mov ecx, dword [ebp - 0x10]
add ecx, 2
mov dword [ebp - 0x24], ecx
mov eax, dword [ebp - 0x14]
add eax, dword [edi + 0x24]
mov edx, dword [ebp - 0x24]
mov dword [ebp - 0x14], eax
add eax, 2
push eax
push edx
call fcn.00415e70
add esp, 8
test eax, eax
jne 0x43d423
mov eax, dword [ebp - 0x14]
movzx edx, byte [eax]
movzx ecx, byte [eax + 1]
mov eax, dword [edi + 0x94]
shl edx, 8
or ecx, edx
cmp ecx, dword [eax + 4]
je 0x43d5a8
mov eax, dword [ebp + 0x1c]
inc eax
mov dword [ebp - 0x18], 0
mov dword [ebp + 0x1c], eax
cmp eax, dword [edi + 0x20]
jl 0x43d555
jmp 0x43d423
mov dword [ebp - 0x18], 1
mov eax, 3
jmp 0x43d430
movzx eax, byte [ebx + 1]
movzx edx, byte [ebx + 2]
shl eax, 8
or eax, edx
lea ecx, [eax + eax]
mov dword [edi + 0x84], eax
cmp ecx, dword [edi + 0x14]
jl 0x43d5e3
mov dword [edi + 0x38], 1
add ebx, 3
jmp 0x43d150
mov edx, dword [edi + 0x10]
sub edx, eax
mov eax, dword [edi + 0xc]
mov edx, dword [eax + edx*4]
mov dword [eax + ecx*4], edx
mov edx, dword [edi + 0xc]
mov eax, esi
sub eax, dword [edi + 0x68]
mov dword [edx + ecx*4 + 4], eax
cmp dword [ebp + 0x18], ecx
jg 0x43d608
add ecx, 2
mov dword [ebp + 0x18], ecx
add ebx, 3
jmp 0x43d150
cmp dword [edi + 0x94], eax
je 0x443034
mov ebx, dword [edi + 0x94]
cmp dword [ebx + 4], eax
jne 0x443034
mov eax, dword [ebx]
mov dword [edi + 0x94], eax
mov ecx, dword [ebx + 0x10]
mov edx, dword [ebx + 0xc]
mov eax, dword [edi + 0xc]
add ecx, ecx
add ecx, ecx
push ecx
push edx
push eax
call fcn.004182b0
mov ecx, dword [ebx + 0x14]
mov edx, dword [ebp - 0x20]
mov ebx, dword [ebx + 8]
add esp, 0xc
mov dword [ebp + 0x18], ecx
mov dword [ebp + 0x20], edx
jmp 0x43d150
movzx eax, byte [ebx + 1]
mov dword [ebp + 0x20], eax
add ebx, 2
jmp 0x43d150
mov eax, dword [ebp + 0x2c]
mov ecx, dword [ebp + 0x20]
mov edx, dword [ebp + 0x18]
inc eax
push eax
mov eax, dword [ebp + 0x14]
push 0
push 0
push ecx
mov ecx, dword [ebp + 0x10]
push edi
push edx
push eax
push ecx
lea edx, [ebx + 3]
push edx
push esi
call fcn.0043d100
add esp, 0x28
cmp eax, 1
je 0x43d6d1
cmp eax, 0xfffffc19
je 0x43d6d1
test eax, eax
je 0x43d6bb
cmp eax, 0xfffffc1e
jne 0x4449a4
cmp dword [edi + 0x70], ebx
jne 0x4449a4
movzx eax, byte [ebx + 1]
movzx ecx, byte [ebx + 2]
shl eax, 8
or eax, ecx
add ebx, eax
cmp byte [ebx], 0x54
je case.0x43d16e.88
jmp 0x43d6d7
mov edx, dword [edi + 0x70]
mov dword [ebp + 0x10], edx
cmp byte [ebx], 0x55
je case.0x444864.14
test byte [ebp + 0x28], 1
jne 0x443259
lea ebx, [ebx]
movzx eax, byte [ebx + 1]
movzx ecx, byte [ebx + 2]
shl eax, 8
or eax, ecx
add ebx, eax
cmp byte [ebx], 0x54
je 0x43d6f0
mov edx, dword [edi + 0x80]
add ebx, 3
mov dword [ebp + 0x18], edx
jmp 0x43d150
mov eax, dword [ebp + 0x2c]
mov ecx, dword [ebp + 0x18]
mov edx, dword [ebp + 0x14]
inc eax
push eax
mov eax, dword [ebp + 0x20]
push 0
push 0
push eax
mov eax, dword [ebp + 0x10]
push edi
push ecx
push edx
push eax
lea ecx, [ebx + 3]
push ecx
push esi
call fcn.0043d100
add esp, 0x28
cmp eax, 1
je 0x442fd6
cmp eax, 0xfffffc19
je 0x442fd6
cmp eax, 0xfffffc1c
je 0x43d793
cmp eax, 0xfffffc1b
je 0x43d793
cmp eax, 0xfffffc1a
je 0x43d793
test eax, eax
je 0x43d77d
cmp eax, 0xfffffc1e
jne 0x4449a4
cmp dword [edi + 0x70], ebx
jne 0x4449a4
movzx edx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl edx, 8
or edx, eax
add ebx, edx
cmp byte [ebx], 0x54
je case.0x43d16e.89
jmp 0x43d7a7
movzx ecx, byte [ebx + 1]
movzx edx, byte [ebx + 2]
shl ecx, 8
or ecx, edx
add ebx, ecx
cmp byte [ebx], 0x54
je 0x43d793
test byte [ebp + 0x28], 1
jne 0x443259
add ebx, 3
jmp 0x43d150
cmp dword [ebp - 0x1c], eax
movzx ecx, byte [ebx + 2]
movzx eax, byte [ebx + 1]
je 0x43d7f6
shl eax, 8
or eax, ecx
jle 0x43d806
mov ecx, dword [edi + 0x68]
dec esi
dec eax
cmp esi, ecx
jb case.0x43d16e.115
mov dl, byte [esi]
and dl, 0xc0
cmp dl, 0x80
jne 0x43d7f0
mov dl, byte [esi - 1]
dec esi
and dl, 0xc0
cmp dl, 0x80
je 0x43d7e4
test eax, eax
jg 0x43d7d0
jmp 0x43d806
shl eax, 8
or eax, ecx
sub esi, eax
cmp esi, dword [edi + 0x68]
jb case.0x444864.14
cmp esi, dword [edi + 0x78]
jae 0x43d80e
mov dword [edi + 0x78], esi
add ebx, 3
jmp 0x43d150
cmp dword [0x4bc108], eax
je 0x43d8ae
mov dword [ebp - 0x74], 1
movzx edx, byte [ebx + 1]
mov dword [ebp - 0x70], edx
mov eax, dword [edi + 0xc]
mov dword [ebp - 0x6c], eax
mov ecx, dword [edi + 0x68]
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x68], ecx
mov edx, dword [edi + 0x6c]
sub edx, dword [edi + 0x68]
mov ecx, esi
mov dword [ebp - 0x64], edx
sub eax, dword [edi + 0x68]
mov dword [ebp - 0x60], eax
sub ecx, dword [edi + 0x68]
mov dword [ebp - 0x5c], ecx
movzx edx, byte [ebx + 2]
movzx eax, byte [ebx + 3]
shl edx, 8
or edx, eax
mov eax, dword [ebp + 0x18]
mov dword [ebp - 0x4c], edx
movzx ecx, byte [ebx + 4]
movzx edx, byte [ebx + 5]
shl ecx, 8
or ecx, edx
cdq
sub eax, edx
sar eax, 1
mov dword [ebp - 0x48], ecx
mov dword [ebp - 0x58], eax
mov eax, dword [edi + 0x84]
mov dword [ebp - 0x54], eax
mov ecx, dword [edi + 0x98]
lea edx, [ebp - 0x74]
push edx
mov dword [ebp - 0x50], ecx
call dword [0x4bc108]
add esp, 4
test eax, eax
jg 0x442fd6
js 0x4449a4
add ebx, 6
jmp 0x43d150
mov dword [ebp + 0x1c], ebx
mov dword [ebp - 0x18], esi
lea esp, [esp]
mov eax, dword [ebp + 0x2c]
mov ecx, dword [ebp + 0x20]
mov edx, dword [ebp + 0x18]
inc eax
push eax
mov eax, dword [ebp + 0x24]
push 0
push eax
mov eax, dword [ebp + 0x14]
push ecx
mov ecx, dword [ebp + 0x10]
push edi
push edx
push eax
push ecx
lea edx, [ebx + 3]
push edx
push esi
call fcn.0043d100
add esp, 0x28
cmp eax, 1
je 0x43d91c
test eax, eax
je 0x43d906
cmp eax, 0xfffffc1e
jne 0x4449a4
cmp dword [edi + 0x70], ebx
jne 0x4449a4
movzx eax, byte [ebx + 1]
movzx ecx, byte [ebx + 2]
shl eax, 8
or eax, ecx
add ebx, eax
cmp byte [ebx], 0x54
je 0x43d8c0
jmp 0x43d922
mov edx, dword [edi + 0x70]
mov dword [ebp + 0x10], edx
mov al, byte [ebx]
cmp al, 0x5d
je 0x43d930
cmp al, 0x54
jne 0x44345e
movzx eax, byte [ebx + 1]
movzx ecx, byte [ebx + 2]
shl eax, 8
or eax, ecx
add ebx, eax
cmp byte [ebx], 0x54
je 0x43d930
cmp byte [ebx], 0x55
mov edx, dword [edi + 0x80]
mov esi, dword [edi + 0x74]
mov dword [ebp + 0x18], edx
je 0x43d95e
cmp esi, dword [ebp - 0x18]
jne 0x442a7a
add ebx, 3
jmp 0x43d150
movzx eax, byte [ebx + 1]
movzx ecx, byte [ebx + 2]
shl eax, 8
or eax, ecx
add ebx, eax
cmp byte [ebx], 0x54
je case.0x43d16e.84
jmp 0x43d150
mov edx, dword [ebp + 0x2c]
mov eax, dword [ebp + 0x24]
mov ecx, dword [ebp + 0x20]
inc edx
push edx
mov edx, dword [ebp + 0x18]
push 0
push eax
mov eax, dword [ebp + 0x14]
push ecx
mov ecx, dword [ebp + 0x10]
push edi
push edx
push eax
push ecx
inc ebx
push ebx
push esi
call fcn.0043d100
add esp, 0x28
test eax, eax
jne 0x4449a4
jmp 0x43d9c0
movzx edx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl edx, 8
or edx, eax
add ebx, edx
cmp byte [ebx], 0x54
je 0x43d9c0
add ebx, 3
jmp 0x43d150
inc ebx
mov eax, ebx
nop
movzx ecx, byte [eax + 1]
movzx edx, byte [eax + 2]
shl ecx, 8
or ecx, edx
add eax, ecx
cmp byte [eax], 0x54
je 0x43d9e0
mov ecx, dword [ebp + 0x2c]
mov edx, dword [ebp + 0x24]
inc ecx
push ecx
mov ecx, dword [ebp + 0x20]
push 0
push edx
mov edx, dword [ebp + 0x18]
push ecx
mov ecx, dword [ebp + 0x14]
push edi
push edx
mov edx, dword [ebp + 0x10]
push ecx
push edx
add eax, 3
push eax
push esi
call fcn.0043d100
add esp, 0x28
test eax, eax
jne 0x4449a4
jmp 0x43d150
inc ebx
jmp 0x43da30
movzx eax, byte [ebx + 1]
movzx ecx, byte [ebx + 2]
shl eax, 8
or eax, ecx
add ebx, eax
cmp byte [ebx], 0x54
je 0x43da30
add ebx, 3
jmp 0x43d150
movzx eax, byte [ebx + 1]
movzx ecx, byte [ebx + 2]
shl eax, 8
or eax, ecx
mov edx, ebx
sub edx, eax
mov al, byte [edx]
mov dword [ebp + 0x1c], edx
cmp al, 0x61
jb 0x43da79
mov ecx, dword [ebp + 0x24]
mov ecx, dword [ecx + 4]
mov dword [ebp - 0x18], ecx
mov ecx, dword [ebp + 0x24]
mov ecx, dword [ecx]
mov dword [ebp + 0x24], ecx
jmp 0x43da80
mov dword [ebp - 0x18], 0
cmp al, 0x58
je 0x443297
cmp al, 0x59
je 0x443297
cmp al, 0x5a
je 0x443297
cmp al, 0x5b
je 0x443297
cmp al, 0x5d
je 0x443297
cmp al, 0x5f
je 0x43dab4
cmp al, 0x62
jne 0x43db50
movzx eax, byte [edx + 3]
movzx ecx, byte [edx + 4]
shl eax, 8
or eax, ecx
lea ecx, [eax + eax]
mov dword [edi + 0x84], eax
mov dword [ebp - 0x14], eax
cmp ecx, dword [edi + 0x14]
jl 0x43dadb
mov dword [edi + 0x38], 1
jmp 0x43db06
mov edx, dword [edi + 0x10]
sub edx, eax
mov eax, dword [edi + 0xc]
mov edx, dword [eax + edx*4]
mov dword [eax + ecx*4], edx
mov edx, dword [edi + 0xc]
mov eax, esi
sub eax, dword [edi + 0x68]
mov dword [edx + ecx*4 + 4], eax
mov edx, dword [ebp + 0x1c]
mov eax, dword [ebp - 0x14]
cmp dword [ebp + 0x18], ecx
jg 0x43db06
add ecx, 2
mov dword [ebp + 0x18], ecx
cmp dword [edi + 0x94], 0
je 0x43db50
mov ecx, dword [edi + 0x94]
cmp dword [ecx + 4], eax
jne 0x43db50
mov ebx, ecx
mov eax, dword [ebx]
mov dword [edi + 0x94], eax
mov ecx, dword [ebx + 0x10]
mov edx, dword [ebx + 0xc]
mov eax, dword [edi + 0xc]
add ecx, ecx
add ecx, ecx
push ecx
push edx
push eax
call fcn.004131a0
mov ecx, dword [ebx + 0x14]
mov edx, dword [ebp - 0x20]
mov ebx, dword [ebx + 8]
add esp, 0xc
mov dword [ebp + 0x18], ecx
mov dword [ebp + 0x20], edx
jmp 0x43d150
cmp byte [ebx], 0x55
mov eax, dword [ebp - 0x20]
mov dword [ebp + 0x20], eax
je 0x43db64
cmp esi, dword [ebp - 0x18]
jne 0x442b0c
add ebx, 3
jmp 0x43d150
cmp dword [edi + 0x3c], eax
je 0x43db7a
cmp esi, dword [edi + 0x68]
je case.0x444864.14
test byte [ebp + 0x20], 2
je case.0x43d16e.1
mov ecx, dword [edi + 0x68]
cmp esi, ecx
je 0x43dbf4
cmp esi, dword [edi + 0x6c]
je 0x442fd6
mov eax, dword [edi + 0x18]
test eax, eax
je 0x43dbc3
cmp esi, ecx
jbe 0x442fd6
mov ecx, dword [ebp - 0x1c]
push ecx
mov ecx, dword [edi + 0x68]
lea edx, [edi + 0x1c]
push edx
push ecx
push eax
push esi
call fcn.00434575
add esp, 0x14
test eax, eax
je 0x442fd6
inc ebx
jmp 0x43d150
mov edx, dword [edi + 0x68]
add edx, dword [edi + 0x1c]
cmp esi, edx
jb 0x442fd6
mov ecx, dword [edi + 0x1c]
mov eax, esi
sub eax, ecx
mov dl, byte [eax]
cmp dl, byte [edi + 0x2c]
jne 0x442fd6
cmp ecx, 1
je 0x43dbf4
mov al, byte [eax + 1]
cmp al, byte [edi + 0x2d]
jne 0x442fd6
inc ebx
jmp 0x43d150
cmp esi, dword [edi + 0x68]
jne case.0x43d16e.115
inc ebx
jmp 0x43d150
mov ecx, dword [edi + 0x88]
add ecx, dword [edi + 0x68]
cmp esi, ecx
jne case.0x444864.14
inc ebx
jmp 0x43d150
mov dword [ebp + 0x10], esi
inc ebx
jmp 0x43d150
test byte [ebp + 0x20], 2
je 0x43dcbe
cmp esi, dword [edi + 0x6c]
jae 0x43dc94
mov eax, dword [edi + 0x18]
test eax, eax
je 0x43dc63
mov edx, dword [ebp - 0x1c]
push edx
mov edx, dword [edi + 0x6c]
lea ecx, [edi + 0x1c]
push ecx
push edx
push eax
push esi
call fcn.00434749
add esp, 0x14
test eax, eax
je 0x442fd6
inc ebx
jmp 0x43d150
mov eax, dword [edi + 0x6c]
sub eax, dword [edi + 0x1c]
cmp esi, eax
ja 0x442fd6
mov cl, byte [esi]
cmp cl, byte [edi + 0x2c]
jne 0x442fd6
cmp dword [edi + 0x1c], 1
je 0x43dcb8
mov dl, byte [esi + 1]
cmp dl, byte [edi + 0x2d]
jne 0x442fd6
inc ebx
jmp 0x43d150
cmp dword [edi + 0x40], eax
jne case.0x43d16e.115
cmp dword [edi + 0x7c], eax
je 0x43dcb8
cmp esi, dword [edi + 0x78]
jbe 0x43dcb8
mov eax, 1
mov dword [edi + 0x5c], eax
cmp dword [edi + 0x7c], eax
jg 0x443311
inc ebx
jmp 0x43d150
cmp dword [edi + 0x40], eax
jne 0x442fd6
cmp dword [edi + 0x50], eax
je case.0x43d16e.23
cmp esi, dword [edi + 0x6c]
jb case.0x43d16e.115
jmp 0x43dc9d
cmp esi, dword [edi + 0x6c]
jae 0x43dd3c
mov eax, dword [edi + 0x18]
test eax, eax
je 0x43dd03
mov edx, dword [ebp - 0x1c]
push edx
lea ecx, [edi + 0x1c]
push ecx
mov ecx, dword [edi + 0x6c]
push ecx
push eax
push esi
call fcn.00434749
add esp, 0x14
test eax, eax
je 0x442fd6
jmp 0x43dd2e
mov edx, dword [edi + 0x6c]
sub edx, dword [edi + 0x1c]
cmp esi, edx
ja 0x442fd6
mov al, byte [esi]
cmp al, byte [edi + 0x2c]
jne 0x442fd6
cmp dword [edi + 0x1c], 1
je 0x43dd2e
mov cl, byte [esi + 1]
cmp cl, byte [edi + 0x2d]
jne 0x442fd6
mov edx, dword [edi + 0x6c]
sub edx, dword [edi + 0x1c]
cmp esi, edx
jne 0x442fd6
cmp dword [edi + 0x7c], 0
je 0x43dcb8
cmp esi, dword [edi + 0x78]
jbe 0x43dcb8
mov eax, 1
mov dword [edi + 0x5c], eax
cmp dword [edi + 0x7c], eax
jg 0x443349
inc ebx
jmp 0x43d150
cmp dword [ebp - 0x1c], eax
je 0x43df53
cmp esi, dword [edi + 0x68]
je 0x43de5c
mov cl, byte [esi - 1]
lea eax, [esi - 1]
and cl, 0xc0
cmp cl, 0x80
jne 0x43dd92
mov dl, byte [eax - 1]
dec eax
and dl, 0xc0
cmp dl, 0x80
je 0x43dd86
cmp eax, dword [edi + 0x78]
jae 0x43dd9a
mov dword [edi + 0x78], eax
movzx ecx, byte [eax]
cmp ecx, 0xc0
jb 0x43de44
test cl, 0x20
jne 0x43ddba
movzx eax, byte [eax + 1]
and ecx, 0x1f
jmp 0x43de3c
movzx edx, byte [eax + 1]
and edx, 0x3f
test cl, 0x10
jne 0x43ddd2
movzx eax, byte [eax + 2]
and ecx, 0xf
shl ecx, 6
jmp 0x43de3a
test cl, 8
jne 0x43dde9
and ecx, 7
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
movzx eax, byte [eax + 3]
jmp 0x43de34
test cl, 4
jne 0x43de0c
and ecx, 3
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
and ecx, 0x3f
shl edx, 6
or edx, ecx
movzx ecx, byte [eax + 3]
movzx eax, byte [eax + 4]
jmp 0x43de34
and ecx, 1
shl ecx, 6
or edx, ecx
movzx ecx, byte [eax + 2]
and ecx, 0x3f
shl edx, 6
or edx, ecx
movzx ecx, byte [eax + 3]
and ecx, 0x3f
shl edx, 6
or edx, ecx
movzx ecx, byte [eax + 4]
movzx eax, byte [eax + 5]
shl edx, 6
and ecx, 0x3f
or ecx, edx
and eax, 0x3f
shl ecx, 6
or ecx, eax
cmp ecx, 0x100
jae 0x43de5c
mov edx, dword [edi + 0x34]
test byte [ecx + edx], 0x10
je 0x43de5c
mov ecx, 1
jmp 0x43de5e
xor ecx, ecx
cmp esi, dword [edi + 0x6c]
jb 0x43de86
cmp dword [edi + 0x7c], 0
je 0x43de7f
cmp esi, dword [edi + 0x78]
jbe 0x43de7f
mov eax, 1
mov dword [edi + 0x5c], eax
cmp dword [edi + 0x7c], eax
jg 0x443311
xor eax, eax
jmp 0x43dfad
movzx eax, byte [esi]
cmp eax, 0xc0
jb 0x43df3c
movzx edx, byte [esi + 1]
and edx, 0x3f
test al, 0x20
jne 0x43deaa
and eax, 0x1f
shl eax, 6
jmp 0x43df3a
test al, 0x10
jne 0x43debc
and eax, 0xf
shl eax, 6
or edx, eax
movzx eax, byte [esi + 2]
jmp 0x43df34
test al, 8
jne 0x43deda
and eax, 7
shl eax, 6
or edx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
jmp 0x43df34
test al, 4
jne 0x43df04
and eax, 3
shl eax, 6
or edx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
jmp 0x43df34
and eax, 1
shl eax, 6
or edx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
shl edx, 6
and eax, 0x3f
or eax, edx
cmp eax, 0x100
jae 0x43df99
mov edx, dword [edi + 0x34]
test byte [eax + edx], 0x10
je 0x43df99
mov eax, 1
jmp 0x43dfad
cmp esi, dword [edi + 0x68]
jne 0x43df5c
xor ecx, ecx
jmp 0x43df78
cmp esi, dword [edi + 0x78]
ja 0x43df67
lea eax, [esi - 1]
mov dword [edi + 0x78], eax
movzx edx, byte [esi - 1]
mov ecx, dword [edi + 0x34]
movzx ecx, byte [edx + ecx]
shr ecx, 4
and ecx, 1
cmp esi, dword [edi + 0x6c]
jb 0x43df9d
cmp dword [edi + 0x7c], 0
je 0x43df99
cmp esi, dword [edi + 0x78]
jbe 0x43df99
mov eax, 1
mov dword [edi + 0x5c], eax
cmp dword [edi + 0x7c], eax
jg 0x4432dd
xor eax, eax
jmp 0x43dfad
movzx edx, byte [esi]
mov eax, dword [edi + 0x34]
movzx eax, byte [edx + eax]
shr eax, 4
and eax, 1
mov dl, byte [ebx]
inc ebx
cmp dl, 5
jne 0x43f7d5
cmp eax, ecx
jne 0x43d150
mov ecx, dword [ebp + 0x14]
mov dword [edi + 0x9c], ecx
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [edi + 0x18]
test eax, eax
je 0x43dfff
cmp esi, dword [edi + 0x6c]
jae case.0x43d16e.13
mov ecx, dword [ebp - 0x1c]
push ecx
mov ecx, dword [edi + 0x6c]
lea edx, [edi + 0x1c]
push edx
push ecx
push eax
push esi
call fcn.00434749
add esp, 0x14
test eax, eax
jne case.0x444864.14
jmp case.0x43d16e.13
mov edx, dword [edi + 0x6c]
sub edx, dword [edi + 0x1c]
cmp esi, edx
ja case.0x43d16e.13
mov al, byte [esi]
cmp al, byte [edi + 0x2c]
jne case.0x43d16e.13
cmp dword [edi + 0x1c], 1
je case.0x444864.14
mov cl, byte [esi + 1]
cmp cl, byte [edi + 0x2d]
je case.0x444864.14
mov eax, dword [edi + 0x6c]
mov edx, esi
mov ecx, 1
add esi, ecx
cmp edx, eax
jae 0x4432be
cmp dword [ebp - 0x1c], 0
je 0x43e054
cmp esi, eax
jae 0x43e054
mov dl, byte [esi]
and dl, 0xc0
cmp dl, 0x80
jne 0x43e054
add esi, ecx
cmp esi, eax
jb 0x43e044
add ebx, ecx
jmp 0x43d150
mov ecx, esi
mov eax, 1
add esi, eax
cmp ecx, dword [edi + 0x6c]
jae 0x4432f2
add ebx, eax
jmp 0x43d150
cmp esi, dword [edi + 0x6c]
jae 0x443326
movzx eax, byte [esi]
inc esi
cmp dword [ebp - 0x1c], 0
je 0x43e172
cmp eax, 0xc0
jb 0x43e172
test al, 0x20
jne 0x43e0ae
movzx edx, byte [esi]
and eax, 0x1f
shl eax, 6
and edx, 0x3f
or eax, edx
inc esi
jmp 0x43e172
test al, 0x10
jne 0x43e0d4
movzx ecx, byte [esi]
movzx edx, byte [esi + 1]
and eax, 0xf
shl eax, 6
and ecx, 0x3f
or eax, ecx
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 2
jmp 0x43e172
test al, 8
jne 0x43e103
movzx ecx, byte [esi]
movzx edx, byte [esi + 1]
and eax, 7
shl eax, 6
and ecx, 0x3f
or eax, ecx
movzx ecx, byte [esi + 2]
shl eax, 6
and edx, 0x3f
or eax, edx
shl eax, 6
and ecx, 0x3f
or eax, ecx
add esi, 3
jmp 0x43e172
movzx edx, byte [esi]
movzx ecx, byte [esi + 1]
and edx, 0x3f
and ecx, 0x3f
test al, 4
jne 0x43e13e
and eax, 3
shl eax, 6
or eax, edx
movzx edx, byte [esi + 2]
shl eax, 6
or eax, ecx
movzx ecx, byte [esi + 3]
shl eax, 6
and edx, 0x3f
or eax, edx
shl eax, 6
and ecx, 0x3f
or eax, ecx
add esi, 4
jmp 0x43e172
and eax, 1
shl eax, 6
or eax, edx
movzx edx, byte [esi + 2]
shl eax, 6
or eax, ecx
movzx ecx, byte [esi + 3]
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [esi + 4]
shl eax, 6
and ecx, 0x3f
or eax, ecx
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 5
cmp eax, 0x100
jae 0x43dcb8
mov ecx, dword [edi + 0x34]
test byte [eax + ecx], 4
jne 0x442fd6
inc ebx
jmp 0x43d150
cmp esi, dword [edi + 0x6c]
jae 0x443326
movzx eax, byte [esi]
inc esi
cmp dword [ebp - 0x1c], 0
je 0x43e28e
cmp eax, 0xc0
jb 0x43e28e
test al, 0x20
jne 0x43e1ca
movzx edx, byte [esi]
and eax, 0x1f
shl eax, 6
and edx, 0x3f
or eax, edx
inc esi
jmp 0x43e28e
test al, 0x10
jne 0x43e1f0
movzx ecx, byte [esi]
movzx edx, byte [esi + 1]
and eax, 0xf
shl eax, 6
and ecx, 0x3f
or eax, ecx
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 2
jmp 0x43e28e
test al, 8
jne 0x43e21f
movzx ecx, byte [esi]
movzx edx, byte [esi + 1]
and eax, 7
shl eax, 6
and ecx, 0x3f
or eax, ecx
movzx ecx, byte [esi + 2]
shl eax, 6
and edx, 0x3f
or eax, edx
shl eax, 6
and ecx, 0x3f
or eax, ecx
add esi, 3
jmp 0x43e28e
movzx edx, byte [esi]
movzx ecx, byte [esi + 1]
and edx, 0x3f
and ecx, 0x3f
test al, 4
jne 0x43e25a
and eax, 3
shl eax, 6
or eax, edx
movzx edx, byte [esi + 2]
shl eax, 6
or eax, ecx
movzx ecx, byte [esi + 3]
shl eax, 6
and edx, 0x3f
or eax, edx
shl eax, 6
and ecx, 0x3f
or eax, ecx
add esi, 4
jmp 0x43e28e
and eax, 1
shl eax, 6
or eax, edx
movzx edx, byte [esi + 2]
shl eax, 6
or eax, ecx
movzx ecx, byte [esi + 3]
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [esi + 4]
shl eax, 6
and ecx, 0x3f
or eax, ecx
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 5
cmp eax, 0x100
jae 0x442fd6
mov ecx, dword [edi + 0x34]
test byte [eax + ecx], 4
je 0x442fd6
inc ebx
jmp 0x43d150
cmp esi, dword [edi + 0x6c]
jae 0x443326
movzx eax, byte [esi]
inc esi
cmp dword [ebp - 0x1c], 0
je 0x43e3aa
cmp eax, 0xc0
jb 0x43e3aa
test al, 0x20
jne 0x43e2e6
movzx edx, byte [esi]
and eax, 0x1f
shl eax, 6
and edx, 0x3f
or eax, edx
inc esi
jmp 0x43e3aa
test al, 0x10
jne 0x43e30c
movzx ecx, byte [esi]
movzx edx, byte [esi + 1]
and eax, 0xf
shl eax, 6
and ecx, 0x3f
or eax, ecx
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 2
jmp 0x43e3aa
test al, 8
jne 0x43e33b
movzx ecx, byte [esi]
movzx edx, byte [esi + 1]
and eax, 7
shl eax, 6
and ecx, 0x3f
or eax, ecx
movzx ecx, byte [esi + 2]
shl eax, 6
and edx, 0x3f
or eax, edx
shl eax, 6
and ecx, 0x3f
or eax, ecx
add esi, 3
jmp 0x43e3aa
movzx edx, byte [esi]
movzx ecx, byte [esi + 1]
and edx, 0x3f
and ecx, 0x3f
test al, 4
jne 0x43e376
and eax, 3
shl eax, 6
or eax, edx
movzx edx, byte [esi + 2]
shl eax, 6
or eax, ecx
movzx ecx, byte [esi + 3]
shl eax, 6
and edx, 0x3f
or eax, edx
shl eax, 6
and ecx, 0x3f
or eax, ecx
add esi, 4
jmp 0x43e3aa
and eax, 1
shl eax, 6
or eax, edx
movzx edx, byte [esi + 2]
shl eax, 6
or eax, ecx
movzx ecx, byte [esi + 3]
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [esi + 4]
shl eax, 6
and ecx, 0x3f
or eax, ecx
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 5
cmp eax, 0x100
jae 0x43dcb8
mov ecx, dword [edi + 0x34]
test byte [eax + ecx], 1
jne 0x442fd6
inc ebx
jmp 0x43d150
cmp esi, dword [edi + 0x6c]
jae 0x443326
movzx eax, byte [esi]
inc esi
cmp dword [ebp - 0x1c], 0
je 0x43e4c6
cmp eax, 0xc0
jb 0x43e4c6
test al, 0x20
jne 0x43e402
movzx edx, byte [esi]
and eax, 0x1f
shl eax, 6
and edx, 0x3f
or eax, edx
inc esi
jmp 0x43e4c6
test al, 0x10
jne 0x43e428
movzx ecx, byte [esi]
movzx edx, byte [esi + 1]
and eax, 0xf
shl eax, 6
and ecx, 0x3f
or eax, ecx
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 2
jmp 0x43e4c6
test al, 8
jne 0x43e457
movzx ecx, byte [esi]
movzx edx, byte [esi + 1]
and eax, 7
shl eax, 6
and ecx, 0x3f
or eax, ecx
movzx ecx, byte [esi + 2]
shl eax, 6
and edx, 0x3f
or eax, edx
shl eax, 6
and ecx, 0x3f
or eax, ecx
add esi, 3
jmp 0x43e4c6
movzx edx, byte [esi]
movzx ecx, byte [esi + 1]
and edx, 0x3f
and ecx, 0x3f
test al, 4
jne 0x43e492
and eax, 3
shl eax, 6
or eax, edx
movzx edx, byte [esi + 2]
shl eax, 6
or eax, ecx
movzx ecx, byte [esi + 3]
shl eax, 6
and edx, 0x3f
or eax, edx
shl eax, 6
and ecx, 0x3f
or eax, ecx
add esi, 4
jmp 0x43e4c6
and eax, 1
shl eax, 6
or eax, edx
movzx edx, byte [esi + 2]
shl eax, 6
or eax, ecx
movzx ecx, byte [esi + 3]
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [esi + 4]
shl eax, 6
and ecx, 0x3f
or eax, ecx
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 5
cmp eax, 0x100
jae 0x442fd6
mov ecx, dword [edi + 0x34]
test byte [eax + ecx], 1
je 0x442fd6
inc ebx
jmp 0x43d150
cmp esi, dword [edi + 0x6c]
jae 0x443326
movzx eax, byte [esi]
inc esi
cmp dword [ebp - 0x1c], 0
je 0x43e5e2
cmp eax, 0xc0
jb 0x43e5e2
test al, 0x20
jne 0x43e51e
movzx edx, byte [esi]
and eax, 0x1f
shl eax, 6
and edx, 0x3f
or eax, edx
inc esi
jmp 0x43e5e2
test al, 0x10
jne 0x43e544
movzx ecx, byte [esi]
movzx edx, byte [esi + 1]
and eax, 0xf
shl eax, 6
and ecx, 0x3f
or eax, ecx
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 2
jmp 0x43e5e2
test al, 8
jne 0x43e573
movzx ecx, byte [esi]
movzx edx, byte [esi + 1]
and eax, 7
shl eax, 6
and ecx, 0x3f
or eax, ecx
movzx ecx, byte [esi + 2]
shl eax, 6
and edx, 0x3f
or eax, edx
shl eax, 6
and ecx, 0x3f
or eax, ecx
add esi, 3
jmp 0x43e5e2
movzx edx, byte [esi]
movzx ecx, byte [esi + 1]
and edx, 0x3f
and ecx, 0x3f
test al, 4
jne 0x43e5ae
and eax, 3
shl eax, 6
or eax, edx
movzx edx, byte [esi + 2]
shl eax, 6
or eax, ecx
movzx ecx, byte [esi + 3]
shl eax, 6
and edx, 0x3f
or eax, edx
shl eax, 6
and ecx, 0x3f
or eax, ecx
add esi, 4
jmp 0x43e5e2
and eax, 1
shl eax, 6
or eax, edx
movzx edx, byte [esi + 2]
shl eax, 6
or eax, ecx
movzx ecx, byte [esi + 3]
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [esi + 4]
shl eax, 6
and ecx, 0x3f
or eax, ecx
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 5
cmp eax, 0x100
jae 0x43dcb8
mov ecx, dword [edi + 0x34]
test byte [eax + ecx], 0x10
jne 0x442fd6
inc ebx
jmp 0x43d150
cmp esi, dword [edi + 0x6c]
jae 0x443326
movzx eax, byte [esi]
inc esi
cmp dword [ebp - 0x1c], 0
je 0x43e6fe
cmp eax, 0xc0
jb 0x43e6fe
test al, 0x20
jne 0x43e63a
movzx edx, byte [esi]
and eax, 0x1f
shl eax, 6
and edx, 0x3f
or eax, edx
inc esi
jmp 0x43e6fe
test al, 0x10
jne 0x43e660
movzx ecx, byte [esi]
movzx edx, byte [esi + 1]
and eax, 0xf
shl eax, 6
and ecx, 0x3f
or eax, ecx
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 2
jmp 0x43e6fe
test al, 8
jne 0x43e68f
movzx ecx, byte [esi]
movzx edx, byte [esi + 1]
and eax, 7
shl eax, 6
and ecx, 0x3f
or eax, ecx
movzx ecx, byte [esi + 2]
shl eax, 6
and edx, 0x3f
or eax, edx
shl eax, 6
and ecx, 0x3f
or eax, ecx
add esi, 3
jmp 0x43e6fe
movzx edx, byte [esi]
movzx ecx, byte [esi + 1]
and edx, 0x3f
and ecx, 0x3f
test al, 4
jne 0x43e6ca
and eax, 3
shl eax, 6
or eax, edx
movzx edx, byte [esi + 2]
shl eax, 6
or eax, ecx
movzx ecx, byte [esi + 3]
shl eax, 6
and edx, 0x3f
or eax, edx
shl eax, 6
and ecx, 0x3f
or eax, ecx
add esi, 4
jmp 0x43e6fe
and eax, 1
shl eax, 6
or eax, edx
movzx edx, byte [esi + 2]
shl eax, 6
or eax, ecx
movzx ecx, byte [esi + 3]
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [esi + 4]
shl eax, 6
and ecx, 0x3f
or eax, ecx
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 5
cmp eax, 0x100
jae 0x442fd6
mov ecx, dword [edi + 0x34]
test byte [eax + ecx], 0x10
je 0x442fd6
inc ebx
jmp 0x43d150
mov ecx, dword [edi + 0x6c]
cmp esi, ecx
jae 0x443326
movzx eax, byte [esi]
inc esi
cmp dword [ebp - 0x1c], 0
je 0x43e811
cmp eax, 0xc0
jb 0x43e811
movzx edx, byte [esi]
and edx, 0x3f
test al, 0x20
jne 0x43e758
and eax, 0x1f
shl eax, 6
or eax, edx
inc esi
jmp 0x43e811
test al, 0x10
jne 0x43e778
and eax, 0xf
shl eax, 6
or eax, edx
movzx edx, byte [esi + 1]
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 2
jmp 0x43e811
test al, 8
jne 0x43e7a1
and eax, 7
shl eax, 6
or eax, edx
movzx edx, byte [esi + 1]
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [esi + 2]
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 3
jmp 0x43e811
test al, 4
jne 0x43e7d6
and eax, 3
shl eax, 6
or eax, edx
movzx edx, byte [esi + 1]
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [esi + 2]
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [esi + 3]
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 4
jmp 0x43e811
and eax, 1
shl eax, 6
or eax, edx
movzx edx, byte [esi + 1]
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [esi + 2]
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [esi + 3]
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [esi + 4]
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 5
cmp eax, 0xd
ja 0x43e84a
je 0x43e832
cmp eax, 0xa
je 0x43dcb8
jbe 0x442fd6
cmp eax, 0xc
ja 0x442fd6
jmp 0x43e867
cmp esi, ecx
jae 0x43dcb8
cmp byte [esi], 0xa
jne 0x43dcb8
inc esi
inc ebx
jmp 0x43d150
cmp eax, 0x85
je 0x43e867
cmp eax, 0x2027
jbe 0x442fd6
cmp eax, 0x2029
ja 0x442fd6
cmp dword [edi + 0x60], 0
jne case.0x43d16e.115
inc ebx
jmp 0x43d150
cmp esi, dword [edi + 0x6c]
jae 0x44335e
movzx eax, byte [esi]
inc esi
cmp dword [ebp - 0x1c], 0
je 0x43e975
cmp eax, 0xc0
jb 0x43e975
test al, 0x20
jne 0x43e8b1
movzx ecx, byte [esi]
and eax, 0x1f
shl eax, 6
and ecx, 0x3f
or eax, ecx
inc esi
jmp 0x43e975
test al, 0x10
jne 0x43e8d7
movzx edx, byte [esi]
movzx ecx, byte [esi + 1]
and eax, 0xf
shl eax, 6
and edx, 0x3f
or eax, edx
shl eax, 6
and ecx, 0x3f
or eax, ecx
add esi, 2
jmp 0x43e975
test al, 8
jne 0x43e906
movzx edx, byte [esi]
movzx ecx, byte [esi + 1]
and eax, 7
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [esi + 2]
shl eax, 6
and ecx, 0x3f
or eax, ecx
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 3
jmp 0x43e975
movzx ecx, byte [esi]
movzx edx, byte [esi + 1]
and ecx, 0x3f
and edx, 0x3f
test al, 4
jne 0x43e941
and eax, 3
shl eax, 6
or eax, ecx
movzx ecx, byte [esi + 2]
shl eax, 6
or eax, edx
movzx edx, byte [esi + 3]
shl eax, 6
and ecx, 0x3f
or eax, ecx
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 4
jmp 0x43e975
and eax, 1
shl eax, 6
or eax, ecx
movzx ecx, byte [esi + 2]
shl eax, 6
or eax, edx
movzx edx, byte [esi + 3]
shl eax, 6
and ecx, 0x3f
or eax, ecx
movzx ecx, byte [esi + 4]
shl eax, 6
and edx, 0x3f
or eax, edx
shl eax, 6
and ecx, 0x3f
or eax, ecx
add esi, 5
cmp eax, 0x180e
ja 0x43e9b8
je case.0x43d16e.115
cmp eax, 0xa0
ja 0x43e9a7
je case.0x43d16e.115
cmp eax, 9
je case.0x43d16e.115
cmp eax, 0x20
je case.0x43d16e.115
inc ebx
jmp 0x43d150
cmp eax, 0x1680
je case.0x43d16e.115
inc ebx
jmp 0x43d150
cmp eax, 0x205f
ja 0x43e9ec
je case.0x43d16e.115
cmp eax, 0x2000
jb 0x43dcb8
cmp eax, 0x200a
jbe case.0x43d16e.115
cmp eax, 0x202f
je case.0x43d16e.115
inc ebx
jmp 0x43d150
cmp eax, 0x3000
je case.0x43d16e.115
inc ebx
jmp 0x43d150
cmp esi, dword [edi + 0x6c]
jae 0x44335e
movzx eax, byte [esi]
inc esi
cmp dword [ebp - 0x1c], 0
je 0x43eafb
cmp eax, 0xc0
jb 0x43eafb
test al, 0x20
jne 0x43ea37
movzx edx, byte [esi]
and eax, 0x1f
shl eax, 6
and edx, 0x3f
or eax, edx
inc esi
jmp 0x43eafb
test al, 0x10
jne 0x43ea5d
movzx ecx, byte [esi]
movzx edx, byte [esi + 1]
and eax, 0xf
shl eax, 6
and ecx, 0x3f
or eax, ecx
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 2
jmp 0x43eafb
test al, 8
jne 0x43ea8c
movzx ecx, byte [esi]
movzx edx, byte [esi + 1]
and eax, 7
shl eax, 6
and ecx, 0x3f
or eax, ecx
movzx ecx, byte [esi + 2]
shl eax, 6
and edx, 0x3f
or eax, edx
shl eax, 6
and ecx, 0x3f
or eax, ecx
add esi, 3
jmp 0x43eafb
movzx edx, byte [esi]
movzx ecx, byte [esi + 1]
and edx, 0x3f
and ecx, 0x3f
test al, 4
jne 0x43eac7
and eax, 3
shl eax, 6
or eax, edx
movzx edx, byte [esi + 2]
shl eax, 6
or eax, ecx
movzx ecx, byte [esi + 3]
shl eax, 6
and edx, 0x3f
or eax, edx
shl eax, 6
and ecx, 0x3f
or eax, ecx
add esi, 4
jmp 0x43eafb
and eax, 1
shl eax, 6
or eax, edx
movzx edx, byte [esi + 2]
shl eax, 6
or eax, ecx
movzx ecx, byte [esi + 3]
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [esi + 4]
shl eax, 6
and ecx, 0x3f
or eax, ecx
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 5
cmp eax, 0x180e
ja 0x43eb3e
je 0x43dcb8
cmp eax, 0xa0
ja 0x43eb2d
je 0x43dcb8
cmp eax, 9
je 0x43dcb8
cmp eax, 0x20
jne case.0x43d16e.115
inc ebx
jmp 0x43d150
cmp eax, 0x1680
jne case.0x43d16e.115
inc ebx
jmp 0x43d150
cmp eax, 0x205f
ja 0x43eb72
je 0x43dcb8
cmp eax, 0x2000
jb case.0x43d16e.115
cmp eax, 0x200a
jbe 0x43dcb8
cmp eax, 0x202f
jne case.0x43d16e.115
inc ebx
jmp 0x43d150
cmp eax, 0x3000
jne case.0x43d16e.115
inc ebx
jmp 0x43d150
cmp esi, dword [edi + 0x6c]
jae 0x44335e
movzx eax, byte [esi]
inc esi
cmp dword [ebp - 0x1c], 0
je 0x43ec81
cmp eax, 0xc0
jb 0x43ec81
test al, 0x20
jne 0x43ebbd
movzx ecx, byte [esi]
and eax, 0x1f
shl eax, 6
and ecx, 0x3f
or eax, ecx
inc esi
jmp 0x43ec81
test al, 0x10
jne 0x43ebe3
movzx edx, byte [esi]
movzx ecx, byte [esi + 1]
and eax, 0xf
shl eax, 6
and edx, 0x3f
or eax, edx
shl eax, 6
and ecx, 0x3f
or eax, ecx
add esi, 2
jmp 0x43ec81
test al, 8
jne 0x43ec12
movzx edx, byte [esi]
movzx ecx, byte [esi + 1]
and eax, 7
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [esi + 2]
shl eax, 6
and ecx, 0x3f
or eax, ecx
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 3
jmp 0x43ec81
movzx ecx, byte [esi]
movzx edx, byte [esi + 1]
and ecx, 0x3f
and edx, 0x3f
test al, 4
jne 0x43ec4d
and eax, 3
shl eax, 6
or eax, ecx
movzx ecx, byte [esi + 2]
shl eax, 6
or eax, edx
movzx edx, byte [esi + 3]
shl eax, 6
and ecx, 0x3f
or eax, ecx
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 4
jmp 0x43ec81
and eax, 1
shl eax, 6
or eax, ecx
movzx ecx, byte [esi + 2]
shl eax, 6
or eax, edx
movzx edx, byte [esi + 3]
shl eax, 6
and ecx, 0x3f
or eax, ecx
movzx ecx, byte [esi + 4]
shl eax, 6
and edx, 0x3f
or eax, edx
shl eax, 6
and ecx, 0x3f
or eax, ecx
add esi, 5
cmp eax, 0x85
ja 0x43eca6
je case.0x43d16e.115
cmp eax, 0xa
jb 0x43dcb8
cmp eax, 0xd
jbe case.0x43d16e.115
inc ebx
jmp 0x43d150
cmp eax, 0x2028
jb 0x43dcb8
cmp eax, 0x2029
jbe case.0x43d16e.115
inc ebx
jmp 0x43d150
cmp esi, dword [edi + 0x6c]
jae 0x44335e
movzx eax, byte [esi]
inc esi
cmp dword [ebp - 0x1c], 0
je 0x43edc0
cmp eax, 0xc0
jb 0x43edc0
test al, 0x20
jne 0x43ecfc
movzx edx, byte [esi]
and eax, 0x1f
shl eax, 6
and edx, 0x3f
or eax, edx
inc esi
jmp 0x43edc0
test al, 0x10
jne 0x43ed22
movzx ecx, byte [esi]
movzx edx, byte [esi + 1]
and eax, 0xf
shl eax, 6
and ecx, 0x3f
or eax, ecx
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 2
jmp 0x43edc0
test al, 8
jne 0x43ed51
movzx ecx, byte [esi]
movzx edx, byte [esi + 1]
and eax, 7
shl eax, 6
and ecx, 0x3f
or eax, ecx
movzx ecx, byte [esi + 2]
shl eax, 6
and edx, 0x3f
or eax, edx
shl eax, 6
and ecx, 0x3f
or eax, ecx
add esi, 3
jmp 0x43edc0
movzx edx, byte [esi]
movzx ecx, byte [esi + 1]
and edx, 0x3f
and ecx, 0x3f
test al, 4
jne 0x43ed8c
and eax, 3
shl eax, 6
or eax, edx
movzx edx, byte [esi + 2]
shl eax, 6
or eax, ecx
movzx ecx, byte [esi + 3]
shl eax, 6
and edx, 0x3f
or eax, edx
shl eax, 6
and ecx, 0x3f
or eax, ecx
add esi, 4
jmp 0x43edc0
and eax, 1
shl eax, 6
or eax, edx
movzx edx, byte [esi + 2]
shl eax, 6
or eax, ecx
movzx ecx, byte [esi + 3]
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [esi + 4]
shl eax, 6
and ecx, 0x3f
or eax, ecx
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 5
cmp eax, 0x85
ja 0x43ede5
je 0x43dcb8
cmp eax, 0xa
jb case.0x43d16e.115
cmp eax, 0xd
ja case.0x43d16e.115
inc ebx
jmp 0x43d150
cmp eax, 0x2028
jb case.0x43d16e.115
cmp eax, 0x2029
ja case.0x43d16e.115
inc ebx
jmp 0x43d150
movzx eax, byte [ebx + 1]
movzx ecx, byte [ebx + 2]
shl eax, 8
or eax, ecx
add eax, eax
add ebx, 3
mov dword [ebp - 0x18], eax
cmp eax, dword [ebp + 0x18]
jge 0x43ee2f
mov edx, dword [edi + 0xc]
mov ecx, dword [edx + eax*4]
lea eax, [edx + eax*4]
test ecx, ecx
js 0x43ee2f
mov edx, dword [eax + 4]
sub edx, ecx
jmp 0x43ee3f
cmp dword [edi + 0x48], 0
je 0x43ee39
xor edx, edx
jmp 0x43ee3f
mov edx, dword [edi + 0x6c]
sub edx, esi
inc edx
movzx eax, byte [ebx]
lea ecx, [eax - 0x46]
mov dword [ebp - 0x10], edx
cmp ecx, 7
ja case.default.0x43ee58
movzx ecx, byte [ecx + 0x444b5c]
jmp dword [ecx*4 + 0x444b54]
add eax, 0xffffffba
movzx ecx, al
and ecx, 1
mov dword [ebp - 0x14], ecx
movsx ecx, byte [eax + 0x49aae0]
movsx eax, byte [eax + 0x49aae8]
inc ebx
mov dword [ebp - 8], ecx
mov dword [ebp - 0xc], eax
test eax, eax
jne 0x43eec9
mov eax, accept
mov dword [ebp - 0xc], eax
jmp 0x43eec9
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
xor edx, edx
cmp byte [ebx], 0x4d
sete dl
shl ecx, 8
or ecx, eax
movzx eax, byte [ebx + 3]
shl eax, 8
mov dword [ebp - 0x14], edx
movzx edx, byte [ebx + 4]
or eax, edx
mov dword [ebp - 8], ecx
mov dword [ebp - 0xc], eax
jne 0x43eec3
mov eax, accept
mov dword [ebp - 0xc], eax
mov edx, dword [ebp - 0x10]
add ebx, 5
test edx, edx
je 0x43d150
mov dword [ebp + 0x1c], 1
cmp ecx, 1
jl 0x43ef13
lea ecx, [ecx]
mov eax, dword [ebp + 0x20]
mov ecx, dword [ebp - 0x10]
mov edx, dword [ebp - 0x18]
push eax
push edi
push ecx
push esi
push edx
call fcn.00434962
add esp, 0x14
test eax, eax
je 0x443467
mov eax, dword [ebp + 0x1c]
add esi, dword [ebp - 0x10]
inc eax
mov dword [ebp + 0x1c], eax
cmp eax, dword [ebp - 8]
jle 0x43eee0
mov eax, dword [ebp - 0xc]
mov ecx, dword [ebp - 8]
cmp ecx, eax
je 0x43d150
cmp dword [ebp - 0x14], 0
je 0x4433b9
mov eax, dword [ebp + 0x2c]
mov ecx, dword [ebp - 8]
mov edx, dword [ebp + 0x24]
inc eax
push eax
push 0
push edx
mov edx, dword [ebp + 0x14]
mov dword [ebp - 8], eax
mov eax, dword [ebp + 0x20]
push eax
mov eax, dword [ebp + 0x10]
push edi
mov dword [ebp + 0x1c], ecx
mov ecx, dword [ebp + 0x18]
push ecx
push edx
push eax
push ebx
push esi
call fcn.0043d100
add esp, 0x28
test eax, eax
jne 0x4449a4
lea esp, [esp]
mov ecx, dword [ebp - 0xc]
cmp dword [ebp + 0x1c], ecx
jge case.0x444864.14
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x18]
push edx
push edi
push eax
push esi
push ecx
call fcn.00434962
add esp, 0x14
test eax, eax
je 0x443377
mov edx, dword [ebp - 8]
mov eax, dword [ebp + 0x24]
mov ecx, dword [ebp + 0x20]
add esi, dword [ebp - 0x10]
inc dword [ebp + 0x1c]
push edx
mov edx, dword [ebp + 0x18]
push 0
push eax
mov eax, dword [ebp + 0x14]
push ecx
mov ecx, dword [ebp + 0x10]
push edi
push edx
push eax
push ecx
push ebx
push esi
call fcn.0043d100
add esp, 0x28
test eax, eax
je 0x43ef60
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x20]
mov ecx, dword [ebp - 0x10]
mov edx, dword [ebp - 0x18]
push eax
push edi
push ecx
push esi
push edx
call fcn.00434962
add esp, 0x14
test eax, eax
je 0x443467
add esi, dword [ebp - 0x10]
jmp 0x43d150
lea eax, [ebx + 1]
add ebx, 0x21
mov dword [ebp - 0x18], eax
movzx eax, byte [ebx]
lea edx, [eax - 0x46]
cmp edx, 7
ja case.default.0x43f005
movzx edx, byte [edx + 0x444b6c]
jmp dword [edx*4 + 0x444b64]
add eax, 0xffffffba
movzx edx, al
and edx, 1
mov dword [ebp - 0x14], edx
movsx edx, byte [eax + 0x49aae0]
movsx eax, byte [eax + 0x49aae8]
inc ebx
mov dword [ebp - 0xc], eax
test eax, eax
mov dword [ebp - 8], edx
mov eax, 1
jne 0x43f08d
mov dword [ebp - 0xc], accept
jmp 0x43f08d
movzx edx, byte [ebx + 2]
xor eax, eax
cmp byte [ebx], 0x4d
sete al
mov dword [ebp - 0x14], eax
movzx eax, byte [ebx + 1]
shl eax, 8
or eax, edx
movzx edx, byte [ebx + 4]
mov dword [ebp - 8], eax
movzx eax, byte [ebx + 3]
shl eax, 8
or eax, edx
mov dword [ebp - 0xc], eax
jne 0x43f073
mov dword [ebp - 0xc], accept
mov edx, dword [ebp - 8]
add ebx, 5
mov eax, 1
jmp 0x43f08d
mov eax, 1
mov edx, eax
mov dword [ebp - 0xc], eax
mov dword [ebp - 8], edx
cmp dword [ebp - 0x1c], 0
je 0x43f1d6
mov dword [ebp + 0x1c], 1
cmp edx, 1
jl 0x43f218
cmp esi, dword [edi + 0x6c]
jae 0x44348d
movzx eax, byte [esi]
inc esi
cmp eax, 0xc0
jb 0x43f193
movzx edx, byte [esi]
and edx, 0x3f
test al, 0x20
jne 0x43f0d7
and eax, 0x1f
shl eax, 6
or eax, edx
inc esi
jmp 0x43f190
test al, 0x10
jne 0x43f0f7
and eax, 0xf
shl eax, 6
or eax, edx
movzx edx, byte [esi + 1]
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 2
jmp 0x43f190
test al, 8
jne 0x43f120
and eax, 7
shl eax, 6
or eax, edx
movzx edx, byte [esi + 1]
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [esi + 2]
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 3
jmp 0x43f190
test al, 4
jne 0x43f155
and eax, 3
shl eax, 6
or eax, edx
movzx edx, byte [esi + 1]
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [esi + 2]
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [esi + 3]
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 4
jmp 0x43f190
and eax, 1
shl eax, 6
or eax, edx
movzx edx, byte [esi + 1]
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [esi + 2]
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [esi + 3]
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [esi + 4]
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 5
mov edx, dword [ebp - 8]
cmp eax, 0xff
jbe 0x43f1a5
cmp ecx, 0x4e
je 0x442fd6
jmp 0x43f1c8
mov ecx, eax
and ecx, 7
mov edx, 1
shl edx, cl
mov ecx, dword [ebp - 0x18]
shr eax, 3
mov al, byte [eax + ecx]
test al, dl
je case.0x43d16e.115
mov edx, dword [ebp - 8]
mov ecx, dword [ebp - 4]
inc dword [ebp + 0x1c]
cmp dword [ebp + 0x1c], edx
jle 0x43f0a7
jmp 0x43f218
mov dword [ebp + 0x1c], eax
cmp edx, eax
jl 0x43f218
cmp esi, dword [edi + 0x6c]
jae 0x4434c6
movzx eax, byte [esi]
mov ecx, eax
and ecx, 7
mov edx, 1
shl edx, cl
mov ecx, dword [ebp - 0x18]
shr eax, 3
mov al, byte [eax + ecx]
inc esi
test al, dl
je case.0x43d16e.115
mov eax, dword [ebp + 0x1c]
mov edx, dword [ebp - 8]
inc eax
mov dword [ebp + 0x1c], eax
cmp eax, edx
jle 0x43f1dd
mov ecx, dword [ebp - 4]
cmp edx, dword [ebp - 0xc]
je 0x43d150
cmp dword [ebp - 0x14], 0
mov dword [ebp + 0x1c], edx
je 0x4436a9
mov eax, dword [ebp + 0x2c]
inc eax
cmp dword [ebp - 0x1c], 0
push eax
mov dword [ebp - 8], eax
push 0
je 0x44360e
mov edx, dword [ebp + 0x24]
mov eax, dword [ebp + 0x20]
mov ecx, dword [ebp + 0x18]
push edx
mov edx, dword [ebp + 0x14]
push eax
mov eax, dword [ebp + 0x10]
push edi
push ecx
push edx
push eax
push ebx
push esi
call fcn.0043d100
add esp, 0x28
test eax, eax
jne 0x4449a4
lea esp, [esp]
mov ecx, dword [ebp - 0xc]
cmp dword [ebp + 0x1c], ecx
jge case.0x43d16e.115
cmp esi, dword [edi + 0x6c]
jae 0x4434c6
movzx eax, byte [esi]
inc esi
cmp eax, 0xc0
jb 0x4435a7
test al, 0x20
jne 0x4434e3
movzx edx, byte [esi]
and eax, 0x1f
shl eax, 6
and edx, 0x3f
or eax, edx
inc esi
jmp 0x4435a7
movzx edx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl edx, 8
or edx, eax
lea ecx, [ebx + 3]
add ebx, edx
mov dword [ebp - 0x18], ecx
mov cl, byte [ebx]
movzx eax, cl
lea edx, [eax - 0x46]
cmp edx, 7
ja case.default.0x43f2d9
movzx edx, byte [edx + 0x444b7c]
jmp dword [edx*4 + 0x444b74]
add eax, 0xffffffba
movzx ecx, al
and ecx, 1
mov dword [ebp - 0x14], ecx
movsx ecx, byte [eax + 0x49aae0]
movsx eax, byte [eax + 0x49aae8]
inc ebx
mov dword [ebp - 8], ecx
mov dword [ebp - 0xc], eax
test eax, eax
jne 0x43f353
mov eax, accept
jmp 0x43f350
movzx edx, byte [ebx + 2]
xor eax, eax
cmp cl, 0x4d
movzx ecx, byte [ebx + 1]
sete al
shl ecx, 8
or ecx, edx
movzx edx, byte [ebx + 4]
mov dword [ebp - 8], ecx
mov dword [ebp - 0x14], eax
movzx eax, byte [ebx + 3]
shl eax, 8
or eax, edx
mov dword [ebp - 0xc], eax
jne 0x43f341
mov eax, accept
mov dword [ebp - 0xc], eax
add ebx, 5
jmp 0x43f353
mov eax, 1
mov ecx, eax
mov dword [ebp - 8], ecx
mov dword [ebp - 0xc], eax
mov dword [ebp + 0x1c], 1
cmp ecx, 1
jl 0x43f48b
cmp esi, dword [edi + 0x6c]
jae 0x44348d
movzx eax, byte [esi]
inc esi
cmp dword [ebp - 0x1c], 0
je 0x43f461
cmp eax, 0xc0
jb 0x43f461
test al, 0x20
jne 0x43f39d
movzx ecx, byte [esi]
and eax, 0x1f
shl eax, 6
and ecx, 0x3f
or eax, ecx
inc esi
jmp 0x43f461
test al, 0x10
jne 0x43f3c3
movzx edx, byte [esi]
movzx ecx, byte [esi + 1]
and eax, 0xf
shl eax, 6
and edx, 0x3f
or eax, edx
shl eax, 6
and ecx, 0x3f
or eax, ecx
add esi, 2
jmp 0x43f461
test al, 8
jne 0x43f3f2
movzx edx, byte [esi]
movzx ecx, byte [esi + 1]
and eax, 7
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [esi + 2]
shl eax, 6
and ecx, 0x3f
or eax, ecx
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 3
jmp 0x43f461
movzx ecx, byte [esi]
movzx edx, byte [esi + 1]
and ecx, 0x3f
and edx, 0x3f
test al, 4
jne 0x43f42d
and eax, 3
shl eax, 6
or eax, ecx
movzx ecx, byte [esi + 2]
shl eax, 6
or eax, edx
movzx edx, byte [esi + 3]
shl eax, 6
and ecx, 0x3f
or eax, ecx
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 4
jmp 0x43f461
and eax, 1
shl eax, 6
or eax, ecx
movzx ecx, byte [esi + 2]
shl eax, 6
or eax, edx
movzx edx, byte [esi + 3]
shl eax, 6
and ecx, 0x3f
or eax, ecx
movzx ecx, byte [esi + 4]
shl eax, 6
and edx, 0x3f
or eax, edx
shl eax, 6
and ecx, 0x3f
or eax, ecx
add esi, 5
mov edx, dword [ebp - 0x18]
push edx
push eax
call fcn.00434091
add esp, 8
test eax, eax
je 0x442fd6
mov eax, dword [ebp + 0x1c]
mov ecx, dword [ebp - 8]
inc eax
mov dword [ebp + 0x1c], eax
cmp eax, ecx
jle 0x43f363
mov eax, dword [ebp - 0xc]
cmp ecx, eax
je 0x43d150
cmp dword [ebp - 0x14], 0
je 0x443a65
mov eax, dword [ebp + 0x2c]
mov ecx, dword [ebp - 8]
mov edx, dword [ebp + 0x24]
inc eax
push eax
push 0
push edx
mov edx, dword [ebp + 0x14]
mov dword [ebp - 8], eax
mov eax, dword [ebp + 0x20]
push eax
mov eax, dword [ebp + 0x10]
push edi
mov dword [ebp + 0x1c], ecx
mov ecx, dword [ebp + 0x18]
push ecx
push edx
push eax
push ebx
push esi
call fcn.0043d100
add esp, 0x28
test eax, eax
jne 0x4449a4
mov ecx, dword [ebp - 0xc]
cmp dword [ebp + 0x1c], ecx
jge case.0x444864.14
cmp esi, dword [edi + 0x6c]
jae 0x443a3c
movzx eax, byte [esi]
inc esi
cmp dword [ebp - 0x1c], 0
je 0x4439f0
cmp eax, 0xc0
jb 0x4439f0
test al, 0x20
jne 0x44392c
movzx edx, byte [esi]
and eax, 0x1f
shl eax, 6
and edx, 0x3f
or eax, edx
inc esi
jmp 0x4439f0
cmp dword [ebp - 0x1c], eax
je 0x43f596
mov edx, 1
movzx ecx, byte [ebx + edx]
add ebx, edx
mov eax, edx
cmp ecx, 0xc0
jb 0x43f568
test cl, 0x20
jne 0x43f542
lea eax, [edx + 1]
jmp 0x43f568
test cl, 0x10
jne 0x43f54e
mov eax, 3
jmp 0x43f568
test cl, 8
jne 0x43f55a
mov eax, 4
jmp 0x43f568
test cl, 4
mov eax, 0
setne al
add eax, 5
mov ecx, dword [edi + 0x6c]
sub ecx, esi
cmp eax, ecx
jg 0x443c6c
test eax, eax
jle 0x43d150
mov dl, byte [ebx]
mov cl, byte [esi]
dec eax
inc esi
inc ebx
cmp dl, cl
jne 0x442fd6
test eax, eax
jle 0x43d150
jmp 0x43f57d
mov edx, dword [edi + 0x6c]
sub edx, esi
mov eax, 1
cmp edx, eax
jl 0x443ca9
mov cl, byte [esi]
add esi, eax
cmp byte [ebx + 1], cl
jne 0x442fd6
add ebx, 2
jmp 0x43d150
cmp dword [ebp - 0x1c], eax
je 0x43f7ef
movzx eax, byte [ebx + 1]
inc ebx
mov ecx, 1
mov dword [ebp - 0x10], ecx
mov dword [ebp + 0x1c], eax
cmp eax, 0xc0
jb 0x43f6b4
test al, 0x20
jne 0x43f5fe
movzx edx, byte [ebx + 1]
and eax, 0x1f
and edx, 0x3f
shl eax, 6
or eax, edx
mov ecx, 2
jmp 0x43f6b1
movzx ecx, byte [ebx + 1]
movzx edx, byte [ebx + 2]
and ecx, 0x3f
and edx, 0x3f
test al, 0x10
jne 0x43f627
and eax, 0xf
shl eax, 6
or eax, ecx
shl eax, 6
or eax, edx
mov ecx, 3
jmp 0x43f6b1
test al, 8
jne 0x43f64b
and eax, 7
shl eax, 6
or ecx, eax
movzx eax, byte [ebx + 3]
shl ecx, 6
or ecx, edx
shl ecx, 6
and eax, 0x3f
or eax, ecx
mov ecx, 4
jmp 0x43f6b1
test al, 4
jne 0x43f67b
and eax, 3
shl eax, 6
or ecx, eax
movzx eax, byte [ebx + 3]
shl ecx, 6
or ecx, edx
movzx edx, byte [ebx + 4]
shl ecx, 6
and eax, 0x3f
or eax, ecx
shl eax, 6
and edx, 0x3f
or eax, edx
mov ecx, 5
jmp 0x43f6b1
and eax, 1
shl eax, 6
or ecx, eax
movzx eax, byte [ebx + 3]
shl ecx, 6
or ecx, edx
movzx edx, byte [ebx + 4]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [ebx + 5]
shl ecx, 6
and edx, 0x3f
or ecx, edx
shl ecx, 6
and eax, 0x3f
or eax, ecx
mov ecx, 6
mov dword [ebp - 0x10], ecx
mov edx, dword [edi + 0x6c]
sub edx, esi
cmp ecx, edx
jg 0x443cc1
movzx ecx, byte [esi]
inc esi
cmp eax, 0x80
jae 0x43f6f1
mov eax, dword [edi + 0x30]
mov dl, byte [ecx + eax]
mov ecx, dword [ebp + 0x1c]
inc ebx
cmp byte [ecx + eax], dl
je 0x43d150
mov eax, dword [ebp + 0x14]
mov dword [edi + 0x9c], eax
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp ecx, 0xc0
jb 0x43f7d2
movzx edx, byte [esi]
and edx, 0x3f
test cl, 0x20
jne 0x43f716
and ecx, 0x1f
shl ecx, 6
or ecx, edx
inc esi
jmp 0x43f7d2
test cl, 0x10
jne 0x43f737
and ecx, 0xf
shl ecx, 6
or ecx, edx
movzx edx, byte [esi + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add esi, 2
jmp 0x43f7d2
test cl, 8
jne 0x43f761
and ecx, 7
shl ecx, 6
or ecx, edx
movzx edx, byte [esi + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [esi + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add esi, 3
jmp 0x43f7d2
test cl, 4
jne 0x43f797
and ecx, 3
shl ecx, 6
or ecx, edx
movzx edx, byte [esi + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [esi + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [esi + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add esi, 4
jmp 0x43f7d2
and ecx, 1
shl ecx, 6
or ecx, edx
movzx edx, byte [esi + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [esi + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [esi + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [esi + 4]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add esi, 5
add ebx, dword [ebp - 0x10]
cmp eax, ecx
je 0x43d150
mov ecx, dword [ebp + 0x14]
mov dword [edi + 0x9c], ecx
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [edi + 0x6c]
sub ecx, esi
mov eax, 1
cmp ecx, eax
jl 0x4432f2
movzx ecx, byte [esi]
mov eax, dword [edi + 0x30]
movzx edx, byte [ebx + 1]
mov cl, byte [ecx + eax]
inc esi
cmp byte [edx + eax], cl
jne case.0x43d16e.115
add ebx, 2
jmp 0x43d150
movzx eax, byte [ebx + 1]
movzx edx, byte [ebx + 2]
shl eax, 8
or eax, edx
mov dword [ebp - 8], eax
add ebx, 3
mov edx, 1
jmp 0x43f8c7
mov dword [ebp - 0x18], 1
movzx ecx, byte [ebx + 2]
mov dword [ebp - 8], eax
movzx eax, byte [ebx + 1]
shl eax, 8
xor edx, edx
or eax, ecx
cmp byte [ebx], 0x26
sete dl
add ebx, 3
mov dword [ebp - 0x14], edx
mov edx, 1
jmp 0x43f8c7
mov edx, 1
mov dword [ebp - 0x18], edx
mov dword [ebp - 8], eax
add ebx, edx
jmp 0x43f8c2
mov edx, 1
mov dword [ebp - 0x18], edx
mov dword [ebp - 8], edx
add ebx, edx
jmp 0x43f8c2
mov edx, 1
mov dword [ebp - 8], eax
mov dword [ebp - 0x18], edx
mov eax, edx
add ebx, edx
jmp 0x43f8c7
add ecx, 0xffffffe1
movzx eax, cl
mov edx, 1
and eax, edx
mov dword [ebp - 0x14], eax
movsx eax, byte [ecx + 0x49aae0]
mov dword [ebp - 8], eax
movsx eax, byte [ecx + 0x49aae8]
add ebx, edx
mov dword [ebp - 0xc], eax
test eax, eax
jne 0x43f8ca
mov eax, accept
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0x1c], 0
movzx ecx, byte [ebx]
mov dword [ebp - 4], ecx
je 0x43fb0f
mov dword [ebp - 0x10], edx
mov dword [ebp - 0x24], ebx
cmp ecx, 0xc0
jb 0x43f9d4
movzx edx, byte [ebx + 1]
and edx, 0x3f
test cl, 0x20
jne 0x43f90a
and ecx, 0x1f
shl ecx, 6
or ecx, edx
mov edx, 2
jmp 0x43f9ce
test cl, 0x10
jne 0x43f92d
and ecx, 0xf
shl ecx, 6
or edx, ecx
movzx ecx, byte [ebx + 2]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 3
jmp 0x43f9ce
test cl, 8
jne 0x43f959
and ecx, 7
shl ecx, 6
or edx, ecx
movzx ecx, byte [ebx + 2]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [ebx + 3]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 4
jmp 0x43f9ce
test cl, 4
jne 0x43f991
and ecx, 3
shl ecx, 6
or edx, ecx
movzx ecx, byte [ebx + 2]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [ebx + 3]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [ebx + 4]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 5
jmp 0x43f9ce
and ecx, 1
shl ecx, 6
or edx, ecx
movzx ecx, byte [ebx + 2]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [ebx + 3]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [ebx + 4]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [ebx + 5]
shl edx, 6
and ecx, 0x3f
or ecx, edx
mov edx, 6
mov dword [ebp - 4], ecx
mov dword [ebp - 0x10], edx
add ebx, edx
cmp edx, 1
jle 0x43fb11
mov ecx, dword [ebp - 8]
mov dword [ebp + 0x1c], 1
cmp ecx, 1
jl 0x43fa2a
mov eax, dword [edi + 0x6c]
sub eax, edx
cmp esi, eax
ja 0x443467
mov ecx, dword [ebp - 0x10]
mov edx, dword [ebp - 0x24]
push ecx
push edx
push esi
call fcn.00411c49
add esp, 0xc
test eax, eax
jne 0x443467
mov eax, dword [ebp + 0x1c]
mov edx, dword [ebp - 0x10]
mov ecx, dword [ebp - 8]
inc eax
add esi, edx
mov dword [ebp + 0x1c], eax
cmp eax, ecx
jle 0x43f9ee
mov eax, dword [ebp - 0xc]
cmp ecx, eax
je 0x43d150
cmp dword [ebp - 0x14], 0
jne 0x443cd9
mov dword [ebp - 0x14], esi
mov dword [ebp + 0x1c], ecx
cmp ecx, eax
jge 0x43fa98
mov eax, dword [edi + 0x6c]
sub eax, edx
cmp esi, eax
ja 0x43fa77
mov ecx, dword [ebp - 0x10]
mov edx, dword [ebp - 0x24]
push ecx
push edx
push esi
call fcn.00411c49
add esp, 0xc
test eax, eax
jne 0x43fa77
mov eax, dword [ebp + 0x1c]
mov edx, dword [ebp - 0x10]
inc eax
add esi, edx
mov dword [ebp + 0x1c], eax
cmp eax, dword [ebp - 0xc]
jl 0x43fa46
jmp 0x43fa98
cmp dword [edi + 0x7c], 0
je 0x43fa98
cmp esi, dword [edi + 0x6c]
jb 0x43fa98
cmp esi, dword [edi + 0x78]
jbe 0x43fa98
mov eax, 1
mov dword [edi + 0x5c], eax
cmp dword [edi + 0x7c], eax
jg 0x443311
cmp dword [ebp - 0x18], 0
jne 0x43d150
mov eax, dword [ebp + 0x2c]
mov ecx, dword [ebp + 0x20]
mov edx, dword [ebp + 0x18]
inc eax
push eax
push 0
mov dword [ebp - 8], eax
mov eax, dword [ebp + 0x24]
push eax
mov eax, dword [ebp + 0x14]
push ecx
mov ecx, dword [ebp + 0x10]
push edi
push edx
push eax
push ecx
push ebx
push esi
call fcn.0043d100
add esp, 0x28
test eax, eax
jne 0x4449a4
cmp esi, dword [ebp - 0x14]
je case.0x444864.14
mov edx, dword [ebp - 8]
mov eax, dword [ebp + 0x24]
mov ecx, dword [ebp + 0x20]
sub esi, dword [ebp - 0x10]
push edx
mov edx, dword [ebp + 0x18]
push 0
push eax
mov eax, dword [ebp + 0x14]
push ecx
mov ecx, dword [ebp + 0x10]
push edi
push edx
push eax
push ecx
push ebx
push esi
call fcn.0043d100
add esp, 0x28
test eax, eax
je 0x43fad3
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
add ebx, edx
test byte [ebp + 0x20], 1
je 0x43fc25
mov edx, dword [edi + 0x30]
movzx ecx, byte [ecx + edx]
mov dword [ebp - 4], ecx
mov ecx, dword [ebp - 8]
mov edx, 1
mov dword [ebp + 0x1c], edx
cmp ecx, edx
jl 0x43fb70
jmp 0x43fb45
mov edx, 1
cmp esi, dword [edi + 0x6c]
jae 0x443da2
movzx edx, byte [esi]
mov ecx, dword [edi + 0x30]
movzx ecx, byte [edx + ecx]
inc esi
cmp dword [ebp - 4], ecx
jne case.0x444864.14
mov edx, dword [ebp + 0x1c]
mov ecx, dword [ebp - 8]
inc edx
mov dword [ebp + 0x1c], edx
cmp edx, ecx
jle 0x43fb40
cmp ecx, eax
je 0x43d150
cmp dword [ebp - 0x14], 0
jne 0x443dc6
mov dword [ebp - 0x14], esi
cmp ecx, eax
jge 0x43fbca
mov dword [ebp + 0x1c], ecx
cmp esi, dword [edi + 0x6c]
jae 0x43fbae
movzx edx, byte [esi]
mov ecx, dword [edi + 0x30]
movzx ecx, byte [edx + ecx]
cmp dword [ebp - 4], ecx
jne 0x43fbca
mov ecx, dword [ebp + 0x1c]
inc ecx
inc esi
mov dword [ebp + 0x1c], ecx
cmp ecx, eax
jl 0x43fb8c
jmp 0x43fbca
cmp dword [edi + 0x7c], 0
je 0x43fbca
cmp esi, dword [edi + 0x78]
jbe 0x43fbca
mov eax, 1
mov dword [edi + 0x5c], eax
cmp dword [edi + 0x7c], eax
jg 0x443311
cmp dword [ebp - 0x18], 0
jne 0x43d150
cmp esi, dword [ebp - 0x14]
jb 0x43fc13
mov eax, dword [ebp + 0x2c]
inc eax
mov dword [ebp - 8], eax
mov ecx, dword [ebp - 8]
mov edx, dword [ebp + 0x24]
mov eax, dword [ebp + 0x20]
push ecx
mov ecx, dword [ebp + 0x18]
push 0
push edx
mov edx, dword [ebp + 0x14]
push eax
mov eax, dword [ebp + 0x10]
push edi
push ecx
push edx
push eax
push ebx
push esi
call fcn.0043d100
add esp, 0x28
dec esi
test eax, eax
jne 0x4449a4
cmp esi, dword [ebp - 0x14]
jae 0x43fbe0
mov ecx, dword [ebp + 0x14]
mov dword [edi + 0x9c], ecx
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp - 8]
mov dword [ebp + 0x1c], 1
cmp edx, 1
jl 0x43fc5a
cmp esi, dword [edi + 0x6c]
jae 0x4434c6
movzx edx, byte [esi]
inc esi
cmp ecx, edx
jne case.0x43d16e.115
mov ecx, dword [ebp + 0x1c]
mov edx, dword [ebp - 8]
inc ecx
mov dword [ebp + 0x1c], ecx
cmp ecx, edx
mov ecx, dword [ebp - 4]
jle 0x43fc34
cmp edx, eax
je 0x43d150
cmp dword [ebp - 0x14], 0
mov edx, dword [ebp - 8]
mov dword [ebp + 0x1c], edx
jne 0x443e5c
mov dword [ebp - 0x14], esi
cmp edx, eax
jge 0x43fcaf
cmp esi, dword [edi + 0x6c]
jae 0x43fc93
movzx edx, byte [esi]
cmp ecx, edx
jne 0x43fcaf
mov edx, dword [ebp + 0x1c]
inc edx
inc esi
mov dword [ebp + 0x1c], edx
cmp edx, eax
jl 0x43fc79
jmp 0x43fcaf
cmp dword [edi + 0x7c], 0
je 0x43fcaf
cmp esi, dword [edi + 0x78]
jbe 0x43fcaf
mov eax, 1
mov dword [edi + 0x5c], eax
cmp dword [edi + 0x7c], eax
jg 0x443311
cmp dword [ebp - 0x18], 0
jne 0x43d150
cmp esi, dword [ebp - 0x14]
jb 0x43fcf8
mov eax, dword [ebp + 0x2c]
inc eax
mov dword [ebp - 8], eax
mov ecx, dword [ebp - 8]
mov edx, dword [ebp + 0x24]
mov eax, dword [ebp + 0x20]
push ecx
mov ecx, dword [ebp + 0x18]
push 0
push edx
mov edx, dword [ebp + 0x14]
push eax
mov eax, dword [ebp + 0x10]
push edi
push ecx
push edx
push eax
push ebx
push esi
call fcn.0043d100
add esp, 0x28
dec esi
test eax, eax
jne 0x4449a4
cmp esi, dword [ebp - 0x14]
jae 0x43fcc5
mov ecx, dword [ebp + 0x14]
mov dword [edi + 0x9c], ecx
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp esi, dword [edi + 0x6c]
jae 0x44335e
movzx eax, byte [esi]
inc esi
cmp dword [ebp - 0x1c], 0
je 0x43fe08
cmp eax, 0xc0
jb 0x43fe08
test al, 0x20
jne 0x43fd44
movzx ecx, byte [esi]
and eax, 0x1f
shl eax, 6
and ecx, 0x3f
or eax, ecx
inc esi
jmp 0x43fe08
test al, 0x10
jne 0x43fd6a
movzx edx, byte [esi]
movzx ecx, byte [esi + 1]
and eax, 0xf
shl eax, 6
and edx, 0x3f
or eax, edx
shl eax, 6
and ecx, 0x3f
or eax, ecx
add esi, 2
jmp 0x43fe08
test al, 8
jne 0x43fd99
movzx edx, byte [esi]
movzx ecx, byte [esi + 1]
and eax, 7
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [esi + 2]
shl eax, 6
and ecx, 0x3f
or eax, ecx
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 3
jmp 0x43fe08
movzx ecx, byte [esi]
movzx edx, byte [esi + 1]
and ecx, 0x3f
and edx, 0x3f
test al, 4
jne 0x43fdd4
and eax, 3
shl eax, 6
or eax, ecx
movzx ecx, byte [esi + 2]
shl eax, 6
or eax, edx
movzx edx, byte [esi + 3]
shl eax, 6
and ecx, 0x3f
or eax, ecx
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 4
jmp 0x43fe08
and eax, 1
shl eax, 6
or eax, ecx
movzx ecx, byte [esi + 2]
shl eax, 6
or eax, edx
movzx edx, byte [esi + 3]
shl eax, 6
and ecx, 0x3f
or eax, ecx
movzx ecx, byte [esi + 4]
shl eax, 6
and edx, 0x3f
or eax, edx
shl eax, 6
and ecx, 0x3f
or eax, ecx
add esi, 5
test byte [ebp + 0x20], 1
je 0x43fe44
cmp eax, 0x100
jae 0x43fe1c
mov edx, dword [edi + 0x30]
movzx eax, byte [edx + eax]
movzx ecx, byte [ebx + 1]
mov edx, dword [edi + 0x30]
movzx ecx, byte [edx + ecx]
add ebx, 2
cmp ecx, eax
jne 0x43d150
mov ecx, dword [ebp + 0x14]
mov dword [edi + 0x9c], ecx
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
movzx edx, byte [ebx + 1]
add ebx, 2
cmp edx, eax
jne 0x43d150
mov edx, dword [ebp + 0x14]
mov dword [edi + 0x9c], edx
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
mov eax, ecx
add ebx, 3
jmp 0x43ff0b
movzx ecx, byte [ebx + 1]
movzx edx, byte [ebx + 2]
shl ecx, 8
or ecx, edx
mov dword [ebp - 0xc], ecx
xor ecx, ecx
xor eax, eax
cmp byte [ebx], 0x33
sete cl
add ebx, 3
mov dword [ebp - 0x14], ecx
mov ecx, dword [ebp - 0xc]
jmp 0x43ff0e
mov edx, 1
xor eax, eax
mov dword [ebp - 0x18], edx
add ebx, edx
jmp 0x43ff06
mov eax, 1
mov dword [ebp - 0x18], eax
add ebx, eax
jmp 0x43ff06
mov ecx, 1
xor eax, eax
mov dword [ebp - 0x18], ecx
add ebx, ecx
jmp 0x43ff0b
movzx ecx, byte [ebx + 1]
movzx edx, byte [ebx + 2]
shl ecx, 8
xor eax, eax
or ecx, edx
mov dword [ebp - 0x18], 1
add ebx, 3
jmp 0x43ff0b
add ecx, 0xffffffd4
movzx eax, cl
and eax, 1
mov dword [ebp - 0x14], eax
movsx eax, byte [ecx + 0x49aae0]
movsx ecx, byte [ecx + 0x49aae8]
inc ebx
mov dword [ebp - 0xc], ecx
test ecx, ecx
jne 0x43ff0e
mov ecx, accept
mov dword [ebp - 0xc], ecx
movzx edx, byte [ebx]
inc ebx
test byte [ebp + 0x20], 1
mov dword [ebp - 4], edx
je 0x440318
cmp dword [ebp - 0x1c], 0
mov ecx, dword [edi + 0x30]
movzx ecx, byte [edx + ecx]
mov dword [ebp - 4], ecx
mov dword [ebp + 0x1c], 1
je 0x44005a
cmp eax, 1
jl 0x440087
cmp esi, dword [edi + 0x6c]
jae 0x443a3c
movzx ecx, byte [esi]
inc esi
cmp ecx, 0xc0
jb 0x440031
movzx edx, byte [esi]
and edx, 0x3f
test cl, 0x20
jne 0x43ff75
and ecx, 0x1f
shl ecx, 6
or ecx, edx
inc esi
jmp 0x440031
test cl, 0x10
jne 0x43ff96
and ecx, 0xf
shl ecx, 6
or ecx, edx
movzx edx, byte [esi + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add esi, 2
jmp 0x440031
test cl, 8
jne 0x43ffc0
and ecx, 7
shl ecx, 6
or ecx, edx
movzx edx, byte [esi + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [esi + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add esi, 3
jmp 0x440031
test cl, 4
jne 0x43fff6
and ecx, 3
shl ecx, 6
or ecx, edx
movzx edx, byte [esi + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [esi + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [esi + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add esi, 4
jmp 0x440031
and ecx, 1
shl ecx, 6
or ecx, edx
movzx edx, byte [esi + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [esi + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [esi + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [esi + 4]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add esi, 5
cmp ecx, 0x100
jae 0x440040
mov edx, dword [edi + 0x30]
movzx ecx, byte [ecx + edx]
cmp dword [ebp - 4], ecx
je case.0x444864.14
mov ecx, dword [ebp + 0x1c]
inc ecx
mov dword [ebp + 0x1c], ecx
cmp ecx, eax
jle 0x43ff43
jmp 0x440087
cmp eax, 1
jl 0x440087
cmp esi, dword [edi + 0x6c]
jae 0x443a3c
movzx edx, byte [esi]
mov ecx, dword [edi + 0x30]
movzx ecx, byte [edx + ecx]
inc esi
cmp dword [ebp - 4], ecx
je case.0x444864.14
mov ecx, dword [ebp + 0x1c]
inc ecx
mov dword [ebp + 0x1c], ecx
cmp ecx, eax
jle 0x44005f
mov edx, dword [ebp - 0xc]
cmp eax, edx
je 0x43d150
cmp dword [ebp - 0x14], 0
jne 0x443ee5
cmp dword [ebp - 0x1c], 0
mov dword [ebp - 0x14], esi
je 0x440280
mov dword [ebp + 0x1c], eax
cmp eax, edx
jge 0x4401f4
mov eax, 1
cmp esi, dword [edi + 0x6c]
jae 0x4401dd
movzx ecx, byte [esi]
cmp ecx, 0xc0
jb 0x4401b3
movzx eax, byte [esi + 1]
and eax, 0x3f
test cl, 0x20
jne 0x4400ef
and ecx, 0x1f
shl ecx, 6
or ecx, eax
mov eax, 2
jmp 0x4401b3
test cl, 0x10
jne 0x440112
and ecx, 0xf
shl ecx, 6
or eax, ecx
movzx ecx, byte [esi + 2]
shl eax, 6
and ecx, 0x3f
or ecx, eax
mov eax, 3
jmp 0x4401b3
test cl, 8
jne 0x44013e
and ecx, 7
shl ecx, 6
or eax, ecx
movzx ecx, byte [esi + 2]
shl eax, 6
and ecx, 0x3f
or eax, ecx
movzx ecx, byte [esi + 3]
shl eax, 6
and ecx, 0x3f
or ecx, eax
mov eax, 4
jmp 0x4401b3
test cl, 4
jne 0x440176
and ecx, 3
shl ecx, 6
or eax, ecx
movzx ecx, byte [esi + 2]
shl eax, 6
and ecx, 0x3f
or eax, ecx
movzx ecx, byte [esi + 3]
shl eax, 6
and ecx, 0x3f
or eax, ecx
movzx ecx, byte [esi + 4]
shl eax, 6
and ecx, 0x3f
or ecx, eax
mov eax, 5
jmp 0x4401b3
and ecx, 1
shl ecx, 6
or eax, ecx
movzx ecx, byte [esi + 2]
shl eax, 6
and ecx, 0x3f
or eax, ecx
movzx ecx, byte [esi + 3]
shl eax, 6
and ecx, 0x3f
or eax, ecx
movzx ecx, byte [esi + 4]
shl eax, 6
and ecx, 0x3f
or eax, ecx
movzx ecx, byte [esi + 5]
shl eax, 6
and ecx, 0x3f
or ecx, eax
mov eax, 6
cmp ecx, 0x100
jae 0x4401c5
mov edx, dword [edi + 0x30]
movzx ecx, byte [ecx + edx]
mov edx, dword [ebp - 0xc]
cmp dword [ebp - 4], ecx
je 0x4401f4
add esi, eax
mov eax, dword [ebp + 0x1c]
inc eax
mov dword [ebp + 0x1c], eax
cmp eax, edx
jl 0x4400b4
jmp 0x4401f4
cmp dword [edi + 0x7c], 0
je 0x4401f4
cmp esi, dword [edi + 0x78]
jbe 0x4401f4
mov dword [edi + 0x5c], eax
cmp dword [edi + 0x7c], eax
jg 0x443311
cmp dword [ebp - 0x18], 0
jne 0x43d150
mov eax, dword [ebp + 0x2c]
mov ecx, dword [ebp + 0x20]
mov edx, dword [ebp + 0x18]
inc eax
push eax
push 0
mov dword [ebp - 8], eax
mov eax, dword [ebp + 0x24]
push eax
mov eax, dword [ebp + 0x14]
push ecx
mov ecx, dword [ebp + 0x10]
push edi
push edx
push eax
push ecx
push ebx
push esi
call fcn.0043d100
add esp, 0x28
test eax, eax
jne 0x4449a4
nop
mov edx, esi
dec esi
cmp edx, dword [ebp - 0x14]
je 0x440306
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x440250
mov cl, byte [esi - 1]
dec esi
and cl, 0xc0
cmp cl, 0x80
je 0x440244
mov edx, dword [ebp - 8]
mov eax, dword [ebp + 0x24]
mov ecx, dword [ebp + 0x20]
push edx
mov edx, dword [ebp + 0x18]
push 0
push eax
mov eax, dword [ebp + 0x14]
push ecx
mov ecx, dword [ebp + 0x10]
push edi
push edx
push eax
push ecx
push ebx
push esi
call fcn.0043d100
add esp, 0x28
test eax, eax
je 0x440230
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp eax, edx
jge 0x4402bd
cmp esi, dword [edi + 0x6c]
jae 0x4402a1
movzx edx, byte [esi]
mov ecx, dword [edi + 0x30]
movzx ecx, byte [edx + ecx]
cmp dword [ebp - 4], ecx
je 0x4402bd
inc eax
inc esi
cmp eax, dword [ebp - 0xc]
jl 0x440284
jmp 0x4402bd
cmp dword [edi + 0x7c], 0
je 0x4402bd
cmp esi, dword [edi + 0x78]
jbe 0x4402bd
mov eax, 1
mov dword [edi + 0x5c], eax
cmp dword [edi + 0x7c], eax
jg 0x443311
cmp dword [ebp - 0x18], 0
jne 0x43d150
cmp esi, dword [ebp - 0x14]
jb 0x440306
mov eax, dword [ebp + 0x2c]
inc eax
mov dword [ebp - 8], eax
mov ecx, dword [ebp - 8]
mov edx, dword [ebp + 0x24]
mov eax, dword [ebp + 0x20]
push ecx
mov ecx, dword [ebp + 0x18]
push 0
push edx
mov edx, dword [ebp + 0x14]
push eax
mov eax, dword [ebp + 0x10]
push edi
push ecx
push edx
push eax
push ebx
push esi
call fcn.0043d100
add esp, 0x28
test eax, eax
jne 0x4449a4
dec esi
cmp esi, dword [ebp - 0x14]
jae 0x4402d3
mov ecx, dword [ebp + 0x14]
mov dword [edi + 0x9c], ecx
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [ebp - 0x1c], 0
mov edx, 1
mov dword [ebp + 0x1c], edx
je 0x44045b
cmp eax, edx
jl 0x44048a
cmp esi, dword [edi + 0x6c]
jae 0x4440fc
movzx ecx, byte [esi]
add esi, edx
cmp ecx, 0xc0
jb 0x44043b
test cl, 0x20
jne 0x440365
movzx edx, byte [esi]
and ecx, 0x1f
shl ecx, 6
and edx, 0x3f
or ecx, edx
inc esi
jmp 0x44043b
test cl, 0x10
jne 0x44038c
movzx edx, byte [esi]
and ecx, 0xf
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [esi + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add esi, 2
jmp 0x44043b
test cl, 8
jne 0x4403bf
movzx edx, byte [esi]
and ecx, 7
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [esi + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [esi + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add esi, 3
jmp 0x44043b
test cl, 4
jne 0x4403fb
movzx edx, byte [esi]
and ecx, 3
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [esi + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [esi + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [esi + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add esi, 4
jmp 0x44043b
and ecx, edx
movzx edx, byte [esi]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [esi + 1]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [esi + 2]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [esi + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
movzx edx, byte [esi + 4]
shl ecx, 6
and edx, 0x3f
or ecx, edx
add esi, 5
cmp dword [ebp - 4], ecx
je case.0x43d16e.115
mov ecx, dword [ebp + 0x1c]
mov edx, 1
add ecx, edx
mov dword [ebp + 0x1c], ecx
cmp ecx, eax
jle 0x440332
jmp 0x440487
cmp eax, edx
jl 0x44048a
cmp esi, dword [edi + 0x6c]
jae 0x4440fc
movzx ecx, byte [esi]
add esi, edx
cmp dword [ebp - 4], ecx
je case.0x43d16e.115
mov ecx, dword [ebp + 0x1c]
mov edx, 1
add ecx, edx
mov dword [ebp + 0x1c], ecx
cmp ecx, eax
jle 0x44045f
mov ecx, dword [ebp - 0xc]
cmp eax, ecx
je 0x43d150
cmp dword [ebp - 0x14], 0
jne 0x44411a
cmp dword [ebp - 0x1c], 0
mov dword [ebp - 0x14], esi
je 0x44066c
mov dword [ebp + 0x1c], eax
cmp eax, ecx
jge 0x4405dd
mov edx, 1
cmp esi, dword [edi + 0x6c]
jae 0x4405c6
movzx eax, byte [esi]
cmp eax, 0xc0
jb 0x4405ae
movzx edx, byte [esi + 1]
and edx, 0x3f
test al, 0x20
jne 0x4404ed
and eax, 0x1f
shl eax, 6
or eax, edx
mov edx, 2
jmp 0x4405ae
test al, 0x10
jne 0x44050f
and eax, 0xf
shl eax, 6
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or eax, edx
mov edx, 3
jmp 0x4405ae
test al, 8
jne 0x44053a
and eax, 7
shl eax, 6
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 3]
shl edx, 6
and eax, 0x3f
or eax, edx
mov edx, 4
jmp 0x4405ae
test al, 4
jne 0x440571
and eax, 3
shl eax, 6
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 4]
shl edx, 6
and eax, 0x3f
or eax, edx
mov edx, 5
jmp 0x4405ae
and eax, 1
shl eax, 6
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 4]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 5]
shl edx, 6
and eax, 0x3f
or eax, edx
mov edx, 6
cmp dword [ebp - 4], eax
je 0x4405dd
mov eax, dword [ebp + 0x1c]
inc eax
add esi, edx
mov dword [ebp + 0x1c], eax
cmp eax, ecx
jl 0x4404b4
jmp 0x4405dd
cmp dword [edi + 0x7c], 0
je 0x4405dd
cmp esi, dword [edi + 0x78]
jbe 0x4405dd
mov dword [edi + 0x5c], edx
cmp dword [edi + 0x7c], edx
jg 0x4432dd
cmp dword [ebp - 0x18], 0
jne 0x43d150
mov eax, dword [ebp + 0x2c]
mov ecx, dword [ebp + 0x24]
mov edx, dword [ebp + 0x20]
inc eax
push eax
push 0
push ecx
mov ecx, dword [ebp + 0x14]
push edx
mov edx, dword [ebp + 0x10]
push edi
mov dword [ebp - 8], eax
mov eax, dword [ebp + 0x18]
push eax
push ecx
push edx
push ebx
push esi
call fcn.0043d100
add esp, 0x28
test eax, eax
jne 0x4449a4
mov eax, esi
dec esi
cmp eax, dword [ebp - 0x14]
je 0x4406f3
mov cl, byte [esi]
and cl, 0xc0
cmp cl, 0x80
jne 0x44063c
mov edi, edi
mov dl, byte [esi - 1]
dec esi
and dl, 0xc0
cmp dl, 0x80
je 0x440630
mov eax, dword [ebp - 8]
mov ecx, dword [ebp + 0x24]
mov edx, dword [ebp + 0x20]
push eax
mov eax, dword [ebp + 0x18]
push 0
push ecx
mov ecx, dword [ebp + 0x14]
push edx
mov edx, dword [ebp + 0x10]
push edi
push eax
push ecx
push edx
push ebx
push esi
call fcn.0043d100
add esp, 0x28
test eax, eax
je 0x440618
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, eax
cmp eax, ecx
jge 0x4406a3
cmp esi, dword [edi + 0x6c]
jae 0x440687
movzx eax, byte [esi]
cmp dword [ebp - 4], eax
je 0x4406a3
inc edx
inc esi
cmp edx, ecx
jl 0x440672
jmp 0x4406a3
cmp dword [edi + 0x7c], 0
je 0x4406a3
cmp esi, dword [edi + 0x78]
jbe 0x4406a3
mov eax, 1
mov dword [edi + 0x5c], eax
cmp dword [edi + 0x7c], eax
jg 0x4432dd
cmp dword [ebp - 0x18], 0
jne 0x43d150
cmp esi, dword [ebp - 0x14]
jb 0x4406f3
mov ecx, dword [ebp + 0x2c]
inc ecx
mov dword [ebp - 8], ecx
lea esp, [esp]
mov edx, dword [ebp - 8]
mov eax, dword [ebp + 0x24]
mov ecx, dword [ebp + 0x20]
push edx
mov edx, dword [ebp + 0x18]
push 0
push eax
mov eax, dword [ebp + 0x14]
push ecx
mov ecx, dword [ebp + 0x10]
push edi
push edx
push eax
push ecx
push ebx
push esi
call fcn.0043d100
add esp, 0x28
test eax, eax
jne 0x4449a4
dec esi
cmp esi, dword [ebp - 0x14]
jae 0x4406c0
mov edx, dword [ebp + 0x14]
mov dword [edi + 0x9c], edx
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
movzx edx, byte [ebx + 1]
movzx ecx, byte [ebx + 2]
shl edx, 8
or edx, ecx
mov ecx, edx
mov dword [ebp - 8], ecx
mov dword [ebp - 0x14], 1
add ebx, 3
jmp 0x4407c8
movzx eax, byte [ebx + 1]
movzx edx, byte [ebx + 2]
shl eax, 8
or eax, edx
mov dword [ebp - 0xc], eax
mov edx, dword [ebp - 0xc]
xor eax, eax
xor ecx, ecx
cmp byte [ebx], 0x40
mov dword [ebp - 8], ecx
sete al
add ebx, 3
mov dword [ebp - 0x14], eax
jmp 0x4407cb
xor ecx, ecx
mov dword [ebp - 0x18], 1
mov dword [ebp - 8], ecx
inc ebx
jmp 0x4407c3
mov ecx, 1
mov dword [ebp - 0x18], ecx
mov dword [ebp - 8], ecx
add ebx, ecx
jmp 0x4407c3
mov edx, 1
xor ecx, ecx
mov dword [ebp - 0x18], edx
mov dword [ebp - 8], ecx
add ebx, edx
jmp 0x4407c8
movzx edx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl edx, 8
xor ecx, ecx
or edx, eax
mov dword [ebp - 0x18], 1
mov dword [ebp - 8], ecx
add ebx, 3
jmp 0x4407c8
lea eax, [ecx - 0x39]
movsx edx, byte [eax + 0x49aae8]
movzx ecx, al
and ecx, 1
mov dword [ebp - 0x14], ecx
movsx ecx, byte [eax + 0x49aae0]
inc ebx
mov dword [ebp - 8], ecx
mov dword [ebp - 0xc], edx
test edx, edx
jne 0x4407cb
mov edx, accept
mov dword [ebp - 0xc], edx
movzx eax, byte [ebx]
inc ebx
mov dword [ebp - 0x10], eax
test ecx, ecx
jle 0x44161b
add eax, 0xfffffffa
cmp dword [ebp - 0x1c], 0
je 0x441287
cmp eax, 0xf
ja case.0x44484a.15
jmp dword [eax*4 + 0x444b84]
mov dword [ebp + 0x1c], 1
cmp ecx, 1
jl 0x44161b
cmp esi, dword [edi + 0x6c]
jae 0x443a3c
mov eax, dword [edi + 0x18]
test eax, eax
je 0x44083d
mov ecx, dword [ebp - 0x1c]
push ecx
mov ecx, dword [edi + 0x6c]
lea edx, [edi + 0x1c]
push edx
push ecx
push eax
push esi
call fcn.00434749
add esp, 0x14
test eax, eax
jne case.0x444864.14
mov edx, dword [ebp - 0xc]
mov ecx, dword [ebp - 8]
jmp 0x440864
mov eax, dword [edi + 0x6c]
sub eax, dword [edi + 0x1c]
cmp esi, eax
ja 0x440864
mov al, byte [esi]
cmp al, byte [edi + 0x2c]
jne 0x440864
cmp dword [edi + 0x1c], 1
je case.0x444864.14
mov al, byte [esi + 1]
cmp al, byte [edi + 0x2d]
je case.0x444864.14
inc esi
cmp esi, dword [edi + 0x6c]
jae 0x44087e
lea ebx, [ebx]
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x44087e
inc esi
cmp esi, dword [edi + 0x6c]
jb 0x440870
inc dword [ebp + 0x1c]
cmp dword [ebp + 0x1c], ecx
jle 0x440807
jmp 0x44161b
mov dword [ebp + 0x1c], 1
cmp ecx, 1
jl 0x44161b
jmp 0x4408a0
mov eax, dword [edi + 0x6c]
cmp esi, eax
jae 0x443a3c
inc esi
cmp esi, eax
jae 0x4408be
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x4408be
inc esi
cmp esi, dword [edi + 0x6c]
jb 0x4408b0
mov eax, dword [ebp + 0x1c]
inc eax
mov dword [ebp + 0x1c], eax
cmp eax, ecx
jle 0x4408a0
jmp 0x44161b
mov eax, dword [edi + 0x6c]
sub eax, ecx
cmp esi, eax
ja case.0x444864.14
add esi, ecx
jmp 0x44161b
mov dword [ebp + 0x1c], 1
cmp ecx, 1
jl 0x44161b
cmp esi, dword [edi + 0x6c]
jae 0x443a3c
movzx eax, byte [esi]
inc esi
mov dword [ebp - 4], eax
cmp eax, 0xc0
jb 0x4409e4
movzx edx, byte [esi]
and edx, 0x3f
test al, 0x20
jne 0x440925
and eax, 0x1f
shl eax, 6
or eax, edx
inc esi
jmp 0x4409de
test al, 0x10
jne 0x440945
and eax, 0xf
shl eax, 6
or eax, edx
movzx edx, byte [esi + 1]
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 2
jmp 0x4409de
test al, 8
jne 0x44096e
and eax, 7
shl eax, 6
or eax, edx
movzx edx, byte [esi + 1]
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [esi + 2]
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 3
jmp 0x4409de
test al, 4
jne 0x4409a3
and eax, 3
shl eax, 6
or eax, edx
movzx edx, byte [esi + 1]
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [esi + 2]
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [esi + 3]
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 4
jmp 0x4409de
and eax, 1
shl eax, 6
or eax, edx
movzx edx, byte [esi + 1]
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [esi + 2]
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [esi + 3]
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [esi + 4]
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 5
mov edx, dword [ebp - 0xc]
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0xd
ja 0x440a10
je 0x440a03
cmp dword [ebp - 4], 0xa
je 0x440a34
mov eax, dword [ebp - 4]
add eax, 0xfffffff5
cmp eax, 1
ja case.0x444864.14
jmp 0x440a2a
cmp esi, dword [edi + 0x6c]
jae 0x440a34
cmp byte [esi], 0xa
jne 0x440a34
inc esi
jmp 0x440a34
cmp dword [ebp - 4], 0x85
je 0x440a2a
mov eax, dword [ebp - 4]
add eax, 0xffffdfd8
cmp eax, 1
ja case.0x444864.14
cmp dword [edi + 0x60], 0
jne 0x442fd6
inc dword [ebp + 0x1c]
cmp dword [ebp + 0x1c], ecx
jle 0x4408f2
jmp 0x44161b
mov dword [ebp + 0x1c], 1
cmp ecx, 1
jl 0x44161b
cmp esi, dword [edi + 0x6c]
jae 0x44348d
movzx eax, byte [esi]
inc esi
mov dword [ebp - 4], eax
cmp eax, 0xc0
jb 0x440b47
movzx edx, byte [esi]
and edx, 0x3f
test al, 0x20
jne 0x440a88
and eax, 0x1f
shl eax, 6
or eax, edx
inc esi
jmp 0x440b41
test al, 0x10
jne 0x440aa8
and eax, 0xf
shl eax, 6
or eax, edx
movzx edx, byte [esi + 1]
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 2
jmp 0x440b41
test al, 8
jne 0x440ad1
and eax, 7
shl eax, 6
or eax, edx
movzx edx, byte [esi + 1]
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [esi + 2]
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 3
jmp 0x440b41
test al, 4
jne 0x440b06
and eax, 3
shl eax, 6
or eax, edx
movzx edx, byte [esi + 1]
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [esi + 2]
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [esi + 3]
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 4
jmp 0x440b41
and eax, 1
shl eax, 6
or eax, edx
movzx edx, byte [esi + 1]
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [esi + 2]
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [esi + 3]
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [esi + 4]
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 5
mov edx, dword [ebp - 0xc]
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0x180e
ja 0x440b8a
je 0x442fd6
cmp dword [ebp - 4], 0xa0
ja 0x440b7b
je 0x442fd6
cmp dword [ebp - 4], 9
je 0x442fd6
cmp dword [ebp - 4], 0x20
je 0x442fd6
jmp 0x440bcb
cmp dword [ebp - 4], 0x1680
je 0x442fd6
jmp 0x440bcb
cmp dword [ebp - 4], 0x205f
ja 0x440bbe
je 0x442fd6
cmp dword [ebp - 4], 0x2000
jb 0x440bcb
cmp dword [ebp - 4], 0x200a
jbe 0x442fd6
cmp dword [ebp - 4], 0x202f
je 0x442fd6
jmp 0x440bcb
cmp dword [ebp - 4], 0x3000
je 0x442fd6
inc dword [ebp + 0x1c]
cmp dword [ebp + 0x1c], ecx
jle 0x440a55
jmp 0x44161b
mov dword [ebp + 0x1c], 1
cmp ecx, 1
jl 0x44161b
cmp esi, dword [edi + 0x6c]
jae 0x44348d
movzx eax, byte [esi]
inc esi
mov dword [ebp - 4], eax
cmp eax, 0xc0
jb 0x440cde
movzx edx, byte [esi]
and edx, 0x3f
test al, 0x20
jne 0x440c1f
and eax, 0x1f
shl eax, 6
or eax, edx
inc esi
jmp 0x440cd8
test al, 0x10
jne 0x440c3f
and eax, 0xf
shl eax, 6
or eax, edx
movzx edx, byte [esi + 1]
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 2
jmp 0x440cd8
test al, 8
jne 0x440c68
and eax, 7
shl eax, 6
or eax, edx
movzx edx, byte [esi + 1]
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [esi + 2]
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 3
jmp 0x440cd8
test al, 4
jne 0x440c9d
and eax, 3
shl eax, 6
or eax, edx
movzx edx, byte [esi + 1]
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [esi + 2]
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [esi + 3]
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 4
jmp 0x440cd8
and eax, 1
shl eax, 6
or eax, edx
movzx edx, byte [esi + 1]
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [esi + 2]
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [esi + 3]
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [esi + 4]
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 5
mov edx, dword [ebp - 0xc]
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0x180e
ja 0x440d15
je 0x440d52
cmp dword [ebp - 4], 0xa0
ja 0x440d06
je 0x440d52
cmp dword [ebp - 4], 9
je 0x440d52
cmp dword [ebp - 4], 0x20
jne 0x442fd6
jmp 0x440d52
cmp dword [ebp - 4], 0x1680
jne 0x442fd6
jmp 0x440d52
cmp dword [ebp - 4], 0x205f
ja 0x440d45
je 0x440d52
cmp dword [ebp - 4], 0x2000
jb 0x442fd6
cmp dword [ebp - 4], 0x200a
jbe 0x440d52
cmp dword [ebp - 4], 0x202f
jne 0x442fd6
jmp 0x440d52
cmp dword [ebp - 4], 0x3000
jne 0x442fd6
inc dword [ebp + 0x1c]
cmp dword [ebp + 0x1c], ecx
jle 0x440bec
jmp 0x44161b
mov dword [ebp + 0x1c], 1
cmp ecx, 1
jl 0x44161b
cmp esi, dword [edi + 0x6c]
jae 0x44348d
movzx eax, byte [esi]
inc esi
mov dword [ebp - 4], eax
cmp eax, 0xc0
jb 0x440e65
movzx edx, byte [esi]
and edx, 0x3f
test al, 0x20
jne 0x440da6
and eax, 0x1f
shl eax, 6
or eax, edx
inc esi
jmp 0x440e5f
test al, 0x10
jne 0x440dc6
and eax, 0xf
shl eax, 6
or eax, edx
movzx edx, byte [esi + 1]
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 2
jmp 0x440e5f
test al, 8
jne 0x440def
and eax, 7
shl eax, 6
or eax, edx
movzx edx, byte [esi + 1]
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [esi + 2]
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 3
jmp 0x440e5f
test al, 4
jne 0x440e24
and eax, 3
shl eax, 6
or eax, edx
movzx edx, byte [esi + 1]
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [esi + 2]
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [esi + 3]
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 4
jmp 0x440e5f
and eax, 1
shl eax, 6
or eax, edx
movzx edx, byte [esi + 1]
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [esi + 2]
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [esi + 3]
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [esi + 4]
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 5
mov edx, dword [ebp - 0xc]
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0x85
ja 0x440e86
je 0x442fd6
cmp dword [ebp - 4], 0xa
jb 0x440e9c
cmp dword [ebp - 4], 0xd
jbe 0x442fd6
jmp 0x440e9c
cmp dword [ebp - 4], 0x2028
jb 0x440e9c
cmp dword [ebp - 4], 0x2029
jbe 0x442fd6
inc dword [ebp + 0x1c]
cmp dword [ebp + 0x1c], ecx
jle 0x440d73
jmp 0x44161b
mov dword [ebp + 0x1c], 1
cmp ecx, 1
jl 0x44161b
cmp esi, dword [edi + 0x6c]
jae 0x44348d
movzx eax, byte [esi]
inc esi
mov dword [ebp - 4], eax
cmp eax, 0xc0
jb 0x440faf
movzx edx, byte [esi]
and edx, 0x3f
test al, 0x20
jne 0x440ef0
and eax, 0x1f
shl eax, 6
or eax, edx
inc esi
jmp 0x440fa9
test al, 0x10
jne 0x440f10
and eax, 0xf
shl eax, 6
or eax, edx
movzx edx, byte [esi + 1]
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 2
jmp 0x440fa9
test al, 8
jne 0x440f39
and eax, 7
shl eax, 6
or eax, edx
movzx edx, byte [esi + 1]
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [esi + 2]
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 3
jmp 0x440fa9
test al, 4
jne 0x440f6e
and eax, 3
shl eax, 6
or eax, edx
movzx edx, byte [esi + 1]
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [esi + 2]
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [esi + 3]
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 4
jmp 0x440fa9
and eax, 1
shl eax, 6
or eax, edx
movzx edx, byte [esi + 1]
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [esi + 2]
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [esi + 3]
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [esi + 4]
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 5
mov edx, dword [ebp - 0xc]
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0x85
ja 0x440fcb
je 0x440fdc
mov eax, dword [ebp - 4]
add eax, 0xfffffff6
cmp eax, 3
ja 0x442fd6
jmp 0x440fdc
mov eax, dword [ebp - 4]
add eax, 0xffffdfd8
cmp eax, 1
ja 0x442fd6
inc dword [ebp + 0x1c]
cmp dword [ebp + 0x1c], ecx
jle 0x440ebd
jmp 0x44161b
mov dword [ebp + 0x1c], 1
cmp ecx, 1
jl 0x44161b
cmp esi, dword [edi + 0x6c]
jae 0x44348d
movzx eax, byte [esi]
inc esi
mov dword [ebp - 4], eax
cmp eax, 0xc0
jb 0x4410ef
movzx edx, byte [esi]
and edx, 0x3f
test al, 0x20
jne 0x441030
and eax, 0x1f
shl eax, 6
or eax, edx
inc esi
jmp 0x4410e9
test al, 0x10
jne 0x441050
and eax, 0xf
shl eax, 6
or eax, edx
movzx edx, byte [esi + 1]
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 2
jmp 0x4410e9
test al, 8
jne 0x441079
and eax, 7
shl eax, 6
or eax, edx
movzx edx, byte [esi + 1]
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [esi + 2]
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 3
jmp 0x4410e9
test al, 4
jne 0x4410ae
and eax, 3
shl eax, 6
or eax, edx
movzx edx, byte [esi + 1]
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [esi + 2]
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [esi + 3]
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 4
jmp 0x4410e9
and eax, 1
shl eax, 6
or eax, edx
movzx edx, byte [esi + 1]
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [esi + 2]
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [esi + 3]
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [esi + 4]
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 5
mov edx, dword [ebp - 0xc]
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0x80
jae 0x44110b
mov eax, dword [edi + 0x34]
mov edx, dword [ebp - 4]
test byte [edx + eax], 4
jne 0x442fd6
mov edx, dword [ebp - 0xc]
inc dword [ebp + 0x1c]
cmp dword [ebp + 0x1c], ecx
jle 0x440ffd
jmp 0x44161b
mov dword [ebp + 0x1c], 1
cmp ecx, 1
jl 0x44161b
cmp esi, dword [edi + 0x6c]
jae 0x44348d
mov al, byte [esi]
cmp al, 0x80
jae 0x442fd6
mov edx, dword [edi + 0x34]
movzx eax, al
mov al, byte [eax + edx]
inc esi
and al, 4
je 0x442fd6
mov eax, dword [ebp + 0x1c]
inc eax
mov dword [ebp + 0x1c], eax
cmp eax, ecx
jle 0x44112c
jmp 0x441618
mov dword [ebp + 0x1c], 1
cmp ecx, 1
jl 0x44161b
cmp esi, dword [edi + 0x6c]
jae 0x44348d
mov al, byte [esi]
cmp al, 0x80
jae 0x441193
movzx edx, al
mov eax, dword [edi + 0x34]
test byte [edx + eax], 1
jne 0x442fd6
mov edx, dword [ebp - 0xc]
inc esi
cmp esi, dword [edi + 0x6c]
jae 0x4411a1
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
je 0x441193
inc dword [ebp + 0x1c]
cmp dword [ebp + 0x1c], ecx
jle 0x441171
jmp 0x44161b
mov dword [ebp + 0x1c], 1
cmp ecx, 1
jl 0x44161b
cmp esi, dword [edi + 0x6c]
jae 0x44348d
mov al, byte [esi]
cmp al, 0x80
jae 0x442fd6
movzx edx, al
mov eax, dword [edi + 0x34]
mov dl, byte [edx + eax]
inc esi
and dl, 1
je 0x442fd6
mov eax, dword [ebp + 0x1c]
inc eax
mov dword [ebp + 0x1c], eax
cmp eax, ecx
jle 0x4411be
jmp 0x441618
mov dword [ebp + 0x1c], 1
cmp ecx, 1
jl 0x44161b
cmp esi, dword [edi + 0x6c]
jae 0x44348d
mov al, byte [esi]
cmp al, 0x80
jae 0x441226
mov edx, dword [edi + 0x34]
movzx eax, al
test byte [eax + edx], 0x10
jne 0x442fd6
mov edx, dword [ebp - 0xc]
inc esi
cmp esi, dword [edi + 0x6c]
jae 0x441234
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
je 0x441226
inc dword [ebp + 0x1c]
cmp dword [ebp + 0x1c], ecx
jle 0x441204
jmp 0x44161b
mov dword [ebp + 0x1c], 1
cmp ecx, 1
jl 0x44161b
cmp esi, dword [edi + 0x6c]
jae 0x44348d
mov al, byte [esi]
cmp al, 0x80
jae 0x442fd6
movzx edx, al
mov eax, dword [edi + 0x34]
mov dl, byte [edx + eax]
inc esi
and dl, 0x10
je 0x442fd6
mov eax, dword [ebp + 0x1c]
inc eax
mov dword [ebp + 0x1c], eax
cmp eax, ecx
jle 0x441251
jmp 0x441618
cmp eax, 0xf
ja case.0x44484a.15
jmp dword [eax*4 + 0x444bc4]
cmp ecx, 1
jl 0x44161b
mov dword [ebp + 0x1c], 1
cmp esi, dword [edi + 0x6c]
jae 0x44348d
mov eax, dword [edi + 0x18]
test eax, eax
je 0x4412db
mov edx, dword [edi + 0x6c]
push 0
lea ecx, [edi + 0x1c]
push ecx
push edx
push eax
push esi
call fcn.00434749
add esp, 0x14
test eax, eax
jne 0x442fd6
mov edx, dword [ebp - 0xc]
mov ecx, dword [ebp - 8]
jmp 0x441302
mov eax, dword [edi + 0x6c]
sub eax, dword [edi + 0x1c]
cmp esi, eax
ja 0x441302
mov al, byte [esi]
cmp al, byte [edi + 0x2c]
jne 0x441302
cmp dword [edi + 0x1c], 1
je 0x442fd6
mov al, byte [esi + 1]
cmp al, byte [edi + 0x2d]
je 0x442fd6
mov eax, dword [ebp + 0x1c]
inc eax
inc esi
mov dword [ebp + 0x1c], eax
cmp eax, ecx
jle 0x4412a7
jmp 0x44161b
mov eax, dword [edi + 0x6c]
sub eax, ecx
cmp esi, eax
ja 0x44348d
add esi, ecx
jmp 0x44161b
mov eax, dword [edi + 0x6c]
sub eax, ecx
cmp esi, eax
ja 0x443a3c
add esi, ecx
jmp 0x44161b
mov dword [ebp + 0x1c], 1
cmp ecx, 1
jl 0x44161b
jmp 0x441350
cmp esi, dword [edi + 0x6c]
jae 0x4434c6
movzx eax, byte [esi]
sub eax, 0xa
inc esi
cmp eax, 0x7b
ja case.0x444864.14
movzx eax, byte [eax + 0x444c14]
jmp dword [eax*4 + 0x444c04]
cmp esi, dword [edi + 0x6c]
jae case.0x441370.10
cmp byte [esi], 0xa
jne case.0x441370.10
inc esi
jmp case.0x441370.10
cmp dword [edi + 0x60], 0
jne case.0x43d16e.115
mov eax, dword [ebp + 0x1c]
inc eax
mov dword [ebp + 0x1c], eax
cmp eax, ecx
jle 0x441350
jmp 0x44161b
mov dword [ebp + 0x1c], 1
cmp ecx, 1
jl 0x44161b
mov edi, edi
cmp esi, dword [edi + 0x6c]
jae 0x443a3c
movzx eax, byte [esi]
inc esi
cmp eax, 9
je case.0x444864.14
cmp eax, 0x20
je case.0x444864.14
cmp eax, 0xa0
je case.0x444864.14
mov eax, dword [ebp + 0x1c]
inc eax
mov dword [ebp + 0x1c], eax
cmp eax, ecx
jle 0x4413b0
jmp 0x44161b
mov dword [ebp + 0x1c], 1
cmp ecx, 1
jl 0x44161b
lea ebx, [ebx]
cmp esi, dword [edi + 0x6c]
jae 0x443a3c
movzx eax, byte [esi]
inc esi
cmp eax, 9
je 0x441422
cmp eax, 0x20
je 0x441422
cmp eax, 0xa0
jne case.0x444864.14
mov eax, dword [ebp + 0x1c]
inc eax
mov dword [ebp + 0x1c], eax
cmp eax, ecx
jle 0x441400
jmp 0x44161b
mov dword [ebp + 0x1c], 1
cmp ecx, 1
jl 0x44161b
cmp esi, dword [edi + 0x6c]
jae 0x443a3c
movzx eax, byte [esi]
inc esi
cmp eax, 0xa
jl 0x441468
cmp eax, 0xd
jle case.0x444864.14
cmp eax, 0x85
je case.0x444864.14
mov eax, dword [ebp + 0x1c]
inc eax
mov dword [ebp + 0x1c], eax
cmp eax, ecx
jle 0x441442
jmp 0x44161b
mov dword [ebp + 0x1c], 1
cmp ecx, 1
jl 0x44161b
jmp 0x441490
cmp esi, dword [edi + 0x6c]
jae 0x443a3c
movzx eax, byte [esi]
inc esi
cmp eax, 0xa
jl case.0x444864.14
cmp eax, 0xd
jle 0x4414b6
cmp eax, 0x85
jne case.0x444864.14
mov eax, dword [ebp + 0x1c]
inc eax
mov dword [ebp + 0x1c], eax
cmp eax, ecx
jle 0x441490
jmp 0x44161b
mov dword [ebp + 0x1c], 1
cmp ecx, 1
jl 0x44161b
cmp esi, dword [edi + 0x6c]
jae 0x443a3c
movzx edx, byte [esi]
mov eax, dword [edi + 0x34]
mov dl, byte [edx + eax]
inc esi
and dl, 4
jne case.0x444864.14
mov eax, dword [ebp + 0x1c]
inc eax
mov dword [ebp + 0x1c], eax
cmp eax, ecx
jle 0x4414d6
jmp 0x441618
mov dword [ebp + 0x1c], 1
cmp ecx, 1
jl 0x44161b
cmp esi, dword [edi + 0x6c]
jae 0x443a3c
movzx eax, byte [esi]
mov edx, dword [edi + 0x34]
mov al, byte [eax + edx]
inc esi
and al, 4
je case.0x444864.14
mov eax, dword [ebp + 0x1c]
inc eax
mov dword [ebp + 0x1c], eax
cmp eax, ecx
jle 0x441512
jmp 0x441618
mov dword [ebp + 0x1c], 1
cmp ecx, 1
jl 0x44161b
cmp esi, dword [edi + 0x6c]
jae 0x443a3c
movzx edx, byte [esi]
mov eax, dword [edi + 0x34]
mov dl, byte [edx + eax]
inc esi
and dl, 1
jne case.0x444864.14
mov eax, dword [ebp + 0x1c]
inc eax
mov dword [ebp + 0x1c], eax
cmp eax, ecx
jle 0x44154d
jmp 0x441618
mov dword [ebp + 0x1c], 1
cmp ecx, 1
jl 0x44161b
cmp esi, dword [edi + 0x6c]
jae 0x443a3c
movzx eax, byte [esi]
mov edx, dword [edi + 0x34]
mov al, byte [eax + edx]
inc esi
and al, 1
je case.0x444864.14
mov eax, dword [ebp + 0x1c]
inc eax
mov dword [ebp + 0x1c], eax
cmp eax, ecx
jle 0x441589
jmp 0x441618
mov dword [ebp + 0x1c], 1
cmp ecx, 1
jl 0x44161b
cmp esi, dword [edi + 0x6c]
jae 0x443a3c
movzx edx, byte [esi]
mov eax, dword [edi + 0x34]
mov dl, byte [edx + eax]
inc esi
and dl, 0x10
jne case.0x444864.14
mov eax, dword [ebp + 0x1c]
inc eax
mov dword [ebp + 0x1c], eax
cmp eax, ecx
jle 0x4415bd
jmp 0x441618
mov dword [ebp + 0x1c], 1
cmp ecx, 1
jl 0x44161b
cmp esi, dword [edi + 0x6c]
jae 0x443a3c
movzx eax, byte [esi]
mov edx, dword [edi + 0x34]
mov al, byte [eax + edx]
inc esi
and al, 0x10
je case.0x444864.14
mov eax, dword [ebp + 0x1c]
inc eax
mov dword [ebp + 0x1c], eax
cmp eax, ecx
jle 0x4415f2
mov edx, dword [ebp - 0xc]
cmp ecx, edx
je 0x43d150
cmp dword [ebp - 0x14], 0
jne 0x444331
mov eax, dword [ebp - 0x10]
add eax, 0xfffffffa
cmp dword [ebp - 0x1c], 0
mov dword [ebp - 0x14], esi
je 0x44252a
cmp eax, 0xf
ja case.0x44484a.15
jmp dword [eax*4 + 0x444c90]
mov dword [ebp + 0x1c], ecx
cmp edx, 0x7fffffff
jge 0x4416f3
cmp ecx, edx
jge 0x442499
cmp esi, dword [edi + 0x6c]
jae 0x441825
mov eax, dword [edi + 0x18]
test eax, eax
je 0x44169a
mov ecx, dword [ebp - 0x1c]
push ecx
mov ecx, dword [edi + 0x6c]
lea edx, [edi + 0x1c]
push edx
push ecx
push eax
push esi
call fcn.00434749
add esp, 0x14
test eax, eax
jne 0x442499
mov edx, dword [ebp - 0xc]
jmp 0x4416c1
mov eax, dword [edi + 0x6c]
sub eax, dword [edi + 0x1c]
cmp esi, eax
ja 0x4416c1
mov cl, byte [esi]
cmp cl, byte [edi + 0x2c]
jne 0x4416c1
cmp dword [edi + 0x1c], 1
je 0x442499
mov al, byte [esi + 1]
cmp al, byte [edi + 0x2d]
je 0x442499
mov eax, dword [edi + 0x6c]
inc esi
cmp esi, eax
jae 0x4416df
lea esp, [esp]
mov cl, byte [esi]
and cl, 0xc0
cmp cl, 0x80
jne 0x4416df
inc esi
cmp esi, eax
jb 0x4416d0
mov eax, dword [ebp + 0x1c]
inc eax
mov dword [ebp + 0x1c], eax
cmp eax, edx
jl 0x441667
jmp 0x442499
cmp ecx, edx
jge 0x442499
jmp 0x441700
cmp esi, dword [edi + 0x6c]
jae 0x44177f
mov eax, dword [edi + 0x18]
test eax, eax
je 0x44172f
mov edx, dword [ebp - 0x1c]
push edx
mov edx, dword [edi + 0x6c]
lea ecx, [edi + 0x1c]
push ecx
push edx
push eax
push esi
call fcn.00434749
add esp, 0x14
test eax, eax
jne 0x442499
mov edx, dword [ebp - 0xc]
jmp 0x441756
mov eax, dword [edi + 0x6c]
sub eax, dword [edi + 0x1c]
cmp esi, eax
ja 0x441756
mov cl, byte [esi]
cmp cl, byte [edi + 0x2c]
jne 0x441756
cmp dword [edi + 0x1c], 1
je 0x442499
mov al, byte [esi + 1]
cmp al, byte [edi + 0x2d]
je 0x442499
mov eax, dword [edi + 0x6c]
inc esi
cmp esi, eax
jae 0x44176f
mov edi, edi
mov cl, byte [esi]
and cl, 0xc0
cmp cl, 0x80
jne 0x44176f
inc esi
cmp esi, eax
jb 0x441760
mov eax, dword [ebp + 0x1c]
inc eax
mov dword [ebp + 0x1c], eax
cmp eax, edx
jl 0x441700
jmp 0x442499
cmp dword [edi + 0x7c], 0
je 0x442499
cmp esi, dword [edi + 0x78]
jbe 0x442499
mov eax, 1
mov dword [edi + 0x5c], eax
cmp dword [edi + 0x7c], eax
jg 0x443311
jmp 0x442499
cmp edx, 0x7fffffff
jge 0x44180f
mov dword [ebp + 0x1c], ecx
cmp ecx, edx
jge 0x442499
mov eax, dword [edi + 0x6c]
cmp esi, eax
jae 0x4417e6
inc esi
cmp esi, eax
jae 0x4417d6
mov cl, byte [esi]
and cl, 0xc0
cmp cl, 0x80
jne 0x4417d6
inc esi
cmp esi, eax
jb 0x4417c7
mov ecx, dword [ebp + 0x1c]
inc ecx
mov dword [ebp + 0x1c], ecx
cmp ecx, edx
jl 0x4417be
jmp 0x442499
cmp dword [edi + 0x7c], 0
je 0x442499
cmp esi, dword [edi + 0x78]
jbe 0x442499
mov eax, 1
mov dword [edi + 0x5c], eax
cmp dword [edi + 0x7c], eax
jg 0x4432dd
jmp 0x442499
mov esi, dword [edi + 0x6c]
jmp 0x442499
mov eax, dword [edi + 0x6c]
sub edx, ecx
sub eax, esi
cmp edx, eax
jbe 0x44184e
mov esi, dword [edi + 0x6c]
cmp dword [edi + 0x7c], 0
je 0x442499
cmp esi, dword [edi + 0x78]
jbe 0x442499
mov eax, 1
mov dword [edi + 0x5c], eax
cmp dword [edi + 0x7c], eax
jg 0x4434b1
jmp 0x442499
add esi, edx
jmp 0x442499
mov dword [ebp + 0x1c], ecx
cmp ecx, edx
jge 0x442499
mov ecx, 1
cmp esi, dword [edi + 0x6c]
jae 0x4419b9
movzx eax, byte [esi]
cmp eax, 0xc0
jb 0x44195a
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test al, 0x20
jne 0x441899
and eax, 0x1f
shl eax, 6
or eax, ecx
mov ecx, 2
jmp 0x44195a
test al, 0x10
jne 0x4418bb
and eax, 0xf
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or eax, ecx
mov ecx, 3
jmp 0x44195a
test al, 8
jne 0x4418e6
and eax, 7
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or eax, ecx
mov ecx, 4
jmp 0x44195a
test al, 4
jne 0x44191d
and eax, 3
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or eax, ecx
mov ecx, 5
jmp 0x44195a
and eax, 1
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 5]
shl ecx, 6
and eax, 0x3f
or eax, ecx
mov ecx, 6
cmp eax, 0xd
jne 0x441971
inc esi
cmp esi, dword [edi + 0x6c]
jae 0x442499
cmp byte [esi], 0xa
jne 0x4419a5
inc esi
jmp 0x4419a5
cmp eax, 0xa
je 0x4419a3
cmp dword [edi + 0x60], 0
jne 0x442499
cmp eax, 0xb
je 0x4419a3
cmp eax, 0xc
je 0x4419a3
cmp eax, 0x85
je 0x4419a3
cmp eax, 0x2028
je 0x4419a3
cmp eax, 0x2029
jne 0x442499
add esi, ecx
mov eax, dword [ebp + 0x1c]
inc eax
mov dword [ebp + 0x1c], eax
cmp eax, edx
jl 0x441860
jmp 0x442499
cmp dword [edi + 0x7c], 0
je 0x442499
cmp esi, dword [edi + 0x78]
jbe 0x442499
mov dword [edi + 0x5c], ecx
cmp dword [edi + 0x7c], ecx
jg 0x443311
jmp 0x442499
mov dword [ebp + 0x1c], ecx
cmp ecx, edx
jge 0x442499
mov ecx, 1
lea ecx, [ecx]
mov dword [ebp - 8], ecx
cmp esi, dword [edi + 0x6c]
jae 0x441b5f
movzx eax, byte [esi]
cmp eax, 0xc0
jb 0x441ad8
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test al, 0x20
jne 0x441a27
and eax, 0x1f
shl eax, 6
mov dword [ebp - 8], 2
jmp 0x441ad6
test al, 0x10
jne 0x441a43
and eax, 0xf
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
mov dword [ebp - 8], 3
jmp 0x441ad0
test al, 8
jne 0x441a68
and eax, 7
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
mov dword [ebp - 8], 4
jmp 0x441ad0
test al, 4
jne 0x441a99
and eax, 3
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 4]
mov dword [ebp - 8], 5
jmp 0x441ad0
and eax, 1
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 5]
mov dword [ebp - 8], 6
shl ecx, 6
and eax, 0x3f
or eax, ecx
cmp eax, 0x180e
ja 0x441b32
je 0x441af4
cmp eax, 0xa0
ja 0x441b27
je 0x441af4
cmp eax, 9
je 0x441af4
cmp eax, 0x20
jne 0x441b5b
mov ecx, 1
xor eax, eax
cmp dword [ebp - 0x10], 0x12
sete al
cmp ecx, eax
je 0x442499
mov eax, dword [ebp + 0x1c]
add esi, dword [ebp - 8]
mov ecx, 1
add eax, ecx
mov dword [ebp + 0x1c], eax
cmp eax, edx
jl 0x4419f0
jmp 0x442499
cmp eax, 0x1680
je 0x441af4
xor ecx, ecx
jmp 0x441af9
cmp eax, 0x205f
ja 0x441b54
je 0x441af4
cmp eax, 0x2000
jb 0x441b5b
cmp eax, 0x200a
jbe 0x441af4
cmp eax, 0x202f
je 0x441af4
xor ecx, ecx
jmp 0x441af9
cmp eax, 0x3000
je 0x441af4
xor ecx, ecx
jmp 0x441af9
cmp dword [edi + 0x7c], 0
je 0x442499
cmp esi, dword [edi + 0x78]
jbe 0x442499
mov dword [edi + 0x5c], ecx
cmp dword [edi + 0x7c], ecx
jg 0x4432dd
jmp 0x442499
mov dword [ebp + 0x1c], ecx
cmp ecx, edx
jge 0x442499
mov ecx, 1
mov dword [ebp - 8], ecx
cmp esi, dword [edi + 0x6c]
jae 0x441ccf
movzx eax, byte [esi]
cmp eax, 0xc0
jb 0x441c7b
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test al, 0x20
jne 0x441bca
and eax, 0x1f
shl eax, 6
mov dword [ebp - 8], 2
jmp 0x441c79
test al, 0x10
jne 0x441be6
and eax, 0xf
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
mov dword [ebp - 8], 3
jmp 0x441c73
test al, 8
jne 0x441c0b
and eax, 7
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
mov dword [ebp - 8], 4
jmp 0x441c73
test al, 4
jne 0x441c3c
and eax, 3
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 4]
mov dword [ebp - 8], 5
jmp 0x441c73
and eax, 1
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 5]
mov dword [ebp - 8], 6
shl ecx, 6
and eax, 0x3f
or eax, ecx
cmp eax, 0x85
ja 0x441cbe
je 0x441cc8
cmp eax, 0xa
jb 0x441c8e
cmp eax, 0xd
jbe 0x441cc8
xor ecx, ecx
xor eax, eax
cmp dword [ebp - 0x10], 0x14
sete al
cmp ecx, eax
je 0x442499
mov eax, dword [ebp + 0x1c]
add esi, dword [ebp - 8]
mov ecx, 1
add eax, ecx
mov dword [ebp + 0x1c], eax
cmp eax, edx
jl 0x441b93
jmp 0x442499
add eax, 0xffffdfd8
cmp eax, 1
ja 0x441c8e
mov ecx, 1
jmp 0x441c90
cmp dword [edi + 0x7c], 0
je 0x442499
cmp esi, dword [edi + 0x78]
jbe 0x442499
mov dword [edi + 0x5c], ecx
cmp dword [edi + 0x7c], ecx
jg 0x4434b1
jmp 0x442499
mov dword [ebp + 0x1c], ecx
cmp ecx, edx
jge 0x442499
mov edi, edi
mov eax, 1
mov dword [ebp - 0x10], eax
cmp esi, dword [edi + 0x6c]
jae 0x441e18
movzx eax, byte [esi]
cmp eax, 0xc0
jb 0x441ded
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test al, 0x20
jne 0x441d3c
and eax, 0x1f
shl eax, 6
mov dword [ebp - 0x10], 2
jmp 0x441deb
test al, 0x10
jne 0x441d58
and eax, 0xf
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
mov dword [ebp - 0x10], 3
jmp 0x441de5
test al, 8
jne 0x441d7d
and eax, 7
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
mov dword [ebp - 0x10], 4
jmp 0x441de5
test al, 4
jne 0x441dae
and eax, 3
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 4]
mov dword [ebp - 0x10], 5
jmp 0x441de5
and eax, 1
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 5]
mov dword [ebp - 0x10], 6
shl ecx, 6
and eax, 0x3f
or eax, ecx
cmp eax, 0x100
jae 0x441e01
mov ecx, dword [edi + 0x34]
test byte [eax + ecx], 4
jne 0x442499
mov eax, dword [ebp + 0x1c]
add esi, dword [ebp - 0x10]
inc eax
mov dword [ebp + 0x1c], eax
cmp eax, edx
jl 0x441d00
jmp 0x442499
cmp dword [edi + 0x7c], 0
je 0x442499
cmp esi, dword [edi + 0x78]
jbe 0x442499
mov dword [edi + 0x5c], eax
cmp dword [edi + 0x7c], eax
jg 0x443311
jmp 0x442499
mov dword [ebp + 0x1c], ecx
cmp ecx, edx
jge 0x442499
mov ecx, 1
lea esp, [esp]
mov dword [ebp - 0x10], ecx
cmp esi, dword [edi + 0x6c]
jae 0x441b5f
movzx eax, byte [esi]
cmp eax, 0xc0
jb 0x441f38
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test al, 0x20
jne 0x441e87
and eax, 0x1f
shl eax, 6
mov dword [ebp - 0x10], 2
jmp 0x441f36
test al, 0x10
jne 0x441ea3
and eax, 0xf
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
mov dword [ebp - 0x10], 3
jmp 0x441f30
test al, 8
jne 0x441ec8
and eax, 7
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
mov dword [ebp - 0x10], 4
jmp 0x441f30
test al, 4
jne 0x441ef9
and eax, 3
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 4]
mov dword [ebp - 0x10], 5
jmp 0x441f30
and eax, 1
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 5]
mov dword [ebp - 0x10], 6
shl ecx, 6
and eax, 0x3f
or eax, ecx
cmp eax, 0x100
jae 0x442499
mov ecx, dword [edi + 0x34]
test byte [eax + ecx], 4
je 0x442499
mov eax, dword [ebp + 0x1c]
add esi, dword [ebp - 0x10]
mov ecx, 1
add eax, ecx
mov dword [ebp + 0x1c], eax
cmp eax, edx
jl 0x441e50
jmp 0x442499
mov dword [ebp + 0x1c], ecx
cmp ecx, edx
jge 0x442499
jmp 0x441f80
mov eax, 1
mov dword [ebp - 0x10], eax
cmp esi, dword [edi + 0x6c]
jae 0x442098
movzx eax, byte [esi]
cmp eax, 0xc0
jb 0x44206d
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test al, 0x20
jne 0x441fbc
and eax, 0x1f
shl eax, 6
mov dword [ebp - 0x10], 2
jmp 0x44206b
test al, 0x10
jne 0x441fd8
and eax, 0xf
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
mov dword [ebp - 0x10], 3
jmp 0x442065
test al, 8
jne 0x441ffd
and eax, 7
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
mov dword [ebp - 0x10], 4
jmp 0x442065
test al, 4
jne 0x44202e
and eax, 3
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 4]
mov dword [ebp - 0x10], 5
jmp 0x442065
and eax, 1
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 5]
mov dword [ebp - 0x10], 6
shl ecx, 6
and eax, 0x3f
or eax, ecx
cmp eax, 0x100
jae 0x442081
mov ecx, dword [edi + 0x34]
test byte [eax + ecx], 1
jne 0x442499
mov eax, dword [ebp + 0x1c]
add esi, dword [ebp - 0x10]
inc eax
mov dword [ebp + 0x1c], eax
cmp eax, edx
jl 0x441f80
jmp 0x442499
cmp dword [edi + 0x7c], 0
je 0x442499
cmp esi, dword [edi + 0x78]
jbe 0x442499
mov dword [edi + 0x5c], eax
cmp dword [edi + 0x7c], eax
jg 0x4434b1
jmp 0x442499
mov dword [ebp + 0x1c], ecx
cmp ecx, edx
jge 0x442499
mov ecx, 1
lea esp, [esp]
mov dword [ebp - 0x10], ecx
cmp esi, dword [edi + 0x6c]
jae 0x4421ed
movzx eax, byte [esi]
cmp eax, 0xc0
jb 0x4421b8
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test al, 0x20
jne 0x442107
and eax, 0x1f
shl eax, 6
mov dword [ebp - 0x10], 2
jmp 0x4421b6
test al, 0x10
jne 0x442123
and eax, 0xf
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
mov dword [ebp - 0x10], 3
jmp 0x4421b0
test al, 8
jne 0x442148
and eax, 7
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
mov dword [ebp - 0x10], 4
jmp 0x4421b0
test al, 4
jne 0x442179
and eax, 3
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 4]
mov dword [ebp - 0x10], 5
jmp 0x4421b0
and eax, 1
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 5]
mov dword [ebp - 0x10], 6
shl ecx, 6
and eax, 0x3f
or eax, ecx
cmp eax, 0x100
jae 0x442499
mov ecx, dword [edi + 0x34]
test byte [eax + ecx], 1
je 0x442499
mov eax, dword [ebp + 0x1c]
add esi, dword [ebp - 0x10]
mov ecx, 1
add eax, ecx
mov dword [ebp + 0x1c], eax
cmp eax, edx
jl 0x4420d0
jmp 0x442499
cmp dword [edi + 0x7c], 0
je 0x442499
cmp esi, dword [edi + 0x78]
jbe 0x442499
mov dword [edi + 0x5c], ecx
cmp dword [edi + 0x7c], ecx
jg 0x443311
jmp 0x442499
mov dword [ebp + 0x1c], ecx
cmp ecx, edx
jge 0x442499
lea esp, [esp]
mov eax, 1
mov dword [ebp - 0x10], eax
cmp esi, dword [edi + 0x6c]
jae 0x442338
movzx eax, byte [esi]
cmp eax, 0xc0
jb 0x44230d
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test al, 0x20
jne 0x44225c
and eax, 0x1f
shl eax, 6
mov dword [ebp - 0x10], 2
jmp 0x44230b
test al, 0x10
jne 0x442278
and eax, 0xf
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
mov dword [ebp - 0x10], 3
jmp 0x442305
test al, 8
jne 0x44229d
and eax, 7
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
mov dword [ebp - 0x10], 4
jmp 0x442305
test al, 4
jne 0x4422ce
and eax, 3
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 4]
mov dword [ebp - 0x10], 5
jmp 0x442305
and eax, 1
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 5]
mov dword [ebp - 0x10], 6
shl ecx, 6
and eax, 0x3f
or eax, ecx
cmp eax, 0x100
jae 0x442321
mov ecx, dword [edi + 0x34]
test byte [eax + ecx], 0x10
jne 0x442499
mov eax, dword [ebp + 0x1c]
add esi, dword [ebp - 0x10]
inc eax
mov dword [ebp + 0x1c], eax
cmp eax, edx
jl 0x442220
jmp 0x442499
cmp dword [edi + 0x7c], 0
je 0x442499
cmp esi, dword [edi + 0x78]
jbe 0x442499
mov dword [edi + 0x5c], eax
cmp dword [edi + 0x7c], eax
jg 0x4432dd
jmp 0x442499
mov dword [ebp + 0x1c], ecx
cmp ecx, edx
jge 0x442499
mov ecx, 1
lea esp, [esp]
mov dword [ebp - 0x10], ecx
cmp esi, dword [edi + 0x6c]
jae 0x442482
movzx eax, byte [esi]
cmp eax, 0xc0
jb 0x442458
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test al, 0x20
jne 0x4423a7
and eax, 0x1f
shl eax, 6
mov dword [ebp - 0x10], 2
jmp 0x442456
test al, 0x10
jne 0x4423c3
and eax, 0xf
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
mov dword [ebp - 0x10], 3
jmp 0x442450
test al, 8
jne 0x4423e8
and eax, 7
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
mov dword [ebp - 0x10], 4
jmp 0x442450
test al, 4
jne 0x442419
and eax, 3
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 4]
mov dword [ebp - 0x10], 5
jmp 0x442450
and eax, 1
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 5]
mov dword [ebp - 0x10], 6
shl ecx, 6
and eax, 0x3f
or eax, ecx
cmp eax, 0x100
jae 0x442499
mov ecx, dword [edi + 0x34]
test byte [eax + ecx], 0x10
je 0x442499
mov eax, dword [ebp + 0x1c]
add esi, dword [ebp - 0x10]
mov ecx, 1
add eax, ecx
mov dword [ebp + 0x1c], eax
cmp eax, edx
jl 0x442370
jmp 0x442499
cmp dword [edi + 0x7c], 0
je 0x442499
cmp esi, dword [edi + 0x78]
jbe 0x442499
mov dword [edi + 0x5c], ecx
cmp dword [edi + 0x7c], ecx
jg 0x4434b1
cmp dword [ebp - 0x18], 0
jne 0x43d150
mov eax, dword [ebp + 0x2c]
mov edx, dword [ebp + 0x24]
mov ecx, dword [ebp + 0x18]
inc eax
push eax
push 0
push edx
mov edx, dword [ebp + 0x14]
mov dword [ebp - 8], eax
mov eax, dword [ebp + 0x20]
push eax
mov eax, dword [ebp + 0x10]
push edi
push ecx
push edx
push eax
push ebx
push esi
call fcn.0043d100
add esp, 0x28
test eax, eax
jne 0x4449a4
mov ecx, esi
dec esi
cmp ecx, dword [ebp - 0x14]
je 0x442934
mov dl, byte [esi]
and dl, 0xc0
cmp dl, 0x80
jne 0x4424fa
lea ebx, [ebx]
mov al, byte [esi - 1]
dec esi
and al, 0xc0
cmp al, 0x80
je 0x4424f0
mov ecx, dword [ebp - 8]
mov edx, dword [ebp + 0x24]
mov eax, dword [ebp + 0x20]
push ecx
mov ecx, dword [ebp + 0x18]
push 0
push edx
mov edx, dword [ebp + 0x14]
push eax
mov eax, dword [ebp + 0x10]
push edi
push ecx
push edx
push eax
push ebx
push esi
call fcn.0043d100
add esp, 0x28
test eax, eax
je 0x4424d4
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp eax, 0xf
ja case.0x44484a.15
jmp dword [eax*4 + 0x444cd0]
mov dword [ebp + 0x1c], ecx
cmp ecx, edx
jge 0x4428eb
cmp esi, dword [edi + 0x6c]
jae 0x4425aa
mov eax, dword [edi + 0x18]
test eax, eax
je 0x442572
mov ecx, dword [edi + 0x6c]
push 0
lea edx, [edi + 0x1c]
push edx
push ecx
push eax
push esi
call fcn.00434749
add esp, 0x14
test eax, eax
jne 0x4428eb
mov edx, dword [ebp - 0xc]
jmp 0x442599
mov eax, dword [edi + 0x6c]
sub eax, dword [edi + 0x1c]
cmp esi, eax
ja 0x442599
mov cl, byte [esi]
cmp cl, byte [edi + 0x2c]
jne 0x442599
cmp dword [edi + 0x1c], 1
je 0x4428eb
mov al, byte [esi + 1]
cmp al, byte [edi + 0x2d]
je 0x4428eb
mov eax, dword [ebp + 0x1c]
inc eax
inc esi
mov dword [ebp + 0x1c], eax
cmp eax, edx
jl 0x442545
jmp 0x4428eb
cmp dword [edi + 0x7c], 0
je 0x4428eb
cmp esi, dword [edi + 0x78]
jbe 0x4428eb
mov eax, 1
mov dword [edi + 0x5c], eax
cmp dword [edi + 0x7c], eax
jg 0x4434b1
jmp 0x4428eb
sub edx, ecx
mov ecx, dword [edi + 0x6c]
sub ecx, esi
cmp edx, ecx
jbe 0x44260a
mov esi, dword [edi + 0x6c]
cmp dword [edi + 0x7c], 0
je 0x4428eb
cmp esi, dword [edi + 0x78]
jbe 0x4428eb
mov eax, 1
mov dword [edi + 0x5c], eax
cmp dword [edi + 0x7c], eax
jg 0x443311
jmp 0x4428eb
add esi, edx
jmp 0x4428eb
cmp ecx, edx
jge 0x4428eb
lea esp, [esp]
cmp esi, dword [edi + 0x6c]
jae 0x44266d
movzx eax, byte [esi]
cmp eax, 0xd
jne 0x44263e
inc esi
cmp esi, dword [edi + 0x6c]
jae 0x4428eb
cmp byte [esi], 0xa
jne 0x442663
jmp 0x442662
cmp eax, 0xa
je 0x442662
cmp dword [edi + 0x60], 0
jne 0x4428eb
cmp eax, 0xb
je 0x442662
cmp eax, 0xc
je 0x442662
cmp eax, 0x85
jne 0x4428eb
inc esi
inc ecx
cmp ecx, edx
jl 0x442620
jmp 0x4428eb
cmp dword [edi + 0x7c], 0
je 0x4428eb
cmp esi, dword [edi + 0x78]
jbe 0x4428eb
mov eax, 1
mov dword [edi + 0x5c], eax
cmp dword [edi + 0x7c], eax
jg 0x4432dd
jmp 0x4428eb
cmp ecx, edx
jge 0x4428eb
mov edi, edi
cmp esi, dword [edi + 0x6c]
jae 0x4425aa
movzx eax, byte [esi]
cmp eax, 9
je 0x4428eb
cmp eax, 0x20
je 0x4428eb
cmp eax, 0xa0
je 0x4428eb
inc ecx
inc esi
cmp ecx, edx
jl 0x4426a0
jmp 0x4428eb
cmp ecx, edx
jge 0x4428eb
lea esp, [esp]
cmp esi, dword [edi + 0x6c]
jae 0x4425e1
movzx eax, byte [esi]
cmp eax, 9
je 0x442701
cmp eax, 0x20
je 0x442701
cmp eax, 0xa0
jne 0x4428eb
inc ecx
inc esi
cmp ecx, edx
jl 0x4426e0
jmp 0x4428eb
cmp ecx, edx
jge 0x4428eb
cmp esi, dword [edi + 0x6c]
jae 0x44266d
movzx eax, byte [esi]
cmp eax, 0xa
je 0x4428eb
cmp eax, 0xb
je 0x4428eb
cmp eax, 0xc
je 0x4428eb
cmp eax, 0xd
je 0x4428eb
cmp eax, 0x85
je 0x4428eb
inc ecx
inc esi
cmp ecx, edx
jl 0x442714
jmp 0x4428eb
cmp ecx, edx
jge 0x4428eb
cmp esi, dword [edi + 0x6c]
jae 0x4425aa
movzx eax, byte [esi]
cmp eax, 0xa
je 0x44278d
cmp eax, 0xb
je 0x44278d
cmp eax, 0xc
je 0x44278d
cmp eax, 0xd
je 0x44278d
cmp eax, 0x85
jne 0x4428eb
inc ecx
inc esi
cmp ecx, edx
jl 0x442762
jmp 0x4428eb
mov dword [ebp + 0x1c], ecx
cmp ecx, edx
jge 0x4428eb
cmp esi, dword [edi + 0x6c]
jae 0x4425e1
movzx eax, byte [esi]
mov ecx, dword [edi + 0x34]
test byte [eax + ecx], 4
jne 0x4428eb
mov eax, dword [ebp + 0x1c]
inc eax
inc esi
mov dword [ebp + 0x1c], eax
cmp eax, edx
jl 0x4427a3
jmp 0x4428eb
mov dword [ebp + 0x1c], ecx
cmp ecx, edx
jge 0x4428eb
jmp 0x4427e0
cmp esi, dword [edi + 0x6c]
jae 0x44266d
movzx eax, byte [esi]
mov ecx, dword [edi + 0x34]
test byte [eax + ecx], 4
je 0x4428eb
mov eax, dword [ebp + 0x1c]
inc eax
inc esi
mov dword [ebp + 0x1c], eax
cmp eax, edx
jl 0x4427e0
jmp 0x4428eb
mov dword [ebp + 0x1c], ecx
cmp ecx, edx
jge 0x4428eb
cmp esi, dword [edi + 0x6c]
jae 0x4425aa
movzx eax, byte [esi]
mov ecx, dword [edi + 0x34]
test byte [eax + ecx], 1
jne 0x4428eb
mov eax, dword [ebp + 0x1c]
inc eax
inc esi
mov dword [ebp + 0x1c], eax
cmp eax, edx
jl 0x442815
jmp 0x4428eb
mov dword [ebp + 0x1c], ecx
cmp ecx, edx
jge 0x4428eb
lea ebx, [ebx]
cmp esi, dword [edi + 0x6c]
jae 0x4425e1
movzx eax, byte [esi]
mov ecx, dword [edi + 0x34]
test byte [eax + ecx], 1
je 0x4428eb
mov eax, dword [ebp + 0x1c]
inc eax
inc esi
mov dword [ebp + 0x1c], eax
cmp eax, edx
jl 0x442850
jmp 0x4428eb
mov dword [ebp + 0x1c], ecx
cmp ecx, edx
jge 0x4428eb
mov edi, edi
cmp esi, dword [edi + 0x6c]
jae 0x44266d
movzx eax, byte [esi]
mov ecx, dword [edi + 0x34]
test byte [eax + ecx], 0x10
jne 0x4428eb
mov eax, dword [ebp + 0x1c]
inc eax
inc esi
mov dword [ebp + 0x1c], eax
cmp eax, edx
jl 0x442880
jmp 0x4428eb
mov dword [ebp + 0x1c], ecx
cmp ecx, edx
jge 0x4428eb
lea ebx, [ebx]
cmp esi, dword [edi + 0x6c]
jae 0x4428cf
movzx eax, byte [esi]
mov ecx, dword [edi + 0x34]
test byte [eax + ecx], 0x10
je 0x4428eb
mov eax, dword [ebp + 0x1c]
inc eax
inc esi
mov dword [ebp + 0x1c], eax
cmp eax, edx
jl 0x4428b0
jmp 0x4428eb
cmp dword [edi + 0x7c], 0
je 0x4428eb
cmp esi, dword [edi + 0x78]
jbe 0x4428eb
mov eax, 1
mov dword [edi + 0x5c], eax
cmp dword [edi + 0x7c], eax
jg 0x4434b1
cmp dword [ebp - 0x18], 0
jne 0x43d150
cmp esi, dword [ebp - 0x14]
jb 0x442934
mov edx, dword [ebp + 0x2c]
inc edx
mov dword [ebp - 8], edx
mov eax, dword [ebp - 8]
mov ecx, dword [ebp + 0x24]
mov edx, dword [ebp + 0x20]
push eax
mov eax, dword [ebp + 0x18]
push 0
push ecx
mov ecx, dword [ebp + 0x14]
push edx
mov edx, dword [ebp + 0x10]
push edi
push eax
push ecx
push edx
push ebx
push esi
call fcn.0043d100
add esp, 0x28
dec esi
test eax, eax
jne 0x4449a4
cmp esi, dword [ebp - 0x14]
jae 0x442901
mov eax, dword [ebp + 0x14]
mov dword [edi + 0x9c], eax
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
movzx edx, byte [ebx + 4]
movzx eax, byte [ebx + 5]
shl edx, 8
or edx, eax
cmp byte [ebx + edx + 3], 0x54
lea ebx, [ebx + edx + 3]
jne 0x442974
mov edi, edi
movzx ecx, byte [ebx + 1]
movzx edx, byte [ebx + 2]
shl ecx, 8
or ecx, edx
add ebx, ecx
cmp byte [ebx], 0x54
je 0x442960
add ebx, 3
cmp dword [ebp - 4], 0x63
jne 0x442b8f
mov eax, dword [ebp + 0x2c]
mov ecx, dword [ebp + 0x24]
mov edx, dword [ebp + 0x20]
inc eax
push eax
mov eax, dword [ebp + 0x18]
push 2
push ecx
mov ecx, dword [ebp + 0x14]
push edx
mov edx, dword [ebp + 0x10]
push edi
push eax
push ecx
push edx
push ebx
push esi
call fcn.0043d100
add esp, 0x28
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
movzx eax, byte [ebx + 3]
movzx edx, byte [ebx + 4]
shl eax, 8
or eax, edx
lea edx, [eax + eax]
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x18], edx
cmp edx, dword [edi + 0x14]
jl 0x442ef9
xor eax, eax
cmp ecx, 0x61
movzx ecx, byte [ebx + 2]
setl al
dec eax
and eax, 2
mov dword [ebp + 0x28], eax
movzx eax, byte [ebx + 1]
shl eax, 8
or eax, ecx
cmp byte [eax + ebx], 0x54
jne 0x442a5f
nop
mov eax, dword [ebp + 0x2c]
mov edx, dword [ebp + 0x28]
mov ecx, dword [ebp + 0x20]
inc eax
push eax
mov eax, dword [ebp + 0x24]
push edx
mov edx, dword [ebp + 0x18]
push eax
mov eax, dword [ebp + 0x14]
push ecx
mov ecx, dword [ebp + 0x10]
push edi
push edx
movzx edx, byte [ebx]
push eax
movzx eax, byte [edx + 0x499e18]
push ecx
add eax, ebx
push eax
push esi
call fcn.0043d100
add esp, 0x28
test eax, eax
je 0x442a3c
cmp eax, 0xfffffc1e
jne 0x4449a4
cmp dword [edi + 0x70], ebx
jne 0x4449a4
movzx ecx, byte [ebx + 1]
movzx edx, byte [ebx + 2]
shl ecx, 8
or ecx, edx
movzx eax, byte [ebx + ecx + 1]
add ebx, ecx
movzx ecx, byte [ebx + 2]
shl eax, 8
or eax, ecx
cmp byte [eax + ebx], 0x54
je 0x4429f0
cmp dword [ebp + 0x28], 0
jne 0x442fe8
movzx edx, byte [ebx]
movzx eax, byte [edx + 0x499e18]
add ebx, eax
jmp 0x442b96
cmp byte [ebx + 3], 0x19
lea eax, [ebx + 3]
mov dword [ebp - 0x24], eax
jne 0x442a95
mov edx, dword [ebp + 0x20]
movzx ecx, byte [ebx + 4]
and edx, 0xfffffff8
or ecx, edx
mov dword [ebp + 0x20], ecx
cmp byte [ebx], 0x57
jne 0x442ad3
mov eax, dword [ebp + 0x2c]
mov ecx, dword [ebp + 0x24]
mov edx, dword [ebp + 0x20]
inc eax
push eax
mov eax, dword [ebp + 0x18]
push 0
push ecx
mov ecx, dword [ebp + 0x14]
push edx
mov edx, dword [ebp + 0x10]
push edi
push eax
mov eax, dword [ebp - 0x24]
push ecx
push edx
push eax
push esi
call fcn.0043d100
add esp, 0x28
test eax, eax
jne 0x4449a4
mov ebx, dword [ebp + 0x1c]
jmp 0x442b8f
mov ecx, dword [ebp + 0x2c]
mov edx, dword [ebp + 0x24]
mov eax, dword [ebp + 0x20]
inc ecx
push ecx
mov ecx, dword [ebp + 0x18]
push 2
push edx
mov edx, dword [ebp + 0x14]
push eax
mov eax, dword [ebp + 0x10]
push edi
push ecx
mov ecx, dword [ebp + 0x1c]
push edx
push eax
push ecx
push esi
call fcn.0043d100
add esp, 0x28
test eax, eax
jne 0x4449a4
mov ebx, dword [ebp - 0x24]
jmp 0x442b8f
cmp byte [edx], 0x61
mov edx, dword [ebp + 0x2c]
sbb eax, eax
and eax, 0xfffffffe
add eax, 2
inc edx
cmp byte [ebx], 0x57
mov dword [ebp + 0x28], eax
push edx
jne 0x442b5e
mov eax, dword [ebp + 0x24]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ebp + 0x18]
push 0
push eax
mov eax, dword [ebp + 0x14]
push ecx
mov ecx, dword [ebp + 0x10]
push edi
push edx
push eax
push ecx
add ebx, 3
push ebx
push esi
call fcn.0043d100
add esp, 0x28
test eax, eax
jne 0x4449a4
cmp dword [ebp + 0x28], eax
jne 0x443265
mov ebx, dword [ebp + 0x1c]
jmp 0x442b96
mov eax, dword [ebp + 0x28]
mov ecx, dword [ebp + 0x24]
mov edx, dword [ebp - 0x20]
push eax
mov eax, dword [ebp + 0x18]
push ecx
mov ecx, dword [ebp + 0x14]
push edx
mov edx, dword [ebp + 0x10]
push edi
push eax
mov eax, dword [ebp + 0x1c]
push ecx
push edx
push eax
push esi
call fcn.0043d100
add esp, 0x28
test eax, eax
jne 0x4449a4
add ebx, 3
mov dword [ebp + 0x28], 0
mov eax, dword [edi]
mov ecx, dword [edi + 0x44]
mov dword [ebp - 0x1c], ecx
cmp eax, dword [edi + 4]
jb 0x43d126
inc dword [edi]
mov eax, 0xfffffff8
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, 0xffffffeb
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 0x2c]
mov ecx, dword [ebp + 0x28]
inc edx
push edx
mov edx, dword [ebp + 0x24]
push ecx
mov ecx, dword [ebp + 0x20]
push edx
mov edx, dword [ebp + 0x18]
push ecx
movzx ecx, byte [ebx]
push edi
push edx
movzx edx, byte [ecx + 0x499e18]
lea eax, [ebx + 2]
push eax
mov dword [ebp + 0x14], eax
mov eax, dword [ebp + 0x10]
push eax
movzx eax, byte [ebx + 1]
add edx, ebx
add eax, edx
push eax
push esi
call fcn.0043d100
mov ebx, eax
add esp, 0x28
cmp ebx, 0xfffffc1d
jne 0x442c29
mov ecx, dword [edi + 0x70]
mov edx, dword [ebp + 0x14]
push ecx
push edx
call fcn.00415e70
add esp, 8
test eax, eax
jne 0x442c29
mov dword [edi + 0x70], esi
lea eax, [ebx - 1]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [edi + 0x9c], 0
jne 0x442c3b
mov eax, dword [ebp + 0x14]
mov dword [edi + 0x9c], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 0x2c]
mov eax, dword [ebp + 0x28]
mov ecx, dword [ebp + 0x24]
inc edx
push edx
mov edx, dword [ebp + 0x20]
push eax
mov eax, dword [ebp + 0x18]
push ecx
mov ecx, dword [ebp + 0x14]
push edx
mov edx, dword [ebp + 0x10]
push edi
push eax
movzx eax, byte [ebx]
push ecx
movzx ecx, byte [eax + 0x499e18]
push edx
add ecx, ebx
push ecx
push esi
call fcn.0043d100
add esp, 0x28
test eax, eax
je 0x442c9c
cmp eax, 0xfffffc1b
je 0x442c9c
cmp eax, 0xfffffc1c
je 0x442c9c
cmp eax, 0xfffffc1d
je 0x442c9c
cmp eax, 0xfffffc1e
jne 0x4449a4
mov edx, dword [ebp + 0x14]
mov dword [edi + 0x9c], edx
mov eax, 0xfffffc1a
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x2c]
mov ecx, dword [ebp + 0x28]
mov edx, dword [ebp + 0x24]
inc eax
push eax
mov eax, dword [ebp + 0x20]
push ecx
mov ecx, dword [ebp + 0x18]
push edx
mov edx, dword [ebp + 0x14]
push eax
mov eax, dword [ebp + 0x10]
push edi
push ecx
movzx ecx, byte [ebx]
push edx
movzx edx, byte [ecx + 0x499e18]
push eax
add edx, ebx
push edx
push esi
call fcn.0043d100
add esp, 0x28
test eax, eax
je 0x442cf4
cmp eax, 0xfffffc1e
jne 0x4449a4
mov eax, dword [ebp + 0x14]
mov dword [edi + 0x9c], eax
mov eax, 0xfffffc1b
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp + 0x2c]
mov edx, dword [ebp + 0x28]
mov eax, dword [ebp + 0x24]
inc ecx
push ecx
mov ecx, dword [ebp + 0x20]
push edx
mov edx, dword [ebp + 0x18]
push eax
mov eax, dword [ebp + 0x14]
push ecx
mov ecx, dword [ebp + 0x10]
push edi
push edx
movzx edx, byte [ebx]
push eax
movzx eax, byte [edx + 0x499e18]
push ecx
movzx ecx, byte [ebx + 1]
add eax, ebx
add ecx, eax
push ecx
push esi
call fcn.0043d100
add esp, 0x28
test eax, eax
je 0x442d52
cmp eax, 0xfffffc1e
jne 0x4449a4
add ebx, 2
mov dword [edi + 0x9c], ebx
mov eax, 0xfffffc1b
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 0x2c]
mov eax, dword [ebp + 0x28]
mov ecx, dword [ebp + 0x24]
inc edx
push edx
mov edx, dword [ebp + 0x20]
push eax
mov eax, dword [ebp + 0x18]
push ecx
mov ecx, dword [ebp + 0x14]
push edx
mov edx, dword [ebp + 0x10]
push edi
push eax
movzx eax, byte [ebx]
push ecx
movzx ecx, byte [eax + 0x499e18]
push edx
add ecx, ebx
push ecx
push esi
call fcn.0043d100
add esp, 0x28
test eax, eax
je 0x442db1
cmp eax, 0xfffffc1b
je 0x442db1
cmp eax, 0xfffffc1e
jne 0x4449a4
mov edx, dword [ebp + 0x14]
mov dword [edi + 0x70], esi
mov dword [edi + 0x9c], edx
mov eax, 0xfffffc1c
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x2c]
mov ecx, dword [ebp + 0x28]
mov edx, dword [ebp + 0x24]
inc eax
push eax
mov eax, dword [ebp + 0x20]
push ecx
mov ecx, dword [ebp + 0x18]
push edx
mov edx, dword [ebp + 0x14]
push eax
mov eax, dword [ebp + 0x10]
push edi
push ecx
movzx ecx, byte [ebx]
push edx
movzx edx, byte [ecx + 0x499e18]
push eax
movzx eax, byte [ebx + 1]
add edx, ebx
add eax, edx
push eax
push esi
call fcn.0043d100
add esp, 0x28
test eax, eax
je 0x442e19
cmp eax, 0xfffffc1b
je 0x442e19
cmp eax, 0xfffffc1e
jne 0x4449a4
add ebx, 2
mov dword [edi + 0x70], ebx
mov eax, 0xfffffc1d
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp + 0x2c]
mov edx, dword [ebp + 0x28]
mov eax, dword [ebp + 0x24]
inc ecx
push ecx
mov ecx, dword [ebp + 0x20]
push edx
mov edx, dword [ebp + 0x18]
push eax
mov eax, dword [ebp + 0x14]
push ecx
mov ecx, dword [ebp + 0x10]
push edi
push edx
movzx edx, byte [ebx]
push eax
movzx eax, byte [edx + 0x499e18]
push ecx
add eax, ebx
push eax
push esi
call fcn.0043d100
add esp, 0x28
test eax, eax
jne 0x4449a4
movzx ecx, byte [ebx + 1]
movzx edx, byte [ebx + 2]
mov eax, dword [ebp + 0x14]
shl ecx, 8
or ecx, edx
sub ebx, ecx
mov dword [edi + 0x70], ebx
mov dword [edi + 0x9c], eax
mov eax, 0xfffffc1e
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp + 0x2c]
mov edx, dword [ebp + 0x28]
mov eax, dword [ebp + 0x24]
inc ecx
push ecx
mov ecx, dword [ebp + 0x20]
push edx
mov edx, dword [ebp + 0x18]
push eax
mov eax, dword [ebp + 0x14]
push ecx
mov ecx, dword [ebp + 0x10]
push edi
push edx
movzx edx, byte [ebx]
push eax
movzx eax, byte [edx + 0x499e18]
push ecx
movzx ecx, byte [ebx + 3]
add eax, ebx
add ecx, eax
push ecx
push esi
call fcn.0043d100
add esp, 0x28
test eax, eax
jne 0x4449a4
movzx edx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl edx, 8
or edx, eax
mov ecx, ebx
sub ecx, edx
add ebx, 4
mov dword [edi + 0x70], ecx
mov dword [edi + 0x9c], ebx
mov eax, 0xfffffc1e
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [edi + 0xc]
mov edx, dword [eax + edx*4]
mov dword [ebp - 0x24], edx
mov edx, dword [ebp - 0x18]
mov edx, dword [eax + edx*4 + 4]
mov dword [ebp - 0x20], edx
mov edx, dword [edi + 0x10]
sub edx, dword [ebp - 0x14]
lea eax, [eax + edx*4]
mov edx, dword [eax]
mov dword [ebp - 0x18], edx
mov edx, dword [edi + 0x84]
mov dword [ebp + 0x1c], edx
mov edx, esi
sub edx, dword [edi + 0x68]
mov dword [eax], edx
xor eax, eax
cmp ecx, 0x62
mov ecx, dword [ebp + 0x2c]
setne al
dec eax
and eax, 2
inc ecx
mov dword [ebp + 0x28], eax
mov dword [ebp - 8], ecx
mov edx, dword [ebp - 8]
mov eax, dword [ebp + 0x28]
mov ecx, dword [ebp + 0x24]
push edx
mov edx, dword [ebp + 0x20]
push eax
mov eax, dword [ebp + 0x18]
push ecx
mov ecx, dword [ebp + 0x14]
push edx
mov edx, dword [ebp + 0x10]
push edi
push eax
movzx eax, byte [ebx]
push ecx
movzx ecx, byte [eax + 0x499e18]
push edx
add ecx, ebx
push ecx
push esi
call fcn.0043d100
add esp, 0x28
test eax, eax
je 0x442f8b
cmp eax, 0xfffffc1e
jne 0x4449a4
cmp dword [edi + 0x70], ebx
jne 0x4449a4
mov edx, dword [ebp + 0x1c]
mov dword [edi + 0x84], edx
movzx ecx, byte [ebx + 1]
movzx edx, byte [ebx + 2]
shl ecx, 8
or ecx, edx
add ebx, ecx
cmp byte [ebx], 0x54
je 0x442f40
mov edx, dword [ebp - 0x14]
mov esi, dword [edi + 0xc]
mov ebx, dword [ebp - 0x24]
lea ecx, [edx + edx]
mov dword [esi + ecx*4], ebx
mov esi, dword [edi + 0xc]
mov ebx, dword [ebp - 0x20]
mov dword [esi + ecx*4 + 4], ebx
mov ecx, dword [edi + 0x10]
mov esi, dword [ebp - 0x18]
sub ecx, edx
mov edx, dword [edi + 0xc]
mov dword [edx + ecx*4], esi
cmp eax, 0xfffffc1e
je 0x442fdf
mov eax, dword [ebp + 0x14]
mov dword [edi + 0x9c], eax
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp + 0x2c]
mov edx, dword [ebp + 0x28]
mov eax, dword [ebp + 0x24]
inc ecx
push ecx
mov ecx, dword [ebp + 0x20]
push edx
mov edx, dword [ebp + 0x18]
push eax
mov eax, dword [ebp + 0x14]
push ecx
mov ecx, dword [ebp + 0x10]
push edi
push edx
movzx edx, byte [ebx]
push eax
movzx eax, byte [edx + 0x499e18]
push ecx
add eax, ebx
push eax
push esi
call fcn.0043d100
add esp, 0x28
test eax, eax
jne 0x4449a4
mov ecx, dword [ebp + 0x14]
mov dword [edi + 0x9c], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
cmp esi, eax
jne 0x443054
cmp dword [edi + 0x54], 0
jne 0x442fd6
cmp dword [edi + 0x58], 0
je 0x443054
mov edx, dword [edi + 0x88]
add edx, dword [edi + 0x68]
cmp eax, edx
je 0x442fd6
mov edx, dword [ebp + 0x18]
neg ecx
mov dword [edi + 0x74], esi
sbb ecx, ecx
mov dword [edi + 0x80], edx
and ecx, 0xfffffc18
mov dword [edi + 0x70], eax
lea eax, [ecx + 1]
mov ecx, dword [ebp + 0x14]
mov dword [edi + 0x9c], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
movzx eax, byte [ebx + 1]
movzx ecx, byte [ebx + 2]
shl eax, 8
or eax, ecx
add eax, dword [edi + 0x64]
mov dword [ebp + 0x1c], eax
cmp eax, dword [edi + 0x64]
jne 0x4430a1
mov dword [ebp - 0x38], 0
jmp 0x4430b1
movzx edx, byte [eax + 3]
movzx eax, byte [eax + 4]
shl edx, 8
or edx, eax
mov dword [ebp - 0x38], edx
mov ecx, dword [edi + 0x94]
mov dword [ebp - 0x3c], ecx
lea edx, [ebp - 0x3c]
mov dword [edi + 0x94], edx
add ebx, 3
mov dword [ebp - 0x34], ebx
mov ecx, dword [edi + 0x10]
mov dword [ebp - 0x2c], ecx
cmp ecx, 0x1e
jg 0x4430df
lea eax, [ebp - 0x120]
mov dword [ebp - 0x30], eax
jmp 0x443106
lea eax, [ecx*4]
push eax
call dword [0x4a5540]
add esp, 4
mov dword [ebp - 0x30], eax
test eax, eax
jne 0x443103
mov eax, 0xfffffffa
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 0x2c]
mov edx, dword [edi + 0xc]
add ecx, ecx
add ecx, ecx
push ecx
push edx
push eax
call fcn.004131a0
mov eax, dword [ebp + 0x18]
mov ecx, dword [ebp + 0x1c]
mov edx, dword [ebp + 0x2c]
mov dword [ebp - 0x28], eax
mov al, byte [ecx]
add esp, 0xc
cmp al, 0x61
sbb ecx, ecx
and ecx, 0xfffffffe
add ecx, 2
inc edx
mov dword [ebp + 0x28], ecx
mov dword [ebp - 8], edx
mov ecx, dword [ebp - 8]
mov edx, dword [ebp + 0x28]
push ecx
mov ecx, dword [ebp + 0x24]
push edx
mov edx, dword [ebp + 0x20]
push ecx
mov ecx, dword [ebp + 0x18]
push edx
mov edx, dword [ebp + 0x14]
push edi
push ecx
mov ecx, dword [ebp + 0x10]
push edx
movzx edx, al
movzx eax, byte [edx + 0x499e18]
add eax, dword [ebp + 0x1c]
push ecx
push eax
push esi
call fcn.0043d100
add esp, 0x28
mov dword [ebp - 0x24], eax
cmp eax, 1
je 0x443230
cmp eax, 0xfffffc19
je 0x443230
test eax, eax
je 0x443196
cmp eax, 0xfffffc1e
jne 0x44320b
cmp dword [edi + 0x70], ebx
jne 0x44320b
lea ecx, [ebp - 0x3c]
mov dword [edi + 0x94], ecx
mov edx, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x30]
lea eax, [edx*4]
mov edx, dword [edi + 0xc]
push eax
push ecx
push edx
call fcn.004131a0
mov eax, dword [ebp + 0x1c]
movzx ecx, byte [eax + 1]
movzx edx, byte [eax + 2]
shl ecx, 8
or ecx, edx
add eax, ecx
mov dword [ebp + 0x1c], eax
mov al, byte [eax]
add esp, 0xc
cmp al, 0x54
je 0x443137
mov eax, dword [ebp - 0x3c]
mov dword [edi + 0x94], eax
mov eax, dword [ebp - 0x30]
lea ecx, [ebp - 0x120]
cmp eax, ecx
je case.0x444864.14
push eax
call dword [0x4a5544]
add esp, 4
mov edx, dword [ebp + 0x14]
mov dword [edi + 0x9c], edx
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 0x30]
lea edx, [ebp - 0x120]
cmp ecx, edx
je 0x4449a4
push ecx
call dword [0x4a5544]
mov eax, dword [ebp - 0x24]
add esp, 4
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0x3c]
mov dword [edi + 0x94], eax
mov eax, dword [ebp - 0x30]
lea ecx, [ebp - 0x120]
cmp eax, ecx
je 0x443250
push eax
call dword [0x4a5544]
add esp, 4
mov edx, dword [ebp + 0x14]
mov dword [edi + 0x9c], edx
mov eax, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x2c]
mov ecx, dword [ebp + 0x28]
mov edx, dword [ebp + 0x24]
inc eax
push eax
mov eax, dword [ebp - 0x20]
push ecx
mov ecx, dword [ebp + 0x18]
push edx
mov edx, dword [ebp + 0x14]
push eax
mov eax, dword [ebp + 0x10]
push edi
push ecx
mov ecx, dword [ebp + 0x1c]
push edx
push eax
push ecx
push esi
call fcn.0043d100
add esp, 0x28
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 0x18]
mov eax, dword [ebp + 0x10]
mov ecx, dword [ebp + 0x14]
mov dword [edi + 0x74], esi
mov dword [edi + 0x80], edx
mov dword [edi + 0x70], eax
mov dword [edi + 0x9c], ecx
mov eax, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [edi + 0x7c], 0
je case.0x43d16e.115
cmp esi, dword [edi + 0x78]
jbe case.0x43d16e.115
mov dword [edi + 0x5c], ecx
cmp dword [edi + 0x7c], ecx
jle case.0x43d16e.115
mov eax, dword [ebp + 0x14]
mov dword [edi + 0x9c], eax
mov eax, 0xfffffff4
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [edi + 0x7c], 0
je 0x442fd6
cmp esi, dword [edi + 0x78]
jbe 0x442fd6
mov dword [edi + 0x5c], eax
cmp dword [edi + 0x7c], eax
jle 0x442fd6
mov edx, dword [ebp + 0x14]
mov dword [edi + 0x9c], edx
mov eax, 0xfffffff4
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [edi + 0x7c], eax
je case.0x444864.14
cmp esi, dword [edi + 0x78]
jbe case.0x444864.14
mov eax, 1
mov dword [edi + 0x5c], eax
cmp dword [edi + 0x7c], eax
jle case.0x444864.14
mov ecx, dword [ebp + 0x14]
mov dword [edi + 0x9c], ecx
mov eax, 0xfffffff4
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [edi + 0x7c], eax
je 0x442fd6
cmp esi, dword [edi + 0x78]
jbe 0x442fd6
mov eax, 1
jmp 0x443305
cmp dword [edi + 0x7c], 0
je case.0x43d16e.115
cmp esi, dword [edi + 0x6c]
jb case.0x43d16e.115
cmp esi, dword [edi + 0x78]
jbe case.0x43d16e.115
mov eax, 1
mov dword [edi + 0x5c], eax
cmp dword [edi + 0x7c], eax
jle case.0x43d16e.115
mov eax, dword [ebp + 0x14]
mov dword [edi + 0x9c], eax
mov eax, 0xfffffff4
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov dword [ebp - 0x14], esi
mov dword [ebp + 0x1c], ecx
cmp ecx, eax
jge 0x443414
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x18]
push edx
push edi
push eax
push esi
push ecx
call fcn.00434962
add esp, 0x14
test eax, eax
je 0x4433ee
mov eax, dword [ebp + 0x1c]
add esi, dword [ebp - 0x10]
inc eax
mov dword [ebp + 0x1c], eax
cmp eax, dword [ebp - 0xc]
jl 0x4433c3
jmp 0x44340f
cmp dword [edi + 0x7c], 0
je 0x44340f
cmp esi, dword [edi + 0x6c]
jb 0x44340f
cmp esi, dword [edi + 0x78]
jbe 0x44340f
mov eax, 1
mov dword [edi + 0x5c], eax
cmp dword [edi + 0x7c], eax
jg 0x443311
cmp esi, dword [ebp - 0x14]
jb case.0x43d16e.115
mov eax, dword [ebp + 0x2c]
inc eax
mov dword [ebp - 8], eax
jmp 0x443420
mov ecx, dword [ebp - 8]
mov edx, dword [ebp + 0x24]
mov eax, dword [ebp + 0x20]
push ecx
mov ecx, dword [ebp + 0x18]
push 0
push edx
mov edx, dword [ebp + 0x14]
push eax
mov eax, dword [ebp + 0x10]
push edi
push ecx
push edx
push eax
push ebx
push esi
call fcn.0043d100
add esp, 0x28
test eax, eax
jne 0x4449a4
sub esi, dword [ebp - 0x10]
cmp esi, dword [ebp - 0x14]
jae 0x443420
mov ecx, dword [ebp + 0x14]
mov dword [edi + 0x9c], ecx
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [edi + 0x7c], 0
je 0x442fd6
cmp esi, dword [edi + 0x6c]
jb 0x442fd6
cmp esi, dword [edi + 0x78]
jbe 0x442fd6
mov eax, 1
jmp 0x443305
cmp dword [edi + 0x7c], 0
je case.0x444864.14
cmp esi, dword [edi + 0x78]
jbe case.0x444864.14
mov eax, 1
mov dword [edi + 0x5c], eax
cmp dword [edi + 0x7c], eax
jle case.0x444864.14
mov ecx, dword [ebp + 0x14]
mov dword [edi + 0x9c], ecx
mov eax, 0xfffffff4
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [edi + 0x7c], 0
je 0x442fd6
cmp esi, dword [edi + 0x78]
jbe 0x442fd6
mov eax, 1
jmp 0x443305
test al, 0x10
jne 0x443509
movzx ecx, byte [esi]
movzx edx, byte [esi + 1]
and eax, 0xf
shl eax, 6
and ecx, 0x3f
or eax, ecx
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 2
jmp 0x4435a7
test al, 8
jne 0x443538
movzx ecx, byte [esi]
movzx edx, byte [esi + 1]
and eax, 7
shl eax, 6
and ecx, 0x3f
or eax, ecx
movzx ecx, byte [esi + 2]
shl eax, 6
and edx, 0x3f
or eax, edx
shl eax, 6
and ecx, 0x3f
or eax, ecx
add esi, 3
jmp 0x4435a7
movzx edx, byte [esi]
movzx ecx, byte [esi + 1]
and edx, 0x3f
and ecx, 0x3f
test al, 4
jne 0x443573
and eax, 3
shl eax, 6
or eax, edx
movzx edx, byte [esi + 2]
shl eax, 6
or eax, ecx
movzx ecx, byte [esi + 3]
shl eax, 6
and edx, 0x3f
or eax, edx
shl eax, 6
and ecx, 0x3f
or eax, ecx
add esi, 4
jmp 0x4435a7
and eax, 1
shl eax, 6
or eax, edx
movzx edx, byte [esi + 2]
shl eax, 6
or eax, ecx
movzx ecx, byte [esi + 3]
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [esi + 4]
shl eax, 6
and ecx, 0x3f
or eax, ecx
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 5
cmp eax, 0xff
jbe 0x4435ba
cmp dword [ebp - 4], 0x4e
je case.0x43d16e.115
jmp 0x4435d7
mov ecx, eax
and ecx, 7
mov edx, 1
shl edx, cl
mov ecx, dword [ebp - 0x18]
shr eax, 3
mov al, byte [eax + ecx]
test al, dl
je case.0x444864.14
mov ecx, dword [ebp - 8]
mov edx, dword [ebp + 0x24]
mov eax, dword [ebp + 0x20]
inc dword [ebp + 0x1c]
push ecx
mov ecx, dword [ebp + 0x18]
push 0
push edx
mov edx, dword [ebp + 0x14]
push eax
mov eax, dword [ebp + 0x10]
push edi
push ecx
push edx
push eax
push ebx
push esi
call fcn.0043d100
add esp, 0x28
test eax, eax
je 0x43f270
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x24]
mov ecx, dword [ebp + 0x20]
mov edx, dword [ebp + 0x18]
push eax
mov eax, dword [ebp + 0x14]
push ecx
mov ecx, dword [ebp + 0x10]
push edi
push edx
push eax
push ecx
push ebx
push esi
call fcn.0043d100
add esp, 0x28
test eax, eax
jne 0x4449a4
jmp 0x443640
mov edx, dword [ebp - 0xc]
cmp dword [ebp + 0x1c], edx
jge case.0x43d16e.115
cmp esi, dword [edi + 0x6c]
jae 0x4434c6
movzx eax, byte [esi]
mov ecx, eax
and ecx, 7
mov edx, 1
shl edx, cl
mov ecx, dword [ebp - 0x18]
shr eax, 3
mov al, byte [eax + ecx]
inc esi
test al, dl
je case.0x43d16e.115
mov ecx, dword [ebp - 8]
mov edx, dword [ebp + 0x24]
mov eax, dword [ebp + 0x20]
inc dword [ebp + 0x1c]
push ecx
mov ecx, dword [ebp + 0x18]
push 0
push edx
mov edx, dword [ebp + 0x14]
push eax
mov eax, dword [ebp + 0x10]
push edi
push ecx
push edx
push eax
push ebx
push esi
call fcn.0043d100
add esp, 0x28
test eax, eax
je 0x443640
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [ebp - 0x1c], 0
mov dword [ebp - 0x14], esi
je 0x44388a
cmp edx, dword [ebp - 0xc]
jge 0x443802
mov eax, 1
mov dword [ebp - 0x20], eax
cmp esi, dword [edi + 0x6c]
jae 0x4437eb
movzx eax, byte [esi]
cmp eax, 0xc0
jb 0x4437ac
movzx edx, byte [esi + 1]
and edx, 0x3f
test al, 0x20
jne 0x4436fb
and eax, 0x1f
shl eax, 6
mov dword [ebp - 0x20], 2
jmp 0x4437aa
test al, 0x10
jne 0x443717
and eax, 0xf
shl eax, 6
or edx, eax
movzx eax, byte [esi + 2]
mov dword [ebp - 0x20], 3
jmp 0x4437a4
test al, 8
jne 0x44373c
and eax, 7
shl eax, 6
or edx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
mov dword [ebp - 0x20], 4
jmp 0x4437a4
test al, 4
jne 0x44376d
and eax, 3
shl eax, 6
or edx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
mov dword [ebp - 0x20], 5
jmp 0x4437a4
and eax, 1
shl eax, 6
or edx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
mov dword [ebp - 0x20], 6
shl edx, 6
and eax, 0x3f
or eax, edx
cmp eax, 0xff
jbe 0x4437ba
cmp ecx, 0x4e
je 0x443802
jmp 0x4437d6
mov ecx, eax
and ecx, 7
mov edx, 1
shl edx, cl
mov ecx, dword [ebp - 0x18]
shr eax, 3
mov al, byte [eax + ecx]
test al, dl
je 0x443802
mov ecx, dword [ebp - 4]
mov eax, dword [ebp + 0x1c]
add esi, dword [ebp - 0x20]
inc eax
mov dword [ebp + 0x1c], eax
cmp eax, dword [ebp - 0xc]
jl 0x4436bf
jmp 0x443802
cmp dword [edi + 0x7c], 0
je 0x443802
cmp esi, dword [edi + 0x78]
jbe 0x443802
mov dword [edi + 0x5c], eax
cmp dword [edi + 0x7c], eax
jg 0x4434b1
mov eax, dword [ebp + 0x2c]
mov edx, dword [ebp + 0x24]
mov ecx, dword [ebp + 0x18]
inc eax
push eax
push 0
push edx
mov edx, dword [ebp + 0x14]
mov dword [ebp - 8], eax
mov eax, dword [ebp + 0x20]
push eax
mov eax, dword [ebp + 0x10]
push edi
push ecx
push edx
push eax
push ebx
push esi
call fcn.0043d100
add esp, 0x28
test eax, eax
jne 0x4449a4
mov ecx, esi
dec esi
cmp ecx, dword [ebp - 0x14]
je 0x44391a
mov dl, byte [esi]
and dl, 0xc0
cmp dl, 0x80
jne 0x44385a
lea esp, [esp]
mov al, byte [esi - 1]
dec esi
and al, 0xc0
cmp al, 0x80
je 0x443850
mov ecx, dword [ebp - 8]
mov edx, dword [ebp + 0x24]
mov eax, dword [ebp + 0x20]
push ecx
mov ecx, dword [ebp + 0x18]
push 0
push edx
mov edx, dword [ebp + 0x14]
push eax
mov eax, dword [ebp + 0x10]
push edi
push ecx
push edx
push eax
push ebx
push esi
call fcn.0043d100
add esp, 0x28
test eax, eax
je 0x443833
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp edx, dword [ebp - 0xc]
jge 0x4438e0
cmp esi, dword [edi + 0x6c]
jae 0x4438bf
movzx eax, byte [esi]
mov ecx, eax
and ecx, 7
mov edx, 1
shl edx, cl
mov ecx, dword [ebp - 0x18]
shr eax, 3
mov al, byte [eax + ecx]
test al, dl
je 0x4438db
mov eax, dword [ebp + 0x1c]
inc eax
inc esi
mov dword [ebp + 0x1c], eax
cmp eax, dword [ebp - 0xc]
jl 0x44388f
jmp 0x4438db
cmp dword [edi + 0x7c], 0
je 0x4438db
cmp esi, dword [edi + 0x78]
jbe 0x4438db
mov eax, 1
mov dword [edi + 0x5c], eax
cmp dword [edi + 0x7c], eax
jg 0x4434b1
cmp esi, dword [ebp - 0x14]
jb 0x44391a
mov edx, dword [ebp + 0x2c]
inc edx
mov dword [ebp - 8], edx
mov eax, dword [ebp - 8]
mov ecx, dword [ebp + 0x24]
mov edx, dword [ebp + 0x20]
push eax
mov eax, dword [ebp + 0x18]
push 0
push ecx
mov ecx, dword [ebp + 0x14]
push edx
mov edx, dword [ebp + 0x10]
push edi
push eax
push ecx
push edx
push ebx
push esi
call fcn.0043d100
add esp, 0x28
test eax, eax
jne 0x4449a4
dec esi
cmp esi, dword [ebp - 0x14]
jae 0x4438e7
mov eax, dword [ebp + 0x14]
mov dword [edi + 0x9c], eax
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
test al, 0x10
jne 0x443952
movzx ecx, byte [esi]
movzx edx, byte [esi + 1]
and eax, 0xf
shl eax, 6
and ecx, 0x3f
or eax, ecx
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 2
jmp 0x4439f0
test al, 8
jne 0x443981
movzx ecx, byte [esi]
movzx edx, byte [esi + 1]
and eax, 7
shl eax, 6
and ecx, 0x3f
or eax, ecx
movzx ecx, byte [esi + 2]
shl eax, 6
and edx, 0x3f
or eax, edx
shl eax, 6
and ecx, 0x3f
or eax, ecx
add esi, 3
jmp 0x4439f0
movzx edx, byte [esi]
movzx ecx, byte [esi + 1]
and edx, 0x3f
and ecx, 0x3f
test al, 4
jne 0x4439bc
and eax, 3
shl eax, 6
or eax, edx
movzx edx, byte [esi + 2]
shl eax, 6
or eax, ecx
movzx ecx, byte [esi + 3]
shl eax, 6
and edx, 0x3f
or eax, edx
shl eax, 6
and ecx, 0x3f
or eax, ecx
add esi, 4
jmp 0x4439f0
and eax, 1
shl eax, 6
or eax, edx
movzx edx, byte [esi + 2]
shl eax, 6
or eax, ecx
movzx ecx, byte [esi + 3]
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [esi + 4]
shl eax, 6
and ecx, 0x3f
or eax, ecx
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 5
mov ecx, dword [ebp - 0x18]
push ecx
push eax
call fcn.00434091
add esp, 8
test eax, eax
je case.0x444864.14
mov edx, dword [ebp - 8]
mov eax, dword [ebp + 0x24]
mov ecx, dword [ebp + 0x20]
inc dword [ebp + 0x1c]
push edx
mov edx, dword [ebp + 0x18]
push 0
push eax
mov eax, dword [ebp + 0x14]
push ecx
mov ecx, dword [ebp + 0x10]
push edi
push edx
push eax
push ecx
push ebx
push esi
call fcn.0043d100
add esp, 0x28
test eax, eax
je 0x43f4d4
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [edi + 0x7c], 0
je case.0x43d16e.115
cmp esi, dword [edi + 0x78]
jbe case.0x43d16e.115
mov eax, 1
mov dword [edi + 0x5c], eax
cmp dword [edi + 0x7c], eax
jle case.0x43d16e.115
jmp 0x4432dd
mov dword [ebp - 0x14], esi
mov dword [ebp + 0x1c], ecx
cmp ecx, eax
jge 0x443bdb
mov ecx, 1
mov dword [ebp - 0x20], ecx
cmp esi, dword [edi + 0x6c]
jae 0x443bc4
cmp dword [ebp - 0x1c], 0
movzx eax, byte [esi]
je 0x443b98
cmp eax, 0xc0
jb 0x443b98
test al, 0x20
jne 0x443ab3
movzx ecx, byte [esi + 1]
and eax, 0x1f
mov dword [ebp - 0x20], 2
jmp 0x443b90
test al, 0x10
jne 0x443ade
movzx edx, byte [esi + 1]
and eax, 0xf
shl eax, 6
and edx, 0x3f
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or eax, edx
mov dword [ebp - 0x20], 3
jmp 0x443b98
test al, 8
jne 0x443b13
movzx ecx, byte [esi + 1]
movzx edx, byte [esi + 2]
and ecx, 0x3f
and eax, 7
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and edx, 0x3f
or ecx, edx
shl ecx, 6
and eax, 0x3f
mov dword [ebp - 0x20], 4
jmp 0x443b96
test al, 4
jne 0x443b53
movzx ecx, byte [esi + 1]
movzx edx, byte [esi + 2]
and eax, 3
shl eax, 6
and ecx, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
and edx, 0x3f
shl ecx, 6
or ecx, edx
movzx edx, byte [esi + 4]
and eax, 0x3f
shl ecx, 6
or eax, ecx
shl eax, 6
and edx, 0x3f
or eax, edx
mov dword [ebp - 0x20], 5
jmp 0x443b98
movzx edx, byte [esi + 1]
and eax, ecx
movzx ecx, byte [esi + 3]
and edx, 0x3f
shl eax, 6
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 4]
shl edx, 6
and ecx, 0x3f
or edx, ecx
movzx ecx, byte [esi + 5]
shl edx, 6
and eax, 0x3f
or eax, edx
mov dword [ebp - 0x20], 6
and ecx, 0x3f
shl eax, 6
or eax, ecx
mov edx, dword [ebp - 0x18]
push edx
push eax
call fcn.00434091
add esp, 8
test eax, eax
je 0x443bdb
mov eax, dword [ebp + 0x1c]
add esi, dword [ebp - 0x20]
mov ecx, 1
add eax, ecx
mov dword [ebp + 0x1c], eax
cmp eax, dword [ebp - 0xc]
jl 0x443a78
jmp 0x443bdb
cmp dword [edi + 0x7c], 0
je 0x443bdb
cmp esi, dword [edi + 0x78]
jbe 0x443bdb
mov dword [edi + 0x5c], ecx
cmp dword [edi + 0x7c], ecx
jg 0x4432dd
mov eax, dword [ebp + 0x2c]
mov ecx, dword [ebp + 0x24]
mov edx, dword [ebp + 0x20]
inc eax
push eax
push 0
push ecx
mov ecx, dword [ebp + 0x14]
push edx
mov edx, dword [ebp + 0x10]
push edi
mov dword [ebp - 8], eax
mov eax, dword [ebp + 0x18]
push eax
push ecx
push edx
push ebx
push esi
call fcn.0043d100
add esp, 0x28
test eax, eax
jne 0x4449a4
lea esp, [esp]
mov eax, esi
dec esi
cmp eax, dword [ebp - 0x14]
je 0x442fd6
cmp dword [ebp - 0x1c], 0
je 0x443c3c
mov cl, byte [esi]
and cl, 0xc0
cmp cl, 0x80
jne 0x443c3c
lea esp, [esp]
mov dl, byte [esi - 1]
dec esi
and dl, 0xc0
cmp dl, 0x80
je 0x443c30
mov eax, dword [ebp - 8]
mov ecx, dword [ebp + 0x24]
mov edx, dword [ebp + 0x20]
push eax
mov eax, dword [ebp + 0x18]
push 0
push ecx
mov ecx, dword [ebp + 0x14]
push edx
mov edx, dword [ebp + 0x10]
push edi
push eax
push ecx
push edx
push ebx
push esi
call fcn.0043d100
add esp, 0x28
test eax, eax
je 0x443c10
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [edi + 0x7c], 0
je case.0x444864.14
cmp esi, dword [edi + 0x6c]
jb case.0x444864.14
cmp esi, dword [edi + 0x78]
jbe case.0x444864.14
mov dword [edi + 0x5c], edx
cmp dword [edi + 0x7c], edx
jle case.0x444864.14
mov ecx, dword [ebp + 0x14]
mov dword [edi + 0x9c], ecx
mov eax, 0xfffffff4
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [edi + 0x7c], 0
je case.0x444864.14
cmp esi, dword [edi + 0x78]
jbe case.0x444864.14
jmp 0x4434a5
cmp dword [edi + 0x7c], 0
je case.0x444864.14
cmp esi, dword [edi + 0x6c]
jb case.0x444864.14
jmp 0x443497
mov eax, dword [ebp + 0x2c]
mov ecx, dword [ebp - 8]
mov edx, dword [ebp + 0x24]
inc eax
push eax
push 0
push edx
mov edx, dword [ebp + 0x14]
mov dword [ebp - 8], eax
mov eax, dword [ebp + 0x20]
push eax
mov eax, dword [ebp + 0x10]
push edi
mov dword [ebp + 0x1c], ecx
mov ecx, dword [ebp + 0x18]
push ecx
push edx
push eax
push ebx
push esi
call fcn.0043d100
add esp, 0x28
test eax, eax
jne 0x4449a4
mov ecx, dword [ebp - 0xc]
cmp dword [ebp + 0x1c], ecx
jge case.0x444864.14
mov edx, dword [edi + 0x6c]
sub edx, dword [ebp - 0x10]
cmp esi, edx
ja 0x443d70
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x24]
push eax
push ecx
push esi
call fcn.00411c49
add esp, 0xc
test eax, eax
jne 0x443d70
mov edx, dword [ebp - 8]
mov ecx, dword [ebp + 0x20]
add esi, dword [ebp - 0x10]
inc dword [ebp + 0x1c]
push edx
mov edx, dword [ebp + 0x18]
push eax
mov eax, dword [ebp + 0x24]
push eax
mov eax, dword [ebp + 0x14]
push ecx
mov ecx, dword [ebp + 0x10]
push edi
push edx
push eax
push ecx
push ebx
push esi
call fcn.0043d100
add esp, 0x28
test eax, eax
je 0x443d10
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [edi + 0x7c], 0
je case.0x43d16e.115
cmp esi, dword [edi + 0x6c]
jb case.0x43d16e.115
cmp esi, dword [edi + 0x78]
jbe case.0x43d16e.115
mov eax, 1
mov dword [edi + 0x5c], eax
cmp dword [edi + 0x7c], eax
jle case.0x43d16e.115
jmp 0x4432dd
cmp dword [edi + 0x7c], 0
je case.0x43d16e.115
cmp esi, dword [edi + 0x78]
jbe case.0x43d16e.115
mov dword [edi + 0x5c], edx
cmp dword [edi + 0x7c], edx
jle case.0x43d16e.115
jmp 0x4432dd
mov eax, dword [ebp - 8]
mov ecx, dword [ebp + 0x24]
mov edx, dword [ebp + 0x20]
mov dword [ebp + 0x1c], eax
mov eax, dword [ebp + 0x2c]
inc eax
push eax
push 0
push ecx
mov ecx, dword [ebp + 0x14]
push edx
mov edx, dword [ebp + 0x10]
push edi
mov dword [ebp - 8], eax
mov eax, dword [ebp + 0x18]
push eax
push ecx
push edx
push ebx
push esi
call fcn.0043d100
add esp, 0x28
test eax, eax
jne 0x4449a4
lea ecx, [ecx]
mov eax, dword [ebp - 0xc]
cmp dword [ebp + 0x1c], eax
jge case.0x43d16e.115
cmp esi, dword [edi + 0x6c]
jae 0x4434c6
movzx ecx, byte [esi]
mov edx, dword [edi + 0x30]
movzx eax, byte [ecx + edx]
inc esi
cmp dword [ebp - 4], eax
jne case.0x43d16e.115
mov ecx, dword [ebp - 8]
mov edx, dword [ebp + 0x24]
mov eax, dword [ebp + 0x20]
inc dword [ebp + 0x1c]
push ecx
mov ecx, dword [ebp + 0x18]
push 0
push edx
mov edx, dword [ebp + 0x14]
push eax
mov eax, dword [ebp + 0x10]
push edi
push ecx
push edx
push eax
push ebx
push esi
call fcn.0043d100
add esp, 0x28
test eax, eax
je 0x443e00
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x2c]
mov ecx, dword [ebp + 0x20]
mov edx, dword [ebp + 0x18]
inc eax
push eax
push 0
mov dword [ebp - 8], eax
mov eax, dword [ebp + 0x24]
push eax
mov eax, dword [ebp + 0x14]
push ecx
mov ecx, dword [ebp + 0x10]
push edi
push edx
push eax
push ecx
push ebx
push esi
call fcn.0043d100
add esp, 0x28
test eax, eax
jne 0x4449a4
lea ecx, [ecx]
mov edx, dword [ebp - 0xc]
cmp dword [ebp + 0x1c], edx
jge case.0x43d16e.115
cmp esi, dword [edi + 0x6c]
jae 0x4434c6
movzx eax, byte [esi]
inc esi
cmp dword [ebp - 4], eax
jne case.0x43d16e.115
mov ecx, dword [ebp - 8]
mov edx, dword [ebp + 0x24]
mov eax, dword [ebp + 0x20]
inc dword [ebp + 0x1c]
push ecx
mov ecx, dword [ebp + 0x18]
push 0
push edx
mov edx, dword [ebp + 0x14]
push eax
mov eax, dword [ebp + 0x10]
push edi
push ecx
push edx
push eax
push ebx
push esi
call fcn.0043d100
add esp, 0x28
test eax, eax
je 0x443e90
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov dword [ebp + 0x1c], eax
mov eax, dword [ebp + 0x2c]
inc eax
cmp dword [ebp - 0x1c], 0
push eax
mov dword [ebp - 8], eax
push 0
je 0x444071
mov eax, dword [ebp + 0x24]
mov ecx, dword [ebp + 0x20]
mov edx, dword [ebp + 0x18]
push eax
mov eax, dword [ebp + 0x14]
push ecx
mov ecx, dword [ebp + 0x10]
push edi
push edx
push eax
push ecx
push ebx
push esi
call fcn.0043d100
add esp, 0x28
test eax, eax
jne 0x4449a4
mov edx, dword [ebp - 0xc]
cmp dword [ebp + 0x1c], edx
jge 0x442fd6
cmp esi, dword [edi + 0x6c]
jae 0x44348d
movzx eax, byte [esi]
inc esi
cmp eax, 0xc0
jb 0x444023
test al, 0x20
jne 0x443f5f
movzx ecx, byte [esi]
and eax, 0x1f
shl eax, 6
and ecx, 0x3f
or eax, ecx
inc esi
jmp 0x444023
test al, 0x10
jne 0x443f85
movzx edx, byte [esi]
movzx ecx, byte [esi + 1]
and eax, 0xf
shl eax, 6
and edx, 0x3f
or eax, edx
shl eax, 6
and ecx, 0x3f
or eax, ecx
add esi, 2
jmp 0x444023
test al, 8
jne 0x443fb4
movzx edx, byte [esi]
movzx ecx, byte [esi + 1]
and eax, 7
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [esi + 2]
shl eax, 6
and ecx, 0x3f
or eax, ecx
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 3
jmp 0x444023
movzx ecx, byte [esi]
movzx edx, byte [esi + 1]
and ecx, 0x3f
and edx, 0x3f
test al, 4
jne 0x443fef
and eax, 3
shl eax, 6
or eax, ecx
movzx ecx, byte [esi + 2]
shl eax, 6
or eax, edx
movzx edx, byte [esi + 3]
shl eax, 6
and ecx, 0x3f
or eax, ecx
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 4
jmp 0x444023
and eax, 1
shl eax, 6
or eax, ecx
movzx ecx, byte [esi + 2]
shl eax, 6
or eax, edx
movzx edx, byte [esi + 3]
shl eax, 6
and ecx, 0x3f
or eax, ecx
movzx ecx, byte [esi + 4]
shl eax, 6
and edx, 0x3f
or eax, edx
shl eax, 6
and ecx, 0x3f
or eax, ecx
add esi, 5
cmp eax, 0x100
jae 0x444031
mov edx, dword [edi + 0x30]
movzx eax, byte [eax + edx]
cmp dword [ebp - 4], eax
je 0x442fd6
mov eax, dword [ebp - 8]
mov ecx, dword [ebp + 0x24]
mov edx, dword [ebp + 0x20]
inc dword [ebp + 0x1c]
push eax
mov eax, dword [ebp + 0x18]
push 0
push ecx
mov ecx, dword [ebp + 0x14]
push edx
mov edx, dword [ebp + 0x10]
push edi
push eax
push ecx
push edx
push ebx
push esi
call fcn.0043d100
add esp, 0x28
test eax, eax
je 0x443f23
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp + 0x24]
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x18]
push ecx
mov ecx, dword [ebp + 0x14]
push edx
mov edx, dword [ebp + 0x10]
push edi
push eax
push ecx
push edx
push ebx
push esi
call fcn.0043d100
add esp, 0x28
test eax, eax
jne 0x4449a4
jmp 0x4440a0
mov eax, dword [ebp - 0xc]
cmp dword [ebp + 0x1c], eax
jge case.0x43d16e.115
cmp esi, dword [edi + 0x6c]
jae 0x4434c6
movzx ecx, byte [esi]
mov edx, dword [edi + 0x30]
movzx eax, byte [ecx + edx]
inc esi
cmp dword [ebp - 4], eax
je case.0x43d16e.115
mov ecx, dword [ebp - 8]
mov edx, dword [ebp + 0x24]
mov eax, dword [ebp + 0x20]
inc dword [ebp + 0x1c]
push ecx
mov ecx, dword [ebp + 0x18]
push 0
push edx
mov edx, dword [ebp + 0x14]
push eax
mov eax, dword [ebp + 0x10]
push edi
push ecx
push edx
push eax
push ebx
push esi
call fcn.0043d100
add esp, 0x28
test eax, eax
je 0x4440a0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [edi + 0x7c], 0
je 0x442fd6
cmp esi, dword [edi + 0x78]
jbe 0x442fd6
mov dword [edi + 0x5c], edx
cmp dword [edi + 0x7c], edx
jmp 0x44330b
mov dword [ebp + 0x1c], eax
mov eax, dword [ebp + 0x2c]
inc eax
cmp dword [ebp - 0x1c], 0
push eax
mov dword [ebp - 8], eax
push 0
je 0x4442a0
mov edx, dword [ebp + 0x24]
mov eax, dword [ebp + 0x20]
mov ecx, dword [ebp + 0x18]
push edx
mov edx, dword [ebp + 0x14]
push eax
mov eax, dword [ebp + 0x10]
push edi
push ecx
push edx
push eax
push ebx
push esi
call fcn.0043d100
add esp, 0x28
test eax, eax
jne 0x4449a4
jmp 0x444160
mov ecx, dword [ebp - 0xc]
cmp dword [ebp + 0x1c], ecx
jge 0x442fd6
cmp esi, dword [edi + 0x6c]
jae 0x44348d
movzx eax, byte [esi]
inc esi
cmp eax, 0xc0
jb 0x444260
test al, 0x20
jne 0x44419c
movzx edx, byte [esi]
and eax, 0x1f
shl eax, 6
and edx, 0x3f
or eax, edx
inc esi
jmp 0x444260
test al, 0x10
jne 0x4441c2
movzx ecx, byte [esi]
movzx edx, byte [esi + 1]
and eax, 0xf
shl eax, 6
and ecx, 0x3f
or eax, ecx
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 2
jmp 0x444260
test al, 8
jne 0x4441f1
movzx ecx, byte [esi]
movzx edx, byte [esi + 1]
and eax, 7
shl eax, 6
and ecx, 0x3f
or eax, ecx
movzx ecx, byte [esi + 2]
shl eax, 6
and edx, 0x3f
or eax, edx
shl eax, 6
and ecx, 0x3f
or eax, ecx
add esi, 3
jmp 0x444260
movzx edx, byte [esi]
movzx ecx, byte [esi + 1]
and edx, 0x3f
and ecx, 0x3f
test al, 4
jne 0x44422c
and eax, 3
shl eax, 6
or eax, edx
movzx edx, byte [esi + 2]
shl eax, 6
or eax, ecx
movzx ecx, byte [esi + 3]
shl eax, 6
and edx, 0x3f
or eax, edx
shl eax, 6
and ecx, 0x3f
or eax, ecx
add esi, 4
jmp 0x444260
and eax, 1
shl eax, 6
or eax, edx
movzx edx, byte [esi + 2]
shl eax, 6
or eax, ecx
movzx ecx, byte [esi + 3]
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [esi + 4]
shl eax, 6
and ecx, 0x3f
or eax, ecx
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 5
cmp dword [ebp - 4], eax
je 0x442fd6
mov eax, dword [ebp - 8]
mov ecx, dword [ebp + 0x24]
mov edx, dword [ebp + 0x20]
inc dword [ebp + 0x1c]
push eax
mov eax, dword [ebp + 0x18]
push 0
push ecx
mov ecx, dword [ebp + 0x14]
push edx
mov edx, dword [ebp + 0x10]
push edi
push eax
push ecx
push edx
push ebx
push esi
call fcn.0043d100
add esp, 0x28
test eax, eax
je 0x444160
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp + 0x24]
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x18]
push ecx
mov ecx, dword [ebp + 0x14]
push edx
mov edx, dword [ebp + 0x10]
push edi
push eax
push ecx
push edx
push ebx
push esi
call fcn.0043d100
add esp, 0x28
test eax, eax
jne 0x4449a4
jmp 0x4442d0
mov eax, dword [ebp - 0xc]
cmp dword [ebp + 0x1c], eax
jge case.0x444864.14
cmp esi, dword [edi + 0x6c]
jae 0x443a3c
movzx ecx, byte [esi]
inc esi
cmp dword [ebp - 4], ecx
je case.0x444864.14
mov edx, dword [ebp - 8]
mov eax, dword [ebp + 0x24]
mov ecx, dword [ebp + 0x20]
inc dword [ebp + 0x1c]
push edx
mov edx, dword [ebp + 0x18]
push 0
push eax
mov eax, dword [ebp + 0x14]
push ecx
mov ecx, dword [ebp + 0x10]
push edi
push edx
push eax
push ecx
push ebx
push esi
call fcn.0043d100
add esp, 0x28
test eax, eax
je 0x4442d0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, 0xfffffff2
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [ebp - 0x1c], 0
je 0x444793
mov eax, dword [ebp - 8]
mov ecx, dword [ebp + 0x24]
mov edx, dword [ebp + 0x20]
mov dword [ebp + 0x1c], eax
mov eax, dword [ebp + 0x2c]
inc eax
push eax
push 0
push ecx
mov ecx, dword [ebp + 0x14]
push edx
mov edx, dword [ebp + 0x10]
push edi
mov dword [ebp - 8], eax
mov eax, dword [ebp + 0x18]
push eax
push ecx
push edx
push ebx
push esi
call fcn.0043d100
add esp, 0x28
test eax, eax
jne 0x4449a4
mov eax, dword [ebp - 0xc]
cmp dword [ebp + 0x1c], eax
jge 0x442fd6
cmp esi, dword [edi + 0x6c]
jae 0x44348d
cmp dword [ebp - 0x10], 0xc
jne 0x4443db
mov eax, dword [edi + 0x18]
test eax, eax
je 0x4443b4
mov ecx, dword [ebp - 0x1c]
push ecx
mov ecx, dword [edi + 0x6c]
lea edx, [edi + 0x1c]
push edx
push ecx
push eax
push esi
call fcn.00434749
add esp, 0x14
test eax, eax
jne 0x442fd6
jmp 0x4443db
mov edx, dword [edi + 0x6c]
sub edx, dword [edi + 0x1c]
cmp esi, edx
ja 0x4443db
mov al, byte [esi]
cmp al, byte [edi + 0x2c]
jne 0x4443db
cmp dword [edi + 0x1c], 1
je 0x442fd6
mov cl, byte [esi + 1]
cmp cl, byte [edi + 0x2d]
je 0x442fd6
movzx eax, byte [esi]
inc esi
cmp eax, 0xc0
jb 0x4444c6
test al, 0x20
jne 0x444402
movzx edx, byte [esi]
and eax, 0x1f
shl eax, 6
and edx, 0x3f
or eax, edx
inc esi
jmp 0x4444c6
test al, 0x10
jne 0x444428
movzx ecx, byte [esi]
movzx edx, byte [esi + 1]
and eax, 0xf
shl eax, 6
and ecx, 0x3f
or eax, ecx
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 2
jmp 0x4444c6
test al, 8
jne 0x444457
movzx ecx, byte [esi]
movzx edx, byte [esi + 1]
and eax, 7
shl eax, 6
and ecx, 0x3f
or eax, ecx
movzx ecx, byte [esi + 2]
shl eax, 6
and edx, 0x3f
or eax, edx
shl eax, 6
and ecx, 0x3f
or eax, ecx
add esi, 3
jmp 0x4444c6
movzx edx, byte [esi]
movzx ecx, byte [esi + 1]
and edx, 0x3f
and ecx, 0x3f
test al, 4
jne 0x444492
and eax, 3
shl eax, 6
or eax, edx
movzx edx, byte [esi + 2]
shl eax, 6
or eax, ecx
movzx ecx, byte [esi + 3]
shl eax, 6
and edx, 0x3f
or eax, edx
shl eax, 6
and ecx, 0x3f
or eax, ecx
add esi, 4
jmp 0x4444c6
and eax, 1
shl eax, 6
or eax, edx
movzx edx, byte [esi + 2]
shl eax, 6
or eax, ecx
movzx ecx, byte [esi + 3]
shl eax, 6
and edx, 0x3f
or eax, edx
movzx edx, byte [esi + 4]
shl eax, 6
and ecx, 0x3f
or eax, ecx
shl eax, 6
and edx, 0x3f
or eax, edx
add esi, 5
mov ecx, dword [ebp - 0x10]
add ecx, 0xfffffffa
cmp ecx, 0xf
ja case.0x44484a.15
jmp dword [ecx*4 + 0x444d10]
cmp eax, 0xd
ja 0x444515
je 0x4444fd
cmp eax, 0xa
je case.0x4444d5.12
jbe case.0x43d16e.115
cmp eax, 0xc
ja case.0x43d16e.115
jmp 0x444532
cmp esi, dword [edi + 0x6c]
jae case.0x4444d5.12
cmp byte [esi], 0xa
jne case.0x4444d5.12
inc esi
jmp case.0x4444d5.12
cmp eax, 0x85
je 0x444532
cmp eax, 0x2027
jbe case.0x43d16e.115
cmp eax, 0x2029
ja case.0x43d16e.115
cmp dword [edi + 0x60], 0
jne case.0x444864.14
jmp case.0x4444d5.12
cmp eax, 0x180e
ja 0x444582
je 0x442fd6
cmp eax, 0xa0
ja 0x444572
je 0x442fd6
cmp eax, 9
je 0x442fd6
cmp eax, 0x20
je 0x442fd6
jmp case.0x4444d5.12
cmp eax, 0x1680
je 0x442fd6
jmp case.0x4444d5.12
cmp eax, 0x205f
ja 0x4445b5
je 0x442fd6
cmp eax, 0x2000
jb case.0x4444d5.12
cmp eax, 0x200a
jbe 0x442fd6
cmp eax, 0x202f
je 0x442fd6
jmp case.0x4444d5.12
cmp eax, 0x3000
je 0x442fd6
jmp case.0x4444d5.12
cmp eax, 0x180e
ja 0x444606
je case.0x4444d5.12
cmp eax, 0xa0
ja 0x4445f6
je case.0x4444d5.12
cmp eax, 9
je case.0x4444d5.12
cmp eax, 0x20
jne case.0x43d16e.115
jmp case.0x4444d5.12
cmp eax, 0x1680
jne case.0x43d16e.115
jmp case.0x4444d5.12
cmp eax, 0x205f
ja 0x444639
je case.0x4444d5.12
cmp eax, 0x2000
jb case.0x43d16e.115
cmp eax, 0x200a
jbe case.0x4444d5.12
cmp eax, 0x202f
jne case.0x43d16e.115
jmp case.0x4444d5.12
cmp eax, 0x3000
jne case.0x43d16e.115
jmp case.0x4444d5.12
cmp eax, 0x85
ja 0x44466d
je case.0x444864.14
cmp eax, 0xa
jb case.0x4444d5.12
cmp eax, 0xd
jbe case.0x444864.14
jmp case.0x4444d5.12
cmp eax, 0x2028
jb case.0x4444d5.12
cmp eax, 0x2029
jbe case.0x444864.14
jmp case.0x4444d5.12
cmp eax, 0x85
ja 0x4446ac
je case.0x4444d5.12
cmp eax, 0xa
jb 0x442fd6
cmp eax, 0xd
ja 0x442fd6
jmp case.0x4444d5.12
cmp eax, 0x2028
jb 0x442fd6
cmp eax, 0x2029
ja 0x442fd6
jmp case.0x4444d5.12
cmp eax, 0x100
jae case.0x4444d5.12
mov ecx, dword [edi + 0x34]
test byte [eax + ecx], 4
jne case.0x43d16e.115
jmp case.0x4444d5.12
cmp eax, 0x100
jae case.0x444864.14
mov edx, dword [edi + 0x34]
test byte [eax + edx], 4
je case.0x444864.14
jmp case.0x4444d5.12
cmp eax, 0x100
jae case.0x4444d5.12
mov ecx, dword [edi + 0x34]
test byte [eax + ecx], 1
jne 0x442fd6
jmp case.0x4444d5.12
cmp eax, 0x100
jae case.0x43d16e.115
mov edx, dword [edi + 0x34]
test byte [eax + edx], 1
je case.0x43d16e.115
jmp case.0x4444d5.12
cmp eax, 0x100
jae case.0x4444d5.12
mov ecx, dword [edi + 0x34]
test byte [eax + ecx], 0x10
jne case.0x444864.14
jmp case.0x4444d5.12
cmp eax, 0x100
jae 0x442fd6
mov edx, dword [edi + 0x34]
test byte [eax + edx], 0x10
je 0x442fd6
mov eax, dword [ebp - 8]
mov ecx, dword [ebp + 0x24]
mov edx, dword [ebp + 0x20]
inc dword [ebp + 0x1c]
push eax
mov eax, dword [ebp + 0x18]
push 0
push ecx
mov ecx, dword [ebp + 0x14]
push edx
mov edx, dword [ebp + 0x10]
push edi
push eax
push ecx
push edx
push ebx
push esi
call fcn.0043d100
add esp, 0x28
test eax, eax
je 0x444372
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x2c]
mov ecx, dword [ebp - 8]
mov edx, dword [ebp + 0x24]
inc eax
push eax
push 0
push edx
mov edx, dword [ebp + 0x14]
mov dword [ebp - 8], eax
mov eax, dword [ebp + 0x20]
push eax
mov eax, dword [ebp + 0x10]
push edi
mov dword [ebp + 0x1c], ecx
mov ecx, dword [ebp + 0x18]
push ecx
push edx
push eax
push ebx
push esi
call fcn.0043d100
add esp, 0x28
test eax, eax
jne 0x4449a4
lea ebx, [ebx]
mov ecx, dword [ebp - 0xc]
cmp dword [ebp + 0x1c], ecx
jge 0x442fd6
cmp esi, dword [edi + 0x6c]
jae 0x44348d
cmp dword [ebp - 0x10], 0xc
jne 0x444837
mov eax, dword [edi + 0x18]
test eax, eax
je 0x444810
mov ecx, dword [edi + 0x6c]
push 0
lea edx, [edi + 0x1c]
push edx
push ecx
push eax
push esi
call fcn.00434749
add esp, 0x14
test eax, eax
jne 0x442fd6
jmp 0x444837
mov edx, dword [edi + 0x6c]
sub edx, dword [edi + 0x1c]
cmp esi, edx
ja 0x444837
mov al, byte [esi]
cmp al, byte [edi + 0x2c]
jne 0x444837
cmp dword [edi + 0x1c], 1
je 0x442fd6
mov cl, byte [esi + 1]
cmp cl, byte [edi + 0x2d]
je 0x442fd6
mov ecx, dword [ebp - 0x10]
movzx eax, byte [esi]
add ecx, 0xfffffffa
inc esi
cmp ecx, 0xf
ja case.0x44484a.15
jmp dword [ecx*4 + 0x444d50]
add eax, 0xfffffff6
cmp eax, 0x7b
ja case.0x444864.14
movzx edx, byte [eax + 0x444da0]
jmp dword [edx*4 + 0x444d90]
cmp esi, dword [edi + 0x6c]
jae case.0x44484a.12
cmp byte [esi], 0xa
jne case.0x44484a.12
inc esi
jmp case.0x44484a.12
cmp dword [edi + 0x60], 0
jne case.0x43d16e.115
jmp case.0x44484a.12
cmp eax, 9
je 0x442fd6
cmp eax, 0x20
je 0x442fd6
cmp eax, 0xa0
je 0x442fd6
jmp case.0x44484a.12
cmp eax, 9
je case.0x44484a.12
cmp eax, 0x20
je case.0x44484a.12
cmp eax, 0xa0
jne case.0x43d16e.115
jmp case.0x44484a.12
cmp eax, 0xa
jb case.0x44484a.12
cmp eax, 0xd
jbe case.0x444864.14
cmp eax, 0x85
je case.0x444864.14
jmp case.0x44484a.12
cmp eax, 0xa
jb 0x442fd6
cmp eax, 0xd
jbe case.0x44484a.12
cmp eax, 0x85
jne 0x442fd6
jmp case.0x44484a.12
mov ecx, dword [edi + 0x34]
test byte [eax + ecx], 4
jne case.0x43d16e.115
jmp case.0x44484a.12
mov edx, dword [edi + 0x34]
test byte [eax + edx], 4
je case.0x444864.14
jmp case.0x44484a.12
mov ecx, dword [edi + 0x34]
test byte [eax + ecx], 1
jne 0x442fd6
jmp case.0x44484a.12
mov edx, dword [edi + 0x34]
test byte [eax + edx], 1
je case.0x43d16e.115
jmp case.0x44484a.12
mov ecx, dword [edi + 0x34]
test byte [eax + ecx], 0x10
jne case.0x444864.14
jmp case.0x44484a.12
mov edx, dword [edi + 0x34]
test byte [eax + edx], 0x10
je 0x442fd6
mov eax, dword [ebp - 8]
mov ecx, dword [ebp + 0x24]
mov edx, dword [ebp + 0x20]
inc dword [ebp + 0x1c]
push eax
mov eax, dword [ebp + 0x18]
push 0
push ecx
mov ecx, dword [ebp + 0x14]
push edx
mov edx, dword [ebp + 0x10]
push edi
push eax
push ecx
push edx
push ebx
push esi
call fcn.0043d100
add esp, 0x28
test eax, eax
je 0x4447d0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, 0xfffffffb
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret