Function at 0x10009860
Capabilities:
Parse credit card information

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x4f00
call fcn.100218d0
mov eax, dword [0x1004b800]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x4e60], eax
mov eax, dword [ebp + 0x10]
mov ecx, dword [ebp + 0x24]
mov dword [ebp - 0x4e74], eax
add ecx, 0xfffffffe
mov eax, dword [ebp + 0x18]
mov dword [ebp - 0x4ea0], eax
push ebx
push esi
mov esi, dword [ebp + 8]
inc dword [ebp + 0x28]
and dword [ebp + 0x1c], 0xfffffffe
push edi
mov eax, dword [esi + 4]
mov dword [ebp - 0x4e58], eax
mov eax, dword [esi + 8]
mov dword [ebp - 0x4e78], eax
mov eax, dword [esi]
mov dword [ebp - 0x4e68], eax
mov eax, dword [esi + 0x1c]
shr eax, 0xb
and eax, 1
mov edi, dword [ebp + 0x20]
mov dword [ebp - 0x4e54], eax
mov eax, 0x2aaaaaab
imul ecx
mov eax, 0x2aaaaaab
mov dword [ebp - 0x4e98], edi
mov ecx, edx
mov dword [ebp - 0x4e48], esi
shr ecx, 0x1f
add ecx, edx
mov dword [ebp - 0x4e8c], 0
mov dword [ebp - 0x4e70], 0xffffffff
lea ecx, [ecx + ecx*2]
add ecx, ecx
imul ecx
mov eax, dword [esi + 0x10]
lea ecx, [edi + 8]
mov ebx, edx
mov dword [ebp - 0x4e5c], eax
shr ebx, 0x1f
xor edi, edi
add ebx, edx
mov dword [ebp - 0x4e88], ecx
mov dword [ebp - 0x4e38], ebx
mov dword [ebp - 0x4e2c], edi
lea eax, [ebx + ebx*2]
lea eax, [ecx + eax*4]
mov dword [ebp - 0x4e9c], eax
mov edx, eax
mov eax, dword [ebp - 0x4e60]
mov al, byte [eax]
cmp al, 0x85
je 0x1000995b
cmp al, 0x8a
je 0x1000995b
cmp al, 0x86
je 0x1000995b
lea ecx, [edi + 3]
cmp al, 0x8b
jne 0x10009960
mov ecx, 5
mov ebx, dword [ebp - 0x4e60]
cmp byte [ebx + ecx], 0x7c
mov ebx, dword [ebp - 0x4e38]
jne 0x10009aa7
mov edx, dword [ebp - 0x4e60]
xor edi, edi
nop
movzx ecx, byte [edx + 4]
movzx eax, byte [edx + 5]
shl ecx, 8
or ecx, eax
movzx eax, byte [edx + 2]
cmp ecx, edi
cmovle ecx, edi
mov edi, ecx
movzx ecx, byte [edx + 1]
shl ecx, 8
or ecx, eax
add edx, ecx
cmp byte [edx], 0x77
je 0x10009980
cmp dword [ebp - 0x4e54], 0
je 0x100099ec
mov ecx, dword [ebp - 0x4e74]
xor esi, esi
test edi, edi
jle 0x10009a15
mov edx, dword [ebp - 0x4e58]
cmp ecx, edx
jbe 0x10009a15
dec ecx
mov dword [ebp - 0x4e74], ecx
cmp ecx, edx
jbe 0x100099e5
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x100099df
dec ecx
cmp ecx, edx
ja 0x100099d2
mov dword [ebp - 0x4e74], ecx
inc esi
cmp esi, edi
jl 0x100099c3
jmp 0x10009a15
mov eax, dword [ebp - 0x4e74]
mov esi, edi
mov ecx, eax
sub eax, dword [ebp - 0x4e58]
sub ecx, edi
cmp ecx, dword [ebp - 0x4e58]
mov ecx, dword [ebp - 0x4e74]
cmovb esi, eax
sub ecx, esi
mov dword [ebp - 0x4e74], ecx
mov eax, dword [ebp - 0x4e48]
cmp ecx, dword [eax + 0xc]
jae 0x10009a23
mov dword [eax + 0xc], ecx
mov edx, dword [ebp - 0x4e9c]
mov eax, dword [ebp - 0x4e60]
add edx, 8
movzx ecx, byte [eax + 4]
movzx eax, byte [eax + 5]
mov edi, dword [ebp - 0x4e2c]
shl ecx, 8
or ecx, eax
cmp ecx, esi
jg 0x10009a7c
mov eax, edi
inc edi
mov dword [ebp - 0x4e2c], edi
cmp eax, ebx
jge 0x1000d16f
mov eax, dword [ebp - 0x4e68]
sub eax, dword [ebp - 0x4e60]
sub eax, 6
mov dword [edx - 4], 0
mov dword [edx - 8], eax
mov eax, esi
sub eax, ecx
mov dword [edx], eax
add edx, 0xc
mov eax, dword [ebp - 0x4e60]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov eax, dword [ebp - 0x4e60]
add eax, ecx
mov dword [ebp - 0x4e60], eax
cmp byte [eax], 0x77
je 0x10009a32
jmp 0x10009b6f
cmp dword [ebp + 0x28], 1
mov ecx, dword [ebp - 0x4e60]
mov dword [ebp - 0x4e60], ecx
jne 0x10009b11
test dword [esi + 0x18], 0x20000
je 0x10009b11
mov eax, ecx
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov eax, dword [ebp - 0x4e60]
add eax, ecx
mov dword [ebp - 0x4e60], eax
cmp byte [eax], 0x77
je 0x10009ac4
mov esi, dword [ebp - 0x4e98]
mov ebx, dword [ebp - 0x4e88]
cmp dword [esi], 0
mov edi, dword [esi + 4]
jne 0x10009b7b
lea eax, [edi + edi*2]
shl eax, 2
push eax
mov eax, edx
push ebx
push eax
call fcn.10022800
add esp, 0xc
jmp 0x10009b7b
cmp al, 0x85
je 0x10009b26
cmp al, 0x8a
je 0x10009b26
cmp al, 0x86
je 0x10009b26
mov ecx, 3
cmp al, 0x8b
jne 0x10009b2b
mov ecx, 5
mov esi, dword [ebp - 0x4e60]
mov eax, edi
inc edi
cmp eax, ebx
jge 0x1000d16f
sub ecx, dword [ebp - 0x4e68]
add ecx, esi
mov dword [edx + 4], 0
mov dword [edx], ecx
add edx, 0xc
movzx ecx, byte [esi + 1]
movzx eax, byte [esi + 2]
shl ecx, 8
or ecx, eax
add esi, ecx
mov ecx, 3
mov dword [ebp - 0x4e60], esi
cmp byte [esi], 0x77
je 0x10009b31
mov esi, dword [ebp - 0x4e98]
mov ebx, dword [ebp - 0x4e88]
mov dword [esi], 0
mov esi, dword [ebp - 0x4e74]
mov eax, dword [ebp - 0x4e8c]
mov edx, edi
mov dword [ebp - 0x4e64], eax
mov ecx, ebx
mov eax, dword [ebp - 0x4e98]
mov ebx, dword [ebp - 0x4e9c]
mov dword [ebp - 0x4e40], esi
mov dword [ebp - 0x4ea4], 0
xor dword [eax], 1
mov dword [eax + 4], edx
lea eax, [edx + edx*2]
lea edi, [ebx + eax*4]
mov dword [ebp - 0x4e84], 0
mov dword [ebp - 0x4e8c], 0
mov dword [ebp - 0x4e30], ecx
mov dword [ebp - 0x4e88], ebx
mov dword [ebp - 0x4e9c], ecx
mov dword [ebp - 0x4e28], edx
mov dword [ebp - 0x4e2c], 0
mov dword [ebp - 0x4e34], edi
cmp esi, dword [ebp - 0x4e78]
jae 0x10009d5d
cmp dword [ebp - 0x4e54], 0
movzx ebx, byte [esi]
mov dword [ebp - 0x4e50], 1
mov dword [ebp - 0x4e44], ebx
je 0x10009d70
cmp ebx, 0xc0
jb 0x10009d70
test bl, 0x20
jne 0x10009c56
movzx eax, byte [esi + 1]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov dword [ebp - 0x4e50], 2
jmp 0x10009d6a
test bl, 0x10
jne 0x10009c8b
movzx ecx, byte [esi + 1]
and ebx, 0xf
movzx eax, byte [esi + 2]
and ecx, 0x3f
shl ebx, 6
and eax, 0x3f
or ebx, ecx
mov dword [ebp - 0x4e50], 3
mov ecx, dword [ebp - 0x4e30]
shl ebx, 6
or ebx, eax
jmp 0x10009d6a
test bl, 8
jne 0x10009ccc
movzx ecx, byte [esi + 1]
and ebx, 7
movzx eax, byte [esi + 2]
and ecx, 0x3f
shl ebx, 6
and eax, 0x3f
or ebx, ecx
mov dword [ebp - 0x4e50], 4
mov ecx, dword [ebp - 0x4e30]
shl ebx, 6
or ebx, eax
movzx eax, byte [esi + 3]
shl ebx, 6
and eax, 0x3f
or ebx, eax
jmp 0x10009d6a
movzx eax, byte [esi + 1]
movzx ecx, byte [esi + 2]
and eax, 0x3f
movzx edx, byte [esi + 3]
and ecx, 0x3f
movzx esi, byte [esi + 4]
and edx, 0x3f
and esi, 0x3f
test bl, 4
jne 0x10009d1c
and ebx, 3
mov dword [ebp - 0x4e50], 5
shl ebx, 6
or ebx, eax
shl ebx, 6
or ebx, ecx
mov ecx, dword [ebp - 0x4e30]
shl ebx, 6
or ebx, edx
mov edx, dword [ebp - 0x4e28]
shl ebx, 6
or ebx, esi
jmp 0x10009d6a
and ebx, 1
mov dword [ebp - 0x4e50], 6
shl ebx, 6
or ebx, eax
mov eax, dword [ebp - 0x4e40]
shl ebx, 6
or ebx, ecx
mov ecx, dword [ebp - 0x4e30]
shl ebx, 6
movzx eax, byte [eax + 5]
or ebx, edx
mov edx, dword [ebp - 0x4e28]
and eax, 0x3f
shl ebx, 6
or ebx, esi
shl ebx, 6
or ebx, eax
jmp 0x10009d6a
mov dword [ebp - 0x4e50], 0
or ebx, 0xffffffff
mov dword [ebp - 0x4e44], ebx
xor edi, edi
mov dword [ebp - 0x4e90], edi
test edx, edx
jle 0x1000d567
mov eax, ebx
and eax, 7
mov dword [ebp - 0x4eec], eax
jmp 0x10009d96
mov edi, dword [ebp - 0x4e90]
mov ebx, dword [ebp - 0x4e88]
lea eax, [edi + edi*2]
mov esi, dword [ebx + eax*4]
lea ebx, [ebx + eax*4]
mov dword [ebp - 0x4e6c], ebx
mov dword [ebp - 0x4e80], 0
mov dword [ebp - 0x4e3c], esi
test esi, esi
jns 0x10009e1e
cmp dword [ebx + 8], 0
jle 0x10009e14
mov edi, dword [ebp - 0x4e2c]
mov eax, edi
inc edi
mov dword [ebp - 0x4e2c], edi
cmp eax, dword [ebp - 0x4e38]
jge 0x1000d16f
mov dword [ecx], esi
mov eax, dword [ebx + 4]
mov dword [ecx + 4], eax
mov eax, dword [ebx + 8]
dec eax
mov dword [ecx + 8], eax
add ecx, 0xc
cmp dword [ebp - 0x4e64], 0
mov dword [ebp - 0x4e30], ecx
je 0x1000a39e
mov dword [ebp - 0x4e8c], 1
jmp 0x1000a39e
neg esi
mov dword [ebp - 0x4e3c], esi
mov dword [ebx], esi
xor edx, edx
test edi, edi
jle 0x10009e48
mov ecx, dword [ebp - 0x4e88]
nop word [eax + eax]
cmp dword [ecx], esi
jne 0x10009e40
mov eax, dword [ecx + 4]
cmp eax, dword [ebx + 4]
je case.default.0x1000bfbe
inc edx
add ecx, 0xc
cmp edx, edi
jl 0x10009e30
add esi, dword [ebp - 0x4e68]
mov ecx, dword [ebp - 0x4e50]
movzx edx, byte [esi]
mov dword [ebp - 0x4e4c], edx
test ecx, ecx
jne 0x10009e7b
mov eax, dword [ebp - 0x4e64]
mov ebx, 1
cmp byte [edx + 0x1003d9a0], cl
cmovne eax, ebx
mov dword [ebp - 0x4e64], eax
mov al, byte [edx + 0x1003d8f8]
test al, al
je 0x1000a00e
movzx edx, al
mov edi, 1
add edx, esi
mov dword [ebp - 0x4e7c], edi
cmp dword [ebp - 0x4e54], 0
movzx ebx, byte [edx]
je 0x10009fae
cmp ebx, 0xc0
jb 0x10009fae
test bl, 0x20
jne 0x10009ecb
movzx eax, byte [edx + 1]
and ebx, 0x1f
mov edi, 2
jmp 0x10009fa0
test bl, 0x10
jne 0x10009eed
movzx ecx, byte [edx + 1]
and ebx, 0xf
movzx eax, byte [edx + 2]
and ecx, 0x3f
shl ebx, 6
mov edi, 3
or ebx, ecx
jmp 0x10009f9a
test bl, 8
jne 0x10009f1b
movzx ecx, byte [edx + 1]
and ebx, 7
movzx eax, byte [edx + 2]
and ecx, 0x3f
shl ebx, 6
and eax, 0x3f
or ebx, ecx
mov edi, 4
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
jmp 0x10009f9a
movzx eax, byte [edx + 1]
movzx ecx, byte [edx + 2]
and eax, 0x3f
movzx edi, byte [edx + 3]
and ecx, 0x3f
mov dword [ebp - 0x4e94], eax
and edi, 0x3f
movzx eax, byte [edx + 4]
and eax, 0x3f
mov dword [ebp - 0x4e7c], eax
mov eax, dword [ebp - 0x4e94]
test bl, 4
jne 0x10009f76
and ebx, 3
shl ebx, 6
or ebx, eax
shl ebx, 6
or ebx, ecx
mov ecx, dword [ebp - 0x4e50]
shl ebx, 6
or ebx, edi
mov edi, 5
shl ebx, 6
or ebx, dword [ebp - 0x4e7c]
jmp 0x10009fa8
and ebx, 1
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 5]
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, edi
mov edi, 6
shl ebx, 6
or ebx, dword [ebp - 0x4e7c]
mov ecx, dword [ebp - 0x4e50]
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov dword [ebp - 0x4e7c], edi
mov edx, dword [ebp - 0x4e4c]
cmp edx, 0x55
jb case.default.0x10009fc1
lea eax, [ebx - 0xe]
cmp eax, 8
ja case.default.0x10009fc1
jmp dword [eax*4 + 0x1000d5f8]
add edx, 0x12c
mov dword [ebp - 0x4e4c], edx
jmp case.default.0x10009fc1
add edx, 0x154
mov dword [ebp - 0x4e4c], edx
jmp case.default.0x10009fc1
add edx, 0x140
mov dword [ebp - 0x4e4c], edx
jmp case.default.0x10009fc1
add edx, 0x168
mov dword [ebp - 0x4e4c], edx
jmp case.default.0x10009fc1
add edx, 0x17c
mov dword [ebp - 0x4e4c], edx
jmp case.default.0x10009fc1
xor edi, edi
or ebx, 0xffffffff
mov dword [ebp - 0x4e7c], edi
lea eax, [edx - 1]
cmp eax, 0x1dc
ja case.0x1000a02e.3
movzx eax, byte [eax + 0x1000d720]
jmp dword [eax*4 + 0x1000d61c]
cmp esi, dword [ebp - 0x4e60]
je 0x1000a0c5
mov ecx, dword [ebp - 0x4e28]
mov eax, ecx
inc ecx
mov dword [ebp - 0x4e28], ecx
mov ecx, dword [ebp - 0x4e38]
cmp eax, ecx
jge 0x1000d16f
mov edi, dword [ebp - 0x4e34]
mov ebx, dword [ebp - 0x4e3c]
mov dword [edi + 4], 0
lea eax, [ebx + 3]
mov dword [edi], eax
add edi, 0xc
cmp edx, 0x78
mov dword [ebp - 0x4e34], edi
mov edx, dword [ebp - 0x4e28]
je 0x1000a392
mov eax, edx
inc edx
mov dword [ebp - 0x4e28], edx
cmp eax, ecx
jge 0x1000d16f
movzx ecx, byte [esi + 1]
movzx eax, byte [esi + 2]
shl ecx, 8
or ecx, eax
mov dword [edi + 4], 0
sub ebx, ecx
mov dword [edi], ebx
add edi, 0xc
mov dword [ebp - 0x4e34], edi
jmp 0x1000a392
mov esi, dword [ebp - 0x4e40]
mov edx, dword [ebp - 0x4e74]
mov ebx, dword [ebp - 0x4e48]
cmp esi, edx
ja 0x1000a105
mov eax, dword [ebx + 0x18]
test eax, 0x400
jne case.default.0x1000bfbe
mov edi, dword [ebp - 0x4e58]
test eax, 0x10000000
je 0x1000a10b
mov eax, dword [ebx + 0x14]
add eax, edi
cmp edx, eax
jbe case.default.0x1000bfbe
jmp 0x1000a10b
mov edi, dword [ebp - 0x4e58]
mov ecx, dword [ebp - 0x4e70]
test ecx, ecx
jns 0x1000a120
xor ecx, ecx
cmp dword [ebp + 0x1c], 2
setge cl
jmp 0x1000a13a
jle 0x1000a140
inc ecx
mov dword [ebp - 0x4e94], 0
lea eax, [ecx + ecx]
cmp eax, dword [ebp + 0x1c]
cmovg ecx, dword [ebp - 0x4e94]
mov dword [ebp - 0x4e70], ecx
cmp dword [ebp - 0x4e70], 0
lea eax, [ecx + ecx]
mov ecx, dword [ebp + 0x1c]
cmovne ecx, eax
sub ecx, 2
test ecx, ecx
jle 0x1000a178
lea eax, [ecx*4]
push eax
mov eax, dword [ebp - 0x4ea0]
push eax
add eax, 8
push eax
call fcn.10022800
mov edx, dword [ebp - 0x4e74]
add esp, 0xc
cmp dword [ebp + 0x1c], 2
jl 0x1000a191
mov ecx, dword [ebp - 0x4ea0]
mov eax, edx
sub eax, edi
mov dword [ecx], eax
mov eax, esi
sub eax, edi
mov dword [ecx + 4], eax
test dword [ebx + 0x18], 0x10000
je case.default.0x1000bfbe
mov eax, dword [ebp - 0x4e70]
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100218b6
mov esp, ebp
pop ebp
ret
movzx ecx, byte [esi + 1]
movzx eax, byte [esi + 2]
shl ecx, 8
or ecx, eax
add esi, ecx
cmp byte [esi], 0x77
je case.0x1000a02e.119
mov edx, dword [ebp - 0x4e28]
mov eax, edx
inc edx
mov dword [ebp - 0x4e28], edx
cmp eax, dword [ebp - 0x4e38]
jge 0x1000d16f
mov ebx, dword [ebp - 0x4e34]
sub esi, dword [ebp - 0x4e68]
mov dword [ebx], esi
mov dword [ebx + 4], 0
add ebx, 0xc
mov dword [ebp - 0x4e34], ebx
jmp 0x1000a392
mov edi, dword [ebp - 0x4e34]
mov edx, dword [ebp - 0x4e28]
mov ebx, dword [ebp - 0x4e38]
nop dword [eax]
mov eax, edx
inc edx
mov dword [ebp - 0x4e28], edx
cmp eax, ebx
jge 0x1000d16f
mov eax, esi
mov dword [edi + 4], 0
sub eax, dword [ebp - 0x4e68]
add eax, 3
mov dword [edi], eax
add edi, 0xc
movzx ecx, byte [esi + 1]
movzx eax, byte [esi + 2]
shl ecx, 8
or ecx, eax
mov dword [ebp - 0x4e34], edi
add esi, ecx
cmp byte [esi], 0x77
je 0x1000a220
jmp 0x1000a392
mov edx, dword [ebp - 0x4e28]
mov eax, edx
mov ebx, dword [ebp - 0x4e38]
inc edx
mov dword [ebp - 0x4e28], edx
cmp eax, ebx
jge 0x1000d16f
mov edi, dword [ebp - 0x4e34]
mov eax, dword [ebp - 0x4e3c]
add eax, 5
mov dword [edi], eax
mov dword [edi + 4], 0
add edi, 0xc
movzx ecx, byte [esi + 1]
movzx eax, byte [esi + 2]
shl ecx, 8
or ecx, eax
mov dword [ebp - 0x4e34], edi
add esi, ecx
cmp byte [esi], 0x77
jne 0x1000a392
nop dword [eax]
mov eax, edx
inc edx
mov dword [ebp - 0x4e28], edx
cmp eax, ebx
jge 0x1000d16f
mov eax, esi
mov dword [edi + 4], 0
sub eax, dword [ebp - 0x4e68]
add eax, 3
mov dword [edi], eax
add edi, 0xc
movzx ecx, byte [esi + 1]
movzx eax, byte [esi + 2]
shl ecx, 8
or ecx, eax
mov dword [ebp - 0x4e34], edi
add esi, ecx
cmp byte [esi], 0x77
je 0x1000a2c0
jmp 0x1000a392
mov ebx, dword [ebp - 0x4e28]
cmp ebx, dword [ebp - 0x4e38]
jge 0x1000d16f
mov edi, dword [ebp - 0x4e34]
mov eax, dword [ebp - 0x4e3c]
inc eax
mov dword [edi], eax
mov dword [edi + 4], 0
movzx edx, byte [esi + 2]
movzx eax, byte [esi + 3]
shl edx, 8
or edx, eax
inc edx
add edx, esi
cmp byte [edx], 0x77
jne 0x1000a358
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
cmp byte [edx], 0x77
je 0x1000a344
lea eax, [ebx + 1]
add ebx, 2
mov dword [ebp - 0x4e28], ebx
cmp eax, dword [ebp - 0x4e38]
jge 0x1000d16f
sub edx, dword [ebp - 0x4e68]
add edx, 3
mov dword [edi + 0x10], 0
mov dword [edi + 0xc], edx
add edi, 0x18
mov dword [ebp - 0x4e34], edi
mov edx, dword [ebp - 0x4e28]
mov edi, dword [ebp - 0x4e2c]
mov ecx, dword [ebp - 0x4e30]
mov eax, dword [ebp - 0x4e90]
inc eax
mov dword [ebp - 0x4e90], eax
cmp eax, edx
jl 0x10009d90
test edi, edi
jle 0x1000d567
mov esi, dword [ebp - 0x4e40]
add esi, dword [ebp - 0x4e50]
mov ebx, dword [ebp - 0x4e88]
jmp 0x10009b87
movzx edx, byte [esi + 2]
movzx eax, byte [esi + 3]
shl edx, 8
or edx, eax
inc edx
add edx, esi
cmp byte [edx], 0x77
jne 0x1000a404
nop word [eax + eax]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
cmp byte [edx], 0x77
je 0x1000a3f0
mov ecx, dword [ebp - 0x4e28]
mov eax, ecx
inc ecx
mov dword [ebp - 0x4e28], ecx
cmp eax, dword [ebp - 0x4e38]
jge 0x1000d16f
mov ecx, dword [ebp - 0x4e34]
sub edx, dword [ebp - 0x4e68]
add edx, 3
mov dword [ecx], edx
mov dword [ecx + 4], 0
add ecx, 0xc
mov dword [ebp - 0x4e34], ecx
jmp case.default.0x1000bfbe
mov eax, dword [ebp - 0x4e58]
mov edx, dword [ebp - 0x4e28]
cmp dword [ebp - 0x4e40], eax
jne 0x1000a392
mov eax, dword [ebp - 0x4e48]
test byte [eax + 0x18], 0x80
jne 0x1000a392
mov eax, edx
inc edx
mov dword [ebp - 0x4e28], edx
cmp eax, dword [ebp - 0x4e38]
jge 0x1000d16f
mov ecx, dword [ebp - 0x4e34]
mov eax, dword [ebp - 0x4e3c]
inc eax
mov dword [ecx], eax
mov dword [ecx + 4], 0
add ecx, 0xc
mov dword [ebp - 0x4e34], ecx
jmp 0x1000a392
mov esi, dword [ebp - 0x4e40]
mov ebx, dword [ebp - 0x4e48]
cmp esi, dword [ebp - 0x4e58]
jne 0x1000a4c0
test byte [ebx + 0x18], 0x80
je 0x1000a53d
cmp esi, dword [ebp - 0x4e78]
je case.default.0x1000bfbe
mov edx, dword [ebx + 0x20]
mov ecx, dword [ebx + 4]
test edx, edx
je 0x1000a50f
cmp esi, ecx
jbe 0x1000a4fa
push dword [ebp - 0x4e54]
lea eax, [ebx + 0x24]
push eax
push ecx
push edx
push esi
call fcn.10019da0
add esp, 0x14
test eax, eax
je 0x1000a4fa
mov eax, 1
jmp 0x1000a4fc
xor eax, eax
test eax, eax
je case.default.0x1000bfbe
mov edx, dword [ebp - 0x4e28]
jmp 0x1000a46d
mov edx, dword [ebx + 0x24]
lea eax, [ecx + edx]
cmp esi, eax
jb case.default.0x1000bfbe
mov ecx, esi
sub ecx, edx
mov al, byte [ecx]
cmp al, byte [ebx + 0x28]
jne case.default.0x1000bfbe
cmp edx, 1
je 0x1000a53d
mov al, byte [ecx + 1]
cmp al, byte [ebx + 0x29]
jne case.default.0x1000bfbe
mov edx, dword [ebp - 0x4e28]
jmp 0x1000a46d
mov eax, dword [ebp - 0x4e78]
cmp dword [ebp - 0x4e40], eax
jb case.default.0x1000bfbe
mov eax, dword [ebp - 0x4e48]
mov edx, dword [ebp - 0x4e28]
test dword [eax + 0x18], 0x8000000
je 0x1000a46d
mov dword [ebp - 0x4e64], 1
jmp 0x1000a392
mov eax, dword [ebp - 0x4e58]
mov edx, dword [ebp - 0x4e28]
cmp dword [ebp - 0x4e40], eax
jmp 0x1000a467
mov eax, dword [ebp - 0x4e58]
add eax, dword [ebp + 0x14]
mov edx, dword [ebp - 0x4e28]
cmp dword [ebp - 0x4e40], eax
jmp 0x1000a467
test ecx, ecx
jle case.default.0x1000bfbe
mov ebx, dword [ebp - 0x4e48]
mov esi, dword [ebp - 0x4e40]
mov edx, dword [ebx + 0x20]
test edx, edx
je 0x1000a601
mov ecx, dword [ebx + 8]
cmp esi, ecx
jae 0x1000a5f5
push dword [ebp - 0x4e54]
lea eax, [ebx + 0x24]
push eax
push ecx
push edx
push esi
call fcn.10019c00
add esp, 0x14
test eax, eax
je 0x1000a5f5
mov eax, 1
jmp 0x1000a5f7
xor eax, eax
test eax, eax
jne case.default.0x1000bfbe
jmp 0x1000a629
mov eax, dword [ebx + 8]
mov ecx, dword [ebx + 0x24]
sub eax, ecx
cmp esi, eax
ja 0x1000a629
mov al, byte [esi]
cmp al, byte [ebx + 0x28]
jne 0x1000a629
cmp ecx, 1
je case.default.0x1000bfbe
mov al, byte [esi + 1]
cmp al, byte [ebx + 0x29]
je case.default.0x1000bfbe
lea eax, [esi + 1]
cmp eax, dword [ebx + 8]
jb case.0x1000bfbe.10
test dword [ebx + 0x18], 0x8000000
je case.0x1000bfbe.10
cmp dword [ebx + 0x20], 0
jne case.0x1000bfbe.10
cmp dword [ebx + 0x24], 2
jne case.0x1000bfbe.10
movzx eax, byte [ebx + 0x28]
cmp dword [ebp - 0x4e44], eax
jne case.0x1000bfbe.10
mov dword [ebp - 0x4e84], 1
mov dword [ebp - 0x4e64], 1
jmp case.default.0x1000bfbe
mov edi, dword [ebp - 0x4e2c]
test ecx, ecx
jle 0x1000a89f
jmp 0x1000aa31
test ecx, ecx
jne 0x1000a6b8
mov eax, dword [ebp - 0x4e48]
test dword [eax + 0x18], 0x8000000
je 0x1000a53d
mov dword [ebp - 0x4e64], 1
jmp case.default.0x1000bfbe
mov ebx, dword [ebp - 0x4e48]
mov esi, dword [ebp - 0x4e40]
mov edx, dword [ebx + 0x20]
test edx, edx
je 0x1000a6fe
mov ecx, dword [ebx + 8]
cmp esi, ecx
jae 0x1000a6f2
push dword [ebp - 0x4e54]
lea eax, [ebx + 0x24]
push eax
push ecx
push edx
push esi
call fcn.10019c00
add esp, 0x14
test eax, eax
je 0x1000a6f2
mov eax, 1
jmp 0x1000a6f4
xor eax, eax
test eax, eax
je case.default.0x1000bfbe
jmp 0x1000a72a
mov eax, dword [ebx + 8]
mov ecx, dword [ebx + 0x24]
sub eax, ecx
cmp esi, eax
ja case.default.0x1000bfbe
mov al, byte [esi]
cmp al, byte [ebx + 0x28]
jne case.default.0x1000bfbe
cmp ecx, 1
je 0x1000a72a
mov al, byte [esi + 1]
cmp al, byte [ebx + 0x29]
jne case.default.0x1000bfbe
mov eax, dword [ebp - 0x4e78]
sub eax, dword [ebx + 0x24]
cmp esi, eax
jne case.default.0x1000bfbe
mov edx, dword [ebp - 0x4e28]
jmp 0x1000a46d
mov ebx, dword [ebp - 0x4e48]
mov eax, dword [ebx + 0x18]
test eax, 0x100
jne case.default.0x1000bfbe
test ecx, ecx
jne 0x1000a778
test eax, 0x8000000
je 0x1000a53d
mov dword [ebp - 0x4e64], 1
jmp case.default.0x1000bfbe
test byte [ebx + 0x1c], 0x20
mov esi, dword [ebp - 0x4e40]
jne 0x1000a7c0
mov edx, dword [ebx + 0x20]
mov ecx, dword [ebx + 8]
test edx, edx
je 0x1000a846
cmp esi, ecx
jae 0x1000a7b6
push dword [ebp - 0x4e54]
lea eax, [ebx + 0x24]
push eax
push ecx
push edx
push esi
call fcn.10019c00
add esp, 0x14
test eax, eax
je 0x1000a7b6
mov eax, 1
jmp 0x1000a7b8
xor eax, eax
test eax, eax
jne 0x1000a86f
lea eax, [esi + 1]
cmp eax, dword [ebx + 8]
jb case.default.0x1000bfbe
mov ecx, dword [ebx + 0x18]
test ecx, 0x8008000
je case.default.0x1000bfbe
cmp dword [ebx + 0x20], 0
jne case.default.0x1000bfbe
cmp dword [ebx + 0x24], 2
jne case.default.0x1000bfbe
movzx eax, byte [ebx + 0x28]
cmp dword [ebp - 0x4e44], eax
jne case.default.0x1000bfbe
mov edi, dword [ebp - 0x4e2c]
test ecx, 0x8000000
je 0x1000a88b
mov dword [ebp - 0x4e8c], 1
mov eax, edi
inc edi
mov dword [ebp - 0x4e2c], edi
cmp eax, dword [ebp - 0x4e38]
jge 0x1000d16f
mov ecx, dword [ebp - 0x4e30]
mov eax, dword [ebp - 0x4e3c]
not eax
mov dword [ecx + 8], 1
jmp 0x1000aa53
mov edx, dword [ebx + 0x24]
sub ecx, edx
cmp esi, ecx
ja 0x1000a7c0
mov al, byte [esi]
cmp al, byte [ebx + 0x28]
jne 0x1000a7c0
cmp edx, 1
je 0x1000a86f
mov al, byte [esi + 1]
cmp al, byte [ebx + 0x29]
jne 0x1000a7c0
mov eax, dword [ebp - 0x4e78]
sub eax, dword [ebx + 0x24]
cmp esi, eax
jne 0x1000a7c0
mov edx, dword [ebp - 0x4e28]
jmp 0x1000a46d
mov dword [ebp - 0x4e84], 1
mov dword [ebp - 0x4e64], 1
mov edx, dword [ebp - 0x4e28]
jmp 0x1000a398
mov ebx, dword [ebp - 0x4e48]
mov eax, dword [ebx + 0x18]
test eax, 0x100
jne 0x1000a94b
test ecx, ecx
je 0x1000a75e
test byte [ebx + 0x1c], 0x20
mov esi, dword [ebp - 0x4e40]
jne 0x1000a7c0
mov edx, dword [ebx + 0x20]
mov ecx, dword [ebx + 8]
test edx, edx
je 0x1000a913
cmp esi, ecx
jae 0x1000a904
push dword [ebp - 0x4e54]
lea eax, [ebx + 0x24]
push eax
push ecx
push edx
push esi
call fcn.10019c00
add esp, 0x14
test eax, eax
je 0x1000a904
mov eax, 1
jmp 0x1000a906
xor eax, eax
test eax, eax
jne 0x1000a53d
jmp 0x1000a7c0
mov edx, dword [ebx + 0x24]
sub ecx, edx
cmp esi, ecx
ja 0x1000a7c0
mov al, byte [esi]
cmp al, byte [ebx + 0x28]
jne 0x1000a7c0
cmp edx, 1
je 0x1000a53d
mov al, byte [esi + 1]
cmp al, byte [ebx + 0x29]
jne 0x1000a7c0
mov edx, dword [ebp - 0x4e28]
jmp 0x1000a46d
mov edx, dword [ebx + 0x20]
mov esi, dword [ebp - 0x4e40]
test edx, edx
je 0x1000a97a
mov ecx, dword [ebx + 8]
cmp esi, ecx
jae 0x1000a4fa
push dword [ebp - 0x4e54]
lea eax, [ebx + 0x24]
push eax
push ecx
push edx
push esi
call fcn.10019c00
jmp 0x1000a4ec
mov eax, dword [ebx + 8]
mov ecx, dword [ebx + 0x24]
sub eax, ecx
cmp esi, eax
ja case.default.0x1000bfbe
mov al, byte [esi]
cmp al, byte [ebx + 0x28]
jne case.default.0x1000bfbe
cmp ecx, 1
je 0x1000a53d
mov al, byte [esi + 1]
cmp al, byte [ebx + 0x29]
jne case.default.0x1000bfbe
mov edx, dword [ebp - 0x4e28]
jmp 0x1000a46d
test ecx, ecx
jle case.default.0x1000bfbe
mov ebx, dword [ebp - 0x4e44]
mov edi, dword [ebp - 0x4e2c]
cmp ebx, 0x100
jae 0x1000a89f
mov eax, dword [ebp - 0x4e5c]
mov al, byte [ebx + eax + 0x340]
and al, byte [edx + 0x1003da44]
cmp al, byte [edx + 0x1003da54]
je 0x1000a89f
jmp 0x1000aa31
test ecx, ecx
jle case.default.0x1000bfbe
mov ebx, dword [ebp - 0x4e44]
cmp ebx, 0x100
jae case.0x1000bfbe.10
mov eax, dword [ebp - 0x4e5c]
mov al, byte [ebx + eax + 0x340]
and al, byte [edx + 0x1003da44]
cmp al, byte [edx + 0x1003da54]
je case.default.0x1000bfbe
mov edi, dword [ebp - 0x4e2c]
mov eax, edi
inc edi
mov dword [ebp - 0x4e2c], edi
cmp eax, dword [ebp - 0x4e38]
jge 0x1000d16f
mov eax, dword [ebp - 0x4e3c]
inc eax
mov ecx, dword [ebp - 0x4e30]
mov dword [ecx], eax
mov dword [ecx + 4], 0
add ecx, 0xc
mov dword [ebp - 0x4e30], ecx
mov edx, dword [ebp - 0x4e28]
jmp 0x1000a39e
mov esi, dword [ebp - 0x4e40]
cmp esi, dword [ebp - 0x4e58]
jbe 0x1000aba7
mov eax, dword [ebp - 0x4e48]
lea edx, [esi - 1]
cmp edx, dword [eax + 0xc]
jae 0x1000aa93
mov dword [eax + 0xc], edx
mov ecx, dword [ebp - 0x4e54]
test ecx, ecx
je 0x1000aab4
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
jne 0x1000aab4
mov al, byte [edx - 1]
dec edx
and al, 0xc0
cmp al, 0x80
je 0x1000aaa5
movzx ebx, byte [edx]
jmp 0x1000aabf
movzx ebx, byte [edx]
test ecx, ecx
je 0x1000ab7c
cmp ebx, 0xc0
jb 0x1000ab7c
test bl, 0x20
jne 0x1000aadc
movzx eax, byte [edx + 1]
and ebx, 0x1f
jmp 0x1000ab74
test bl, 0x10
jne 0x1000aaf9
movzx ecx, byte [edx + 1]
and ebx, 0xf
movzx eax, byte [edx + 2]
and ecx, 0x3f
shl ebx, 6
or ebx, ecx
jmp 0x1000ab74
test bl, 8
jne 0x1000ab1f
movzx ecx, byte [edx + 1]
and ebx, 7
movzx eax, byte [edx + 2]
and ecx, 0x3f
shl ebx, 6
and eax, 0x3f
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
jmp 0x1000ab74
movzx eax, byte [edx + 1]
movzx ecx, byte [edx + 2]
and eax, 0x3f
movzx esi, byte [edx + 3]
and ecx, 0x3f
movzx edi, byte [edx + 4]
and esi, 0x3f
and edi, 0x3f
test bl, 4
jne 0x1000ab59
and ebx, 3
shl ebx, 6
or ebx, eax
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, esi
shl ebx, 6
or ebx, edi
jmp 0x1000ab7c
and ebx, 1
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 5]
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, esi
shl ebx, 6
or ebx, edi
and eax, 0x3f
shl ebx, 6
or ebx, eax
cmp ebx, 0x100
jae 0x1000aba1
mov eax, dword [ebp - 0x4e5c]
test byte [ebx + eax + 0x340], 0x10
je 0x1000aba1
mov edx, dword [ebp - 0x4e4c]
mov eax, 1
jmp 0x1000aba9
mov edx, dword [ebp - 0x4e4c]
xor eax, eax
cmp dword [ebp - 0x4e50], 0
jle 0x1000abe9
mov ebx, dword [ebp - 0x4e44]
cmp ebx, 0x100
jae 0x1000abe9
mov ecx, dword [ebp - 0x4e5c]
test byte [ebx + ecx + 0x340], 0x10
je 0x1000abe9
xor ecx, ecx
xor ecx, eax
xor eax, eax
cmp edx, 4
mov edx, dword [ebp - 0x4e28]
sete al
cmp ecx, eax
jmp 0x1000a467
mov ecx, 1
xor ecx, eax
xor eax, eax
cmp edx, 4
mov edx, dword [ebp - 0x4e28]
sete al
cmp ecx, eax
jmp 0x1000a467
mov eax, dword [ebp - 0x4e6c]
mov esi, dword [eax + 4]
test esi, esi
jle 0x1000ac50
mov ecx, dword [ebp - 0x4e28]
mov eax, ecx
inc ecx
mov dword [ebp - 0x4e28], ecx
cmp eax, dword [ebp - 0x4e38]
jge 0x1000d16f
mov edi, dword [ebp - 0x4e34]
mov eax, dword [ebp - 0x4e3c]
add eax, 2
mov dword [edi], eax
mov dword [edi + 4], 0
add edi, 0xc
mov dword [ebp - 0x4e34], edi
jmp 0x1000ac56
mov edi, dword [ebp - 0x4e34]
cmp dword [ebp - 0x4e50], 0
jle case.default.0x1000bfbe
mov ecx, dword [ebp - 0x4e48]
cmp ebx, 0xc
jne 0x1000ac9f
mov eax, dword [ebp - 0x4e40]
inc eax
cmp eax, dword [ecx + 8]
jb 0x1000ac9f
test dword [ecx + 0x18], 0x8000000
je 0x1000ac9f
cmp dword [ecx + 0x20], 0
jne 0x1000ac9f
cmp dword [ecx + 0x24], 2
jne 0x1000ac9f
movzx eax, byte [ecx + 0x28]
cmp dword [ebp - 0x4e44], eax
je 0x1000a666
mov eax, dword [ebp - 0x4e44]
cmp eax, 0x100
jb 0x1000accc
cmp ebx, 7
je case.default.0x1000bfbe
cmp ebx, 9
je case.default.0x1000bfbe
cmp ebx, 0xb
jne 0x1000ad88
jmp case.default.0x1000bfbe
cmp ebx, 0xc
jne 0x1000ad69
mov edx, dword [ecx + 0x20]
mov ecx, dword [ecx + 8]
test edx, edx
je 0x1000ad1c
cmp dword [ebp - 0x4e40], ecx
jae 0x1000ad10
push dword [ebp - 0x4e54]
mov eax, dword [ebp - 0x4e48]
add eax, 0x24
push eax
push ecx
push edx
push dword [ebp - 0x4e40]
call fcn.10019c00
add esp, 0x14
test eax, eax
je 0x1000ad10
lea eax, [ebx - 0xb]
jmp 0x1000ad12
xor eax, eax
test eax, eax
jne case.default.0x1000bfbe
jmp 0x1000ad5d
mov edx, dword [ebp - 0x4e48]
mov edx, dword [edx + 0x24]
sub ecx, edx
cmp dword [ebp - 0x4e40], ecx
ja 0x1000ad63
mov eax, dword [ebp - 0x4e40]
mov ecx, dword [ebp - 0x4e48]
mov al, byte [eax]
cmp al, byte [ecx + 0x28]
jne 0x1000ad5d
cmp edx, 1
je case.default.0x1000bfbe
mov eax, dword [ebp - 0x4e40]
mov al, byte [eax + 1]
cmp al, byte [ecx + 0x29]
je case.default.0x1000bfbe
mov eax, dword [ebp - 0x4e44]
mov edx, dword [ebp - 0x4e4c]
mov ecx, dword [ebp - 0x4e5c]
mov al, byte [eax + ecx + 0x340]
and al, byte [ebx + 0x1003da44]
cmp al, byte [ebx + 0x1003da54]
je case.default.0x1000bfbe
test esi, esi
jle 0x1000ada9
cmp edx, 0x5f
mov edx, dword [ebp - 0x4e28]
jne 0x1000adaf
dec edx
sub edi, 0xc
mov dword [ebp - 0x4e28], edx
mov dword [ebp - 0x4e34], edi
jmp 0x1000adaf
mov edx, dword [ebp - 0x4e28]
mov edi, dword [ebp - 0x4e2c]
mov eax, edi
inc edi
mov dword [ebp - 0x4e2c], edi
cmp eax, dword [ebp - 0x4e38]
jge 0x1000d16f
mov ecx, dword [ebp - 0x4e30]
mov eax, dword [ebp - 0x4e3c]
mov dword [ecx], eax
lea eax, [esi + 1]
mov dword [ecx + 4], eax
add ecx, 0xc
mov dword [ebp - 0x4e30], ecx
jmp 0x1000a39e
mov ecx, dword [ebp - 0x4e28]
mov eax, ecx
inc ecx
mov dword [ebp - 0x4e28], ecx
cmp eax, dword [ebp - 0x4e38]
jge 0x1000d16f
mov edi, dword [ebp - 0x4e34]
mov ecx, dword [ebp - 0x4e3c]
mov dword [edi + 4], 0
lea eax, [ecx + 2]
mov dword [edi], eax
add edi, 0xc
cmp dword [ebp - 0x4e50], 0
mov dword [ebp - 0x4e34], edi
jle case.default.0x1000bfbe
cmp ebx, 0xc
jne 0x1000ae92
mov esi, dword [ebp - 0x4e48]
mov eax, dword [ebp - 0x4e40]
inc eax
cmp eax, dword [esi + 8]
jb 0x1000ae92
mov eax, esi
test dword [eax + 0x18], 0x8000000
je 0x1000ae8a
cmp dword [eax + 0x20], 0
jne 0x1000ae8a
cmp dword [eax + 0x24], 2
mov esi, dword [ebp - 0x4e44]
jne 0x1000ae9e
movzx eax, byte [eax + 0x28]
cmp esi, eax
jne 0x1000ae98
mov dword [ebp - 0x4e84], 1
mov dword [ebp - 0x4e64], 1
jmp case.default.0x1000bfbe
mov esi, dword [ebp - 0x4e44]
jmp 0x1000ae9e
mov esi, dword [ebp - 0x4e44]
mov eax, dword [ebp - 0x4e48]
cmp esi, 0x100
jb 0x1000aec6
cmp ebx, 7
je case.default.0x1000bfbe
cmp ebx, 9
je case.default.0x1000bfbe
cmp ebx, 0xb
jne 0x1000af72
jmp case.default.0x1000bfbe
cmp ebx, 0xc
jne 0x1000af53
mov edx, dword [eax + 0x20]
mov ecx, dword [eax + 8]
test edx, edx
je 0x1000af10
cmp dword [ebp - 0x4e40], ecx
jae 0x1000af04
push dword [ebp - 0x4e54]
add eax, 0x24
push eax
push ecx
push edx
push dword [ebp - 0x4e40]
call fcn.10019c00
add esp, 0x14
test eax, eax
je 0x1000af04
lea eax, [ebx - 0xb]
jmp 0x1000af06
xor eax, eax
test eax, eax
jne case.default.0x1000bfbe
jmp 0x1000af47
mov edx, dword [eax + 0x24]
sub ecx, edx
mov eax, dword [ebp - 0x4e40]
cmp eax, ecx
ja 0x1000af47
mov ecx, dword [ebp - 0x4e48]
mov al, byte [eax]
cmp al, byte [ecx + 0x28]
jne 0x1000af47
cmp edx, 1
je case.default.0x1000bfbe
mov eax, dword [ebp - 0x4e40]
mov al, byte [eax + 1]
cmp al, byte [ecx + 0x29]
je case.default.0x1000bfbe
mov ecx, dword [ebp - 0x4e3c]
mov edx, dword [ebp - 0x4e4c]
mov eax, dword [ebp - 0x4e5c]
mov al, byte [esi + eax + 0x340]
and al, byte [ebx + 0x1003da44]
cmp al, byte [ebx + 0x1003da54]
je case.default.0x1000bfbe
cmp edx, 0x60
mov edx, dword [ebp - 0x4e28]
jne 0x1000af8d
dec edx
sub edi, 0xc
mov dword [ebp - 0x4e28], edx
mov dword [ebp - 0x4e34], edi
mov edi, dword [ebp - 0x4e2c]
mov eax, edi
inc edi
mov dword [ebp - 0x4e2c], edi
cmp eax, dword [ebp - 0x4e38]
jge 0x1000d16f
lea eax, [ecx + 2]
mov ecx, dword [ebp - 0x4e30]
mov dword [ecx], eax
mov dword [ecx + 4], 0
add ecx, 0xc
mov dword [ebp - 0x4e30], ecx
jmp 0x1000a39e
mov ecx, dword [ebp - 0x4e28]
mov eax, ecx
inc ecx
mov dword [ebp - 0x4e28], ecx
mov ecx, dword [ebp - 0x4e38]
cmp eax, ecx
jge 0x1000d16f
mov edi, dword [ebp - 0x4e34]
mov esi, dword [ebp - 0x4e3c]
mov dword [edi + 4], 0
lea eax, [esi + 2]
mov dword [edi], eax
add edi, 0xc
cmp dword [ebp - 0x4e50], 0
mov dword [ebp - 0x4e34], edi
jle case.default.0x1000bfbe
cmp ebx, 0xc
jne 0x1000b05b
mov ecx, dword [ebp - 0x4e48]
mov eax, dword [ebp - 0x4e40]
inc eax
cmp eax, dword [ecx + 8]
mov ecx, dword [ebp - 0x4e38]
jb 0x1000b05b
mov eax, dword [ebp - 0x4e48]
test dword [eax + 0x18], 0x8000000
je 0x1000b05b
cmp dword [eax + 0x20], 0
jne 0x1000b05b
cmp dword [eax + 0x24], 2
jne 0x1000b05b
movzx eax, byte [eax + 0x28]
cmp dword [ebp - 0x4e44], eax
je 0x1000a666
mov eax, dword [ebp - 0x4e44]
cmp eax, 0x100
jb 0x1000b088
cmp ebx, 7
je case.default.0x1000bfbe
cmp ebx, 9
je case.default.0x1000bfbe
cmp ebx, 0xb
jne 0x1000b150
jmp case.default.0x1000bfbe
cmp ebx, 0xc
jne 0x1000b12b
mov ecx, dword [ebp - 0x4e48]
mov edx, dword [ecx + 0x20]
mov ecx, dword [ecx + 8]
test edx, edx
je 0x1000b0de
cmp dword [ebp - 0x4e40], ecx
jae 0x1000b0d2
push dword [ebp - 0x4e54]
mov eax, dword [ebp - 0x4e48]
add eax, 0x24
push eax
push ecx
push edx
push dword [ebp - 0x4e40]
call fcn.10019c00
add esp, 0x14
test eax, eax
je 0x1000b0d2
lea eax, [ebx - 0xb]
jmp 0x1000b0d4
xor eax, eax
test eax, eax
jne case.default.0x1000bfbe
jmp 0x1000b11f
mov edx, dword [ebp - 0x4e48]
mov edx, dword [edx + 0x24]
sub ecx, edx
cmp dword [ebp - 0x4e40], ecx
ja 0x1000b125
mov eax, dword [ebp - 0x4e40]
mov ecx, dword [ebp - 0x4e48]
mov al, byte [eax]
cmp al, byte [ecx + 0x28]
jne 0x1000b11f
cmp edx, 1
je case.default.0x1000bfbe
mov eax, dword [ebp - 0x4e40]
mov al, byte [eax + 1]
cmp al, byte [ecx + 0x29]
je case.default.0x1000bfbe
mov eax, dword [ebp - 0x4e44]
mov edx, dword [ebp - 0x4e4c]
mov ecx, dword [ebp - 0x4e5c]
mov al, byte [eax + ecx + 0x340]
and al, byte [ebx + 0x1003da44]
mov ecx, dword [ebp - 0x4e38]
cmp al, byte [ebx + 0x1003da54]
je case.default.0x1000bfbe
cmp edx, 0x5e
mov edx, dword [ebp - 0x4e28]
jne 0x1000b16b
dec edx
sub edi, 0xc
mov dword [ebp - 0x4e28], edx
mov dword [ebp - 0x4e34], edi
mov edi, dword [ebp - 0x4e2c]
mov eax, edi
inc edi
cmp eax, ecx
mov dword [ebp - 0x4e2c], edi
jge 0x1000d16f
mov ecx, dword [ebp - 0x4e30]
mov dword [ecx], esi
mov dword [ecx + 4], 0
add ecx, 0xc
mov dword [ebp - 0x4e30], ecx
jmp 0x1000a39e
mov eax, dword [ebp - 0x4e6c]
mov edi, dword [eax + 4]
test ecx, ecx
jle case.default.0x1000bfbe
mov ecx, dword [ebp - 0x4e48]
cmp ebx, 0xc
jne 0x1000b1ec
mov eax, dword [ebp - 0x4e40]
inc eax
cmp eax, dword [ecx + 8]
jb 0x1000b1ec
test dword [ecx + 0x18], 0x8000000
je 0x1000b1ec
cmp dword [ecx + 0x20], 0
jne 0x1000b1ec
cmp dword [ecx + 0x24], 2
jne 0x1000b1ec
movzx eax, byte [ecx + 0x28]
cmp dword [ebp - 0x4e44], eax
je 0x1000a666
mov eax, dword [ebp - 0x4e44]
cmp eax, 0x100
jb 0x1000b219
cmp ebx, 7
je case.default.0x1000bfbe
cmp ebx, 9
je case.default.0x1000bfbe
cmp ebx, 0xb
jne 0x1000b2cf
jmp case.default.0x1000bfbe
cmp ebx, 0xc
jne 0x1000b2b0
mov edx, dword [ecx + 0x20]
mov ecx, dword [ecx + 8]
test edx, edx
je 0x1000b269
cmp dword [ebp - 0x4e40], ecx
jae 0x1000b25d
push dword [ebp - 0x4e54]
mov eax, dword [ebp - 0x4e48]
add eax, 0x24
push eax
push ecx
push edx
push dword [ebp - 0x4e40]
call fcn.10019c00
add esp, 0x14
test eax, eax
je 0x1000b25d
lea eax, [ebx - 0xb]
jmp 0x1000b25f
xor eax, eax
test eax, eax
jne case.default.0x1000bfbe
jmp 0x1000b2aa
mov edx, dword [ebp - 0x4e48]
mov edx, dword [edx + 0x24]
sub ecx, edx
cmp dword [ebp - 0x4e40], ecx
ja 0x1000b2b0
mov eax, dword [ebp - 0x4e40]
mov ecx, dword [ebp - 0x4e48]
mov al, byte [eax]
cmp al, byte [ecx + 0x28]
jne 0x1000b2aa
cmp edx, 1
je case.default.0x1000bfbe
mov eax, dword [ebp - 0x4e40]
mov al, byte [eax + 1]
cmp al, byte [ecx + 0x29]
je case.default.0x1000bfbe
mov eax, dword [ebp - 0x4e44]
mov ecx, dword [ebp - 0x4e5c]
mov al, byte [eax + ecx + 0x340]
and al, byte [ebx + 0x1003da44]
cmp al, byte [ebx + 0x1003da54]
je case.default.0x1000bfbe
movzx ecx, byte [esi + 1]
inc edi
mov ebx, dword [ebp - 0x4e2c]
movzx eax, byte [esi + 2]
shl ecx, 8
or ecx, eax
lea edx, [ebx + 1]
cmp edi, ecx
jl 0x1000b30c
mov edi, edx
mov dword [ebp - 0x4e2c], edi
cmp ebx, dword [ebp - 0x4e38]
jge 0x1000d16f
mov eax, dword [ebp - 0x4e3c]
add eax, 4
jmp 0x1000aa4d
mov dword [ebp - 0x4e2c], edx
cmp ebx, dword [ebp - 0x4e38]
jge 0x1000d16f
mov ecx, dword [ebp - 0x4e30]
mov eax, dword [ebp - 0x4e3c]
mov dword [ecx], eax
mov dword [ecx + 4], edi
add ecx, 0xc
mov dword [ebp - 0x4e30], ecx
mov edx, dword [ebp - 0x4e28]
mov edi, dword [ebp - 0x4e2c]
jmp 0x1000a39e
mov ecx, dword [ebp - 0x4e28]
mov eax, ecx
inc ecx
mov dword [ebp - 0x4e28], ecx
cmp eax, dword [ebp - 0x4e38]
jge 0x1000d16f
mov ecx, dword [ebp - 0x4e34]
mov eax, dword [ebp - 0x4e3c]
add eax, 4
mov dword [ecx], eax
mov eax, dword [ebp - 0x4e6c]
mov dword [ecx + 4], 0
add ecx, 0xc
cmp dword [ebp - 0x4e50], 0
mov dword [ebp - 0x4e34], ecx
mov edi, dword [eax + 4]
mov dword [ebp - 0x4e80], edi
jle case.default.0x1000bfbe
cmp ebx, 0xc
jne 0x1000b3e9
mov edi, dword [ebp - 0x4e48]
mov eax, dword [ebp - 0x4e40]
inc eax
cmp eax, dword [edi + 8]
mov edi, dword [ebp - 0x4e80]
jb 0x1000b3e9
mov eax, dword [ebp - 0x4e48]
test dword [eax + 0x18], 0x8000000
je 0x1000b3e9
cmp dword [eax + 0x20], 0
jne 0x1000b3e9
cmp dword [eax + 0x24], 2
jne 0x1000b3e9
movzx eax, byte [eax + 0x28]
cmp dword [ebp - 0x4e44], eax
je 0x1000a666
mov eax, dword [ebp - 0x4e44]
cmp eax, 0x100
jb 0x1000b416
cmp ebx, 7
je case.default.0x1000bfbe
cmp ebx, 9
je case.default.0x1000bfbe
cmp ebx, 0xb
jne 0x1000b4e4
jmp case.default.0x1000bfbe
cmp ebx, 0xc
jne 0x1000b4bf
mov ecx, dword [ebp - 0x4e48]
mov edx, dword [ecx + 0x20]
mov ecx, dword [ecx + 8]
test edx, edx
je 0x1000b46c
cmp dword [ebp - 0x4e40], ecx
jae 0x1000b460
push dword [ebp - 0x4e54]
mov eax, dword [ebp - 0x4e48]
add eax, 0x24
push eax
push ecx
push edx
push dword [ebp - 0x4e40]
call fcn.10019c00
add esp, 0x14
test eax, eax
je 0x1000b460
lea eax, [ebx - 0xb]
jmp 0x1000b462
xor eax, eax
test eax, eax
jne case.default.0x1000bfbe
jmp 0x1000b4ad
mov edx, dword [ebp - 0x4e48]
mov edx, dword [edx + 0x24]
sub ecx, edx
cmp dword [ebp - 0x4e40], ecx
ja 0x1000b4b3
mov eax, dword [ebp - 0x4e40]
mov ecx, dword [ebp - 0x4e48]
mov al, byte [eax]
cmp al, byte [ecx + 0x28]
jne 0x1000b4ad
cmp edx, 1
je case.default.0x1000bfbe
mov eax, dword [ebp - 0x4e40]
mov al, byte [eax + 1]
cmp al, byte [ecx + 0x29]
je case.default.0x1000bfbe
mov eax, dword [ebp - 0x4e44]
mov ecx, dword [ebp - 0x4e34]
mov edx, dword [ebp - 0x4e4c]
mov edi, dword [ebp - 0x4e5c]
mov al, byte [eax + edi + 0x340]
and al, byte [ebx + 0x1003da44]
mov edi, dword [ebp - 0x4e80]
cmp al, byte [ebx + 0x1003da54]
je case.default.0x1000bfbe
cmp edx, 0x61
jne 0x1000b4f8
dec dword [ebp - 0x4e28]
sub ecx, 0xc
mov dword [ebp - 0x4e34], ecx
movzx ecx, byte [esi + 1]
inc edi
mov ebx, dword [ebp - 0x4e2c]
movzx eax, byte [esi + 2]
shl ecx, 8
or ecx, eax
lea edx, [ebx + 1]
cmp edi, ecx
jl 0x1000b30c
mov edi, edx
mov dword [ebp - 0x4e2c], edi
cmp ebx, dword [ebp - 0x4e38]
jge 0x1000d16f
mov eax, dword [ebp - 0x4e3c]
add eax, 4
jmp 0x1000aa4d
mov eax, dword [ebp - 0x4e6c]
mov esi, dword [ebp - 0x4e28]
mov edx, dword [eax + 4]
test edx, edx
jle 0x1000b584
mov eax, esi
inc esi
mov dword [ebp - 0x4e28], esi
cmp eax, dword [ebp - 0x4e38]
jge 0x1000d16f
mov edi, dword [ebp - 0x4e34]
mov eax, dword [ebp - 0x4e3c]
add eax, 2
mov dword [edi], eax
mov dword [edi + 4], 0
add edi, 0xc
mov dword [ebp - 0x4e34], edi
jmp 0x1000b58a
mov edi, dword [ebp - 0x4e34]
test ecx, ecx
jle case.default.0x1000bfbe
mov ebx, dword [ebp - 0x4e44]
xor ecx, ecx
cmp ebx, 0x85
ja 0x1000b5d2
je case.0x1000b5b0.11
lea eax, [ebx - 0xa]
cmp eax, 3
ja case.default.0x1000bfbe
jmp dword [eax*4 + 0x1000d900]
mov eax, dword [ebp - 0x4e40]
inc eax
cmp eax, dword [ebp - 0x4e78]
jae case.0x1000b5b0.10
cmp byte [eax], 0xa
jne case.0x1000b5b0.10
mov ecx, 1
jmp case.0x1000b5b0.10
mov eax, ebx
sub eax, 0x2028
je case.0x1000b5b0.11
sub eax, 1
jne case.default.0x1000bfbe
mov eax, dword [ebp - 0x4e48]
test dword [eax + 0x18], 0x800000
jne case.default.0x1000bfbe
test edx, edx
jle 0x1000b617
cmp dword [ebp - 0x4e4c], 0x1b3
jne 0x1000b617
dec esi
sub edi, 0xc
mov dword [ebp - 0x4e28], esi
mov dword [ebp - 0x4e34], edi
mov ebx, dword [ebp - 0x4e2c]
mov eax, ebx
inc ebx
mov dword [ebp - 0x4e2c], ebx
cmp eax, dword [ebp - 0x4e38]
jge 0x1000d16f
mov edi, dword [ebp - 0x4e30]
mov eax, dword [ebp - 0x4e3c]
neg eax
mov dword [edi], eax
lea eax, [edx + 1]
mov dword [edi + 4], eax
mov edx, dword [ebp - 0x4e28]
mov dword [edi + 8], ecx
mov ecx, dword [ebp - 0x4e30]
mov edi, dword [ebp - 0x4e2c]
add ecx, 0xc
mov dword [ebp - 0x4e30], ecx
jmp 0x1000a39e
mov eax, dword [ebp - 0x4e6c]
mov esi, dword [ebp - 0x4e28]
mov edx, dword [eax + 4]
test edx, edx
jle 0x1000b6b6
mov eax, esi
inc esi
mov dword [ebp - 0x4e28], esi
cmp eax, dword [ebp - 0x4e38]
jge 0x1000d16f
mov edi, dword [ebp - 0x4e34]
mov eax, dword [ebp - 0x4e3c]
add eax, 2
mov dword [edi], eax
mov dword [edi + 4], 0
add edi, 0xc
mov dword [ebp - 0x4e34], edi
jmp 0x1000b6bc
mov edi, dword [ebp - 0x4e34]
test ecx, ecx
jle case.default.0x1000bfbe
mov eax, dword [ebp - 0x4e44]
cmp eax, 0x85
ja 0x1000b6e2
je case.0x1000b6db.10
add eax, 0xfffffff6
cmp eax, 3
ja case.default.0x1000b6db
jmp dword [eax*4 + 0x1000d910]
sub eax, 0x2028
je case.0x1000b6db.10
sub eax, 1
je case.0x1000b6db.10
xor ecx, ecx
jmp 0x1000b6f7
mov ecx, 1
xor eax, eax
cmp ebx, 0x15
sete al
cmp ecx, eax
jne case.default.0x1000bfbe
test edx, edx
jle 0x1000b727
cmp dword [ebp - 0x4e4c], 0x1db
jne 0x1000b727
dec esi
sub edi, 0xc
mov dword [ebp - 0x4e28], esi
mov dword [ebp - 0x4e34], edi
mov edi, dword [ebp - 0x4e2c]
mov eax, edi
inc edi
mov dword [ebp - 0x4e2c], edi
cmp eax, dword [ebp - 0x4e38]
jge 0x1000d16f
mov ecx, dword [ebp - 0x4e30]
mov eax, dword [ebp - 0x4e3c]
neg eax
mov dword [ecx], eax
lea eax, [edx + 1]
mov dword [ecx + 4], eax
mov edx, dword [ebp - 0x4e28]
mov dword [ecx + 8], 0
add ecx, 0xc
mov dword [ebp - 0x4e30], ecx
jmp 0x1000a39e
mov eax, dword [ebp - 0x4e6c]
mov esi, dword [ebp - 0x4e28]
mov edx, dword [eax + 4]
test edx, edx
jle 0x1000b7be
mov eax, esi
inc esi
mov dword [ebp - 0x4e28], esi
cmp eax, dword [ebp - 0x4e38]
jge 0x1000d16f
mov edi, dword [ebp - 0x4e34]
mov eax, dword [ebp - 0x4e3c]
add eax, 2
mov dword [edi], eax
mov dword [edi + 4], 0
add edi, 0xc
mov dword [ebp - 0x4e34], edi
jmp 0x1000b7c4
mov edi, dword [ebp - 0x4e34]
test ecx, ecx
jle case.default.0x1000bfbe
mov eax, dword [ebp - 0x4e44]
cmp eax, 0x2000
ja 0x1000b825
je case.0x1000b83f.8193
cmp eax, 0xa0
ja 0x1000b817
je case.0x1000b83f.8193
cmp eax, 9
je case.0x1000b83f.8193
cmp eax, 0x20
je case.0x1000b83f.8193
xor ecx, ecx
xor eax, eax
cmp ebx, 0x13
sete al
cmp ecx, eax
jne case.default.0x1000bfbe
test edx, edx
jle 0x1000b727
cmp dword [ebp - 0x4e4c], 0x1c7
jmp 0x1000b715
cmp eax, 0x1680
je case.0x1000b83f.8193
cmp eax, 0x180e
jmp 0x1000b7ec
cmp eax, 0x3000
ja case.0x1000b83f.8203
je case.0x1000b83f.8193
add eax, 0xffffdfff
cmp eax, 0x5e
ja case.0x1000b83f.8203
movzx eax, byte [eax + 0x1000d928]
jmp dword [eax*4 + 0x1000d920]
mov ecx, 1
jmp 0x1000b7f0
mov edx, 2
jmp 0x1000b856
xor edx, edx
mov esi, dword [ebp - 0x4e28]
mov eax, esi
inc esi
mov dword [ebp - 0x4e28], esi
cmp eax, dword [ebp - 0x4e38]
jge 0x1000d16f
mov edi, dword [ebp - 0x4e34]
mov eax, dword [ebp - 0x4e3c]
add eax, 2
mov dword [edi], eax
mov dword [edi + 4], 0
add edi, 0xc
mov dword [ebp - 0x4e34], edi
test ecx, ecx
jle case.default.0x1000bfbe
mov ebx, dword [ebp - 0x4e44]
xor ecx, ecx
cmp ebx, 0x85
ja 0x1000b8da
je case.0x1000b8b8.11
lea eax, [ebx - 0xa]
cmp eax, 3
ja case.default.0x1000bfbe
jmp dword [eax*4 + 0x1000d988]
mov eax, dword [ebp - 0x4e40]
inc eax
cmp eax, dword [ebp - 0x4e78]
jae case.0x1000b8b8.10
cmp byte [eax], 0xa
jne case.0x1000b8b8.10
mov ecx, 1
jmp case.0x1000b8b8.10
mov eax, ebx
sub eax, 0x2028
je case.0x1000b8b8.11
sub eax, 1
jne case.default.0x1000bfbe
mov eax, dword [ebp - 0x4e48]
test dword [eax + 0x18], 0x800000
jne case.default.0x1000bfbe
mov ebx, dword [ebp - 0x4e4c]
cmp ebx, 0x1b2
je 0x1000b915
cmp ebx, 0x1b4
jne 0x1000b925
dec esi
sub edi, 0xc
mov dword [ebp - 0x4e28], esi
mov dword [ebp - 0x4e34], edi
mov ebx, dword [ebp - 0x4e2c]
mov eax, ebx
inc ebx
mov dword [ebp - 0x4e2c], ebx
cmp eax, dword [ebp - 0x4e38]
jge 0x1000d16f
mov eax, dword [ebp - 0x4e3c]
mov edi, dword [ebp - 0x4e30]
add eax, edx
neg eax
mov dword [edi], eax
mov dword [edi + 4], 0
jmp 0x1000b648
mov edx, 2
jmp 0x1000b967
xor edx, edx
mov esi, dword [ebp - 0x4e28]
mov eax, esi
inc esi
mov dword [ebp - 0x4e28], esi
cmp eax, dword [ebp - 0x4e38]
jge 0x1000d16f
mov edi, dword [ebp - 0x4e34]
mov eax, dword [ebp - 0x4e3c]
add eax, 2
mov dword [edi], eax
mov dword [edi + 4], 0
add edi, 0xc
mov dword [ebp - 0x4e34], edi
test ecx, ecx
jle case.default.0x1000bfbe
mov eax, dword [ebp - 0x4e44]
cmp eax, 0x85
ja 0x1000b9c9
je case.0x1000b9c2.10
add eax, 0xfffffff6
cmp eax, 3
ja case.default.0x1000b9c2
jmp dword [eax*4 + 0x1000d998]
sub eax, 0x2028
je case.0x1000b9c2.10
sub eax, 1
je case.0x1000b9c2.10
xor ecx, ecx
jmp 0x1000b9de
mov ecx, 1
xor eax, eax
cmp ebx, 0x15
sete al
cmp ecx, eax
jne case.default.0x1000bfbe
mov ebx, dword [ebp - 0x4e4c]
cmp ebx, 0x1da
je 0x1000ba04
cmp ebx, 0x1dc
jne 0x1000ba14
dec esi
sub edi, 0xc
mov dword [ebp - 0x4e28], esi
mov dword [ebp - 0x4e34], edi
mov edi, dword [ebp - 0x4e2c]
mov eax, edi
inc edi
mov dword [ebp - 0x4e2c], edi
cmp eax, dword [ebp - 0x4e38]
jge 0x1000d16f
mov eax, dword [ebp - 0x4e3c]
mov ecx, dword [ebp - 0x4e30]
add eax, edx
neg eax
mov dword [ecx], eax
mov dword [ecx + 4], 0
jmp 0x1000b758
mov edx, 2
jmp 0x1000ba56
xor edx, edx
mov esi, dword [ebp - 0x4e28]
mov eax, esi
inc esi
mov dword [ebp - 0x4e28], esi
cmp eax, dword [ebp - 0x4e38]
jge 0x1000d16f
mov edi, dword [ebp - 0x4e34]
mov eax, dword [ebp - 0x4e3c]
add eax, 2
mov dword [edi], eax
mov dword [edi + 4], 0
add edi, 0xc
mov dword [ebp - 0x4e34], edi
test ecx, ecx
jle case.default.0x1000bfbe
mov eax, dword [ebp - 0x4e44]
cmp eax, 0x2000
ja 0x1000baf9
je case.0x1000bb13.8193
cmp eax, 0xa0
ja 0x1000baeb
je case.0x1000bb13.8193
cmp eax, 9
je case.0x1000bb13.8193
cmp eax, 0x20
je case.0x1000bb13.8193
xor ecx, ecx
xor eax, eax
cmp ebx, 0x13
sete al
cmp ecx, eax
jne case.default.0x1000bfbe
mov ebx, dword [ebp - 0x4e4c]
cmp ebx, 0x1c6
je 0x1000ba04
cmp ebx, 0x1c8
jmp 0x1000ba02
cmp eax, 0x1680
je case.0x1000bb13.8193
cmp eax, 0x180e
jmp 0x1000baba
cmp eax, 0x3000
ja case.0x1000bb13.8203
je case.0x1000bb13.8193
add eax, 0xffffdfff
cmp eax, 0x5e
ja case.0x1000bb13.8203
movzx eax, byte [eax + 0x1000d9b0]
jmp dword [eax*4 + 0x1000d9a8]
mov ecx, 1
jmp 0x1000babe
cmp edx, 0x1b1
je 0x1000bb67
mov ecx, dword [ebp - 0x4e28]
mov eax, ecx
inc ecx
mov dword [ebp - 0x4e28], ecx
cmp eax, dword [ebp - 0x4e38]
jge 0x1000d16f
mov ecx, dword [ebp - 0x4e34]
mov eax, dword [ebp - 0x4e3c]
add eax, 4
mov dword [ecx], eax
mov dword [ecx + 4], 0
add ecx, 0xc
mov dword [ebp - 0x4e34], ecx
jmp 0x1000bb6d
mov ecx, dword [ebp - 0x4e34]
cmp dword [ebp - 0x4e50], 0
mov eax, dword [ebp - 0x4e6c]
mov edi, dword [eax + 4]
jle case.default.0x1000bfbe
mov eax, dword [ebp - 0x4e44]
xor ebx, ebx
cmp eax, 0x85
ja 0x1000bbc2
je case.0x1000bba0.11
add eax, 0xfffffff6
cmp eax, 3
ja case.default.0x1000bfbe
jmp dword [eax*4 + 0x1000da10]
mov eax, dword [ebp - 0x4e40]
inc eax
cmp eax, dword [ebp - 0x4e78]
jae case.0x1000bba0.10
cmp byte [eax], 0xa
jne case.0x1000bba0.10
mov ebx, 1
jmp case.0x1000bba0.10
sub eax, 0x2028
je case.0x1000bba0.11
sub eax, 1
jne case.default.0x1000bfbe
mov eax, dword [ebp - 0x4e48]
test dword [eax + 0x18], 0x800000
jne case.default.0x1000bfbe
cmp edx, 0x1b5
jne 0x1000bbfc
dec dword [ebp - 0x4e28]
sub ecx, 0xc
mov dword [ebp - 0x4e34], ecx
movzx ecx, byte [esi + 1]
inc edi
movzx eax, byte [esi + 2]
mov edx, dword [ebp - 0x4e2c]
shl ecx, 8
inc edx
or ecx, eax
mov eax, dword [ebp - 0x4e2c]
cmp edi, ecx
jl 0x1000bc48
mov edi, edx
mov dword [ebp - 0x4e2c], edi
cmp eax, dword [ebp - 0x4e38]
jge 0x1000d16f
mov ecx, dword [ebp - 0x4e30]
mov eax, 0xfffffffc
sub eax, dword [ebp - 0x4e3c]
mov dword [ecx + 8], ebx
jmp 0x1000aa53
mov dword [ebp - 0x4e2c], edx
cmp eax, dword [ebp - 0x4e38]
jge 0x1000d16f
mov ecx, dword [ebp - 0x4e30]
mov eax, dword [ebp - 0x4e3c]
mov edx, dword [ebp - 0x4e28]
neg eax
mov dword [ecx + 4], edi
mov edi, dword [ebp - 0x4e2c]
mov dword [ecx], eax
mov dword [ecx + 8], ebx
add ecx, 0xc
mov dword [ebp - 0x4e30], ecx
jmp 0x1000a39e
cmp edx, 0x1d9
je 0x1000bcce
mov ecx, dword [ebp - 0x4e28]
mov eax, ecx
inc ecx
mov dword [ebp - 0x4e28], ecx
cmp eax, dword [ebp - 0x4e38]
jge 0x1000d16f
mov ecx, dword [ebp - 0x4e34]
mov eax, dword [ebp - 0x4e3c]
add eax, 4
mov dword [ecx], eax
mov dword [ecx + 4], 0
add ecx, 0xc
mov dword [ebp - 0x4e34], ecx
cmp dword [ebp - 0x4e50], 0
mov eax, dword [ebp - 0x4e6c]
mov edi, dword [eax + 4]
jle case.default.0x1000bfbe
mov eax, dword [ebp - 0x4e44]
cmp eax, 0x85
ja 0x1000bd02
je case.0x1000bcfb.10
add eax, 0xfffffff6
cmp eax, 3
ja case.default.0x1000bcfb
jmp dword [eax*4 + 0x1000da20]
sub eax, 0x2028
je case.0x1000bcfb.10
sub eax, 1
je case.0x1000bcfb.10
xor ecx, ecx
jmp 0x1000bd17
mov ecx, 1
xor eax, eax
cmp ebx, 0x15
sete al
cmp ecx, eax
jne case.default.0x1000bfbe
cmp edx, 0x1dd
jne 0x1000bd3c
dec dword [ebp - 0x4e28]
sub dword [ebp - 0x4e34], 0xc
movzx ecx, byte [esi + 1]
inc edi
movzx eax, byte [esi + 2]
mov ebx, dword [ebp - 0x4e2c]
shl ecx, 8
or ecx, eax
lea edx, [ebx + 1]
cmp edi, ecx
jl 0x1000bda0
mov edi, edx
mov dword [ebp - 0x4e2c], edi
cmp ebx, dword [ebp - 0x4e38]
jge 0x1000d16f
mov ecx, dword [ebp - 0x4e30]
mov eax, 0xfffffffc
sub eax, dword [ebp - 0x4e3c]
mov edx, dword [ebp - 0x4e28]
mov dword [ecx], eax
mov dword [ecx + 4], 0
mov dword [ecx + 8], 0
add ecx, 0xc
mov dword [ebp - 0x4e30], ecx
jmp 0x1000a39e
mov dword [ebp - 0x4e2c], edx
cmp ebx, dword [ebp - 0x4e38]
jge 0x1000d16f
mov ecx, dword [ebp - 0x4e30]
mov eax, dword [ebp - 0x4e3c]
mov edx, dword [ebp - 0x4e28]
neg eax
mov dword [ecx], eax
mov dword [ecx + 4], edi
mov edi, dword [ebp - 0x4e2c]
mov dword [ecx + 8], 0
add ecx, 0xc
mov dword [ebp - 0x4e30], ecx
jmp 0x1000a39e
cmp edx, 0x1c5
je 0x1000be2a
mov ecx, dword [ebp - 0x4e28]
mov eax, ecx
inc ecx
mov dword [ebp - 0x4e28], ecx
cmp eax, dword [ebp - 0x4e38]
jge 0x1000d16f
mov ecx, dword [ebp - 0x4e34]
mov eax, dword [ebp - 0x4e3c]
add eax, 4
mov dword [ecx], eax
mov dword [ecx + 4], 0
add ecx, 0xc
mov dword [ebp - 0x4e34], ecx
cmp dword [ebp - 0x4e50], 0
mov eax, dword [ebp - 0x4e6c]
mov edi, dword [eax + 4]
jle case.default.0x1000bfbe
mov eax, dword [ebp - 0x4e44]
cmp eax, 0x2000
ja 0x1000be8d
je case.0x1000bea7.8193
cmp eax, 0xa0
ja 0x1000be7f
je case.0x1000bea7.8193
cmp eax, 9
je case.0x1000bea7.8193
cmp eax, 0x20
je case.0x1000bea7.8193
xor ecx, ecx
xor eax, eax
cmp ebx, 0x13
sete al
cmp ecx, eax
jne case.default.0x1000bfbe
cmp edx, 0x1c9
jmp 0x1000bd2d
cmp eax, 0x1680
je case.0x1000bea7.8193
cmp eax, 0x180e
jmp 0x1000be60
cmp eax, 0x3000
ja case.0x1000bea7.8203
je case.0x1000bea7.8193
add eax, 0xffffdfff
cmp eax, 0x5e
ja case.0x1000bea7.8203
movzx eax, byte [eax + 0x1000da38]
jmp dword [eax*4 + 0x1000da30]
mov ecx, 1
jmp 0x1000be64
test ecx, ecx
jle case.default.0x1000bfbe
cmp dword [ebp - 0x4e44], ebx
jne case.default.0x1000bfbe
mov ecx, dword [ebp - 0x4e2c]
mov eax, ecx
inc ecx
mov dword [ebp - 0x4e2c], ecx
cmp eax, dword [ebp - 0x4e38]
jge 0x1000d16f
mov ecx, dword [ebp - 0x4e30]
mov eax, dword [ebp - 0x4e3c]
mov edx, dword [ebp - 0x4e28]
inc eax
add eax, edi
mov edi, dword [ebp - 0x4e2c]
mov dword [ecx], eax
mov dword [ecx + 4], 0
add ecx, 0xc
mov dword [ebp - 0x4e30], ecx
jmp 0x1000a39e
test ecx, ecx
je case.default.0x1000bfbe
cmp dword [ebp - 0x4e54], 0
mov eax, dword [ebp - 0x4e44]
je 0x1000bf57
cmp eax, ebx
je 0x1000bec9
cmp eax, 0x80
jae 0x1000bf4d
mov ecx, dword [ebp - 0x4e5c]
movzx eax, byte [eax + ecx + 0x100]
cmp ebx, eax
jmp 0x1000bec3
or eax, 0xffffffff
cmp ebx, eax
jmp 0x1000bec3
mov ecx, dword [ebp - 0x4e5c]
mov edi, dword [ebp - 0x4e2c]
mov al, byte [eax + ecx]
cmp al, byte [ebx + ecx]
jne 0x1000a89f
mov eax, edi
inc edi
mov dword [ebp - 0x4e2c], edi
cmp eax, dword [ebp - 0x4e38]
jge 0x1000d16f
mov eax, dword [ebp - 0x4e3c]
add eax, 2
jmp 0x1000aa4d
test ecx, ecx
jle case.default.0x1000bfbe
mov ebx, dword [ebp - 0x4e44]
cmp ebx, 0x85
ja 0x1000c046
je case.0x1000bfbe.11
lea eax, [ebx - 0xa]
cmp eax, 3
ja case.default.0x1000bfbe
jmp dword [eax*4 + 0x1000da98]
mov eax, dword [ebp - 0x4e40]
mov edi, dword [ebp - 0x4e2c]
inc eax
cmp eax, dword [ebp - 0x4e78]
jb 0x1000c036
mov eax, edi
inc edi
mov dword [ebp - 0x4e2c], edi
cmp eax, dword [ebp - 0x4e38]
jge 0x1000d16f
mov ecx, dword [ebp - 0x4e30]
mov eax, dword [ebp - 0x4e3c]
mov edx, dword [ebp - 0x4e28]
inc eax
mov dword [ecx], eax
mov eax, dword [ebp - 0x4e48]
mov dword [ecx + 4], 0
add ecx, 0xc
mov dword [ebp - 0x4e30], ecx
test dword [eax + 0x18], 0x8000000
je 0x1000a39e
mov dword [ebp - 0x4e8c], 1
jmp 0x1000a39e
cmp byte [eax], 0xa
mov eax, edi
jne 0x1000aa33
jmp 0x1000a819
mov eax, ebx
sub eax, 0x2028
je case.0x1000bfbe.11
sub eax, 1
jne case.default.0x1000bfbe
mov eax, dword [ebp - 0x4e48]
test dword [eax + 0x18], 0x800000
jne case.default.0x1000bfbe
jmp case.0x1000bfbe.10
test ecx, ecx
jle case.default.0x1000bfbe
mov ebx, dword [ebp - 0x4e44]
cmp ebx, 0x85
ja 0x1000c09f
je case.default.0x1000bfbe
lea eax, [ebx - 0xa]
cmp eax, 3
ja case.0x1000bfbe.10
jmp dword [eax*4 + 0x1000daa8]
mov eax, ebx
sub eax, 0x2028
je case.default.0x1000bfbe
sub eax, 1
jmp 0x1000aa25
test ecx, ecx
jle case.default.0x1000bfbe
mov ebx, dword [ebp - 0x4e44]
cmp ebx, 0x85
ja 0x1000c0e3
je case.0x1000bfbe.10
lea eax, [ebx - 0xa]
cmp eax, 3
ja case.default.0x1000bfbe
jmp dword [eax*4 + 0x1000dab8]
mov eax, ebx
sub eax, 0x2028
je case.0x1000bfbe.10
sub eax, 1
jne case.default.0x1000bfbe
jmp case.0x1000bfbe.10
test ecx, ecx
jle case.default.0x1000bfbe
mov ebx, dword [ebp - 0x4e44]
cmp ebx, 0x2000
ja 0x1000c150
je case.default.0x1000bfbe
cmp ebx, 0xa0
ja 0x1000c139
je case.default.0x1000bfbe
cmp ebx, 9
je case.default.0x1000bfbe
cmp ebx, 0x20
jmp 0x1000aa25
cmp ebx, 0x1680
je case.default.0x1000bfbe
cmp ebx, 0x180e
jmp 0x1000aa25
cmp ebx, 0x3000
ja case.0x1000bfbe.10
je case.default.0x1000bfbe
lea eax, [ebx - 0x2001]
cmp eax, 0x5e
ja case.0x1000bfbe.10
movzx eax, byte [eax + 0x1000dad0]
jmp dword [eax*4 + 0x1000dac8]
test ecx, ecx
jle case.default.0x1000bfbe
mov ebx, dword [ebp - 0x4e44]
cmp ebx, 0x2000
ja 0x1000c1dd
je case.0x1000bfbe.10
cmp ebx, 0xa0
ja 0x1000c1c0
je case.0x1000bfbe.10
cmp ebx, 9
je case.0x1000bfbe.10
cmp ebx, 0x20
je case.0x1000bfbe.10
jmp case.default.0x1000bfbe
cmp ebx, 0x1680
je case.0x1000bfbe.10
cmp ebx, 0x180e
je case.0x1000bfbe.10
jmp case.default.0x1000bfbe
cmp ebx, 0x3000
ja case.default.0x1000bfbe
je case.0x1000bfbe.10
lea eax, [ebx - 0x2001]
cmp eax, 0x5e
ja case.default.0x1000bfbe
movzx eax, byte [eax + 0x1000db38]
jmp dword [eax*4 + 0x1000db30]
test ecx, ecx
jle case.default.0x1000bfbe
cmp dword [ebp - 0x4e44], ebx
je case.default.0x1000bfbe
jmp 0x1000bec9
test ecx, ecx
jle case.default.0x1000bfbe
cmp dword [ebp - 0x4e54], 0
je 0x1000c242
cmp ebx, 0x80
jb 0x1000c242
mov eax, ebx
jmp 0x1000c250
mov eax, dword [ebp - 0x4e5c]
movzx eax, byte [ebx + eax + 0x100]
mov ecx, dword [ebp - 0x4e44]
cmp ecx, ebx
je case.default.0x1000bfbe
cmp ecx, eax
je case.default.0x1000bfbe
jmp 0x1000bec9
sub edx, 0xd
mov ecx, 1
mov dword [ebp - 0x4e4c], edx
jmp 0x1000c281
mov ecx, dword [ebp - 0x4e80]
mov eax, dword [ebp - 0x4e6c]
mov esi, dword [ebp - 0x4e28]
mov edx, dword [eax + 4]
test edx, edx
jle 0x1000c2cc
mov eax, esi
inc esi
mov dword [ebp - 0x4e28], esi
cmp eax, dword [ebp - 0x4e38]
jge 0x1000d16f
mov eax, dword [ebp - 0x4e3c]
inc eax
add eax, edi
mov edi, dword [ebp - 0x4e34]
mov dword [edi], eax
mov dword [edi + 4], 0
add edi, 0xc
mov dword [ebp - 0x4e34], edi
jmp 0x1000c2d2
mov edi, dword [ebp - 0x4e34]
cmp dword [ebp - 0x4e50], 0
jle case.default.0x1000bfbe
or eax, 0xffffffff
test ecx, ecx
je 0x1000c305
cmp dword [ebp - 0x4e54], 0
je 0x1000c2f7
cmp ebx, 0x80
jae 0x1000c305
mov eax, dword [ebp - 0x4e5c]
movzx eax, byte [ebx + eax + 0x100]
mov ecx, dword [ebp - 0x4e44]
cmp ecx, ebx
je 0x1000c317
cmp ecx, eax
je 0x1000c317
xor ecx, ecx
jmp 0x1000c31c
mov ecx, 1
mov ebx, dword [ebp - 0x4e4c]
xor eax, eax
cmp ebx, 0x3b
setl al
cmp ecx, eax
jne case.default.0x1000bfbe
test edx, edx
jle 0x1000c350
cmp ebx, 0x2b
je 0x1000c340
cmp ebx, 0x45
jne 0x1000c350
dec esi
sub edi, 0xc
mov dword [ebp - 0x4e28], esi
mov dword [ebp - 0x4e34], edi
mov edi, dword [ebp - 0x4e2c]
mov eax, edi
inc edi
mov dword [ebp - 0x4e2c], edi
cmp eax, dword [ebp - 0x4e38]
jge 0x1000d16f
mov ecx, dword [ebp - 0x4e30]
mov eax, dword [ebp - 0x4e3c]
mov dword [ecx], eax
lea eax, [edx + 1]
mov edx, dword [ebp - 0x4e28]
mov dword [ecx + 4], eax
add ecx, 0xc
mov dword [ebp - 0x4e30], ecx
jmp 0x1000a39e
mov ecx, 1
sub edx, 0xd
jmp 0x1000c3a3
mov ecx, dword [ebp - 0x4e80]
mov esi, dword [ebp - 0x4e28]
mov eax, esi
inc esi
mov dword [ebp - 0x4e28], esi
cmp eax, dword [ebp - 0x4e38]
jge 0x1000d16f
mov esi, dword [ebp - 0x4e34]
mov eax, dword [ebp - 0x4e3c]
inc eax
add eax, edi
mov dword [esi], eax
mov dword [esi + 4], 0
add esi, 0xc
cmp dword [ebp - 0x4e50], 0
mov dword [ebp - 0x4e34], esi
jle case.default.0x1000bfbe
or eax, 0xffffffff
test ecx, ecx
je 0x1000c412
cmp dword [ebp - 0x4e54], 0
je 0x1000c404
cmp ebx, 0x80
jae 0x1000c412
mov eax, dword [ebp - 0x4e5c]
movzx eax, byte [ebx + eax + 0x100]
mov ecx, dword [ebp - 0x4e44]
cmp ecx, ebx
je 0x1000c424
cmp ecx, eax
je 0x1000c424
xor ecx, ecx
jmp 0x1000c429
mov ecx, 1
xor eax, eax
cmp edx, 0x3b
setl al
cmp ecx, eax
jne case.default.0x1000bfbe
cmp edx, 0x2c
je 0x1000c443
cmp edx, 0x46
jne 0x1000c45b
mov edx, dword [ebp - 0x4e28]
dec edx
sub esi, 0xc
mov dword [ebp - 0x4e28], edx
mov dword [ebp - 0x4e34], esi
jmp 0x1000c461
mov edx, dword [ebp - 0x4e28]
mov ecx, dword [ebp - 0x4e2c]
mov eax, ecx
inc ecx
mov dword [ebp - 0x4e2c], ecx
cmp eax, dword [ebp - 0x4e38]
jge 0x1000d16f
mov ecx, dword [ebp - 0x4e30]
mov eax, dword [ebp - 0x4e3c]
inc eax
add eax, edi
mov edi, dword [ebp - 0x4e2c]
mov dword [ecx], eax
mov dword [ecx + 4], 0
add ecx, 0xc
mov dword [ebp - 0x4e30], ecx
jmp 0x1000a39e
mov ecx, 1
sub edx, 0xd
jmp 0x1000c4b8
mov ecx, dword [ebp - 0x4e80]
mov esi, dword [ebp - 0x4e28]
mov eax, esi
inc esi
mov dword [ebp - 0x4e28], esi
cmp eax, dword [ebp - 0x4e38]
jge 0x1000d16f
mov esi, dword [ebp - 0x4e3c]
lea eax, [esi + 1]
add eax, edi
mov edi, dword [ebp - 0x4e34]
mov dword [edi], eax
mov dword [edi + 4], 0
add edi, 0xc
cmp dword [ebp - 0x4e50], 0
mov dword [ebp - 0x4e34], edi
jle case.default.0x1000bfbe
or eax, 0xffffffff
test ecx, ecx
je 0x1000c529
cmp dword [ebp - 0x4e54], 0
je 0x1000c51b
cmp ebx, 0x80
jae 0x1000c529
mov eax, dword [ebp - 0x4e5c]
movzx eax, byte [ebx + eax + 0x100]
mov ecx, dword [ebp - 0x4e44]
cmp ecx, ebx
je 0x1000c53b
cmp ecx, eax
je 0x1000c53b
xor ecx, ecx
jmp 0x1000c540
mov ecx, 1
xor eax, eax
cmp edx, 0x3b
setl al
cmp ecx, eax
jne case.default.0x1000bfbe
cmp edx, 0x2a
je 0x1000c55a
cmp edx, 0x44
jne 0x1000c584
mov edx, dword [ebp - 0x4e28]
sub edi, 0xc
mov dword [ebp - 0x4e34], edi
dec edx
mov edi, dword [ebp - 0x4e2c]
mov eax, edi
inc edi
mov dword [ebp - 0x4e28], edx
cmp eax, dword [ebp - 0x4e38]
jmp 0x1000b176
mov edi, dword [ebp - 0x4e2c]
mov eax, edi
mov edx, dword [ebp - 0x4e28]
inc edi
cmp eax, dword [ebp - 0x4e38]
jmp 0x1000b176
mov ecx, 1
sub edx, 0xd
jmp 0x1000c5ae
mov ecx, dword [ebp - 0x4e80]
cmp dword [ebp - 0x4e50], 0
mov eax, dword [ebp - 0x4e6c]
mov edi, dword [eax + 4]
jle case.default.0x1000bfbe
or eax, 0xffffffff
test ecx, ecx
je 0x1000c5ea
cmp dword [ebp - 0x4e54], 0
je 0x1000c5dc
cmp ebx, 0x80
jae 0x1000c5ea
mov eax, dword [ebp - 0x4e5c]
movzx eax, byte [ebx + eax + 0x100]
mov ecx, dword [ebp - 0x4e44]
cmp ecx, ebx
je 0x1000c5fc
cmp ecx, eax
je 0x1000c5fc
xor ecx, ecx
jmp 0x1000c601
mov ecx, 1
xor eax, eax
cmp edx, 0x3b
setl al
cmp ecx, eax
jne case.default.0x1000bfbe
movzx ecx, byte [esi + 1]
inc edi
mov ebx, dword [ebp - 0x4e2c]
movzx eax, byte [esi + 2]
shl ecx, 8
or ecx, eax
lea edx, [ebx + 1]
cmp edi, ecx
jl 0x1000b30c
mov edi, edx
mov dword [ebp - 0x4e2c], edi
cmp ebx, dword [ebp - 0x4e38]
jge 0x1000d16f
mov ecx, dword [ebp - 0x4e3c]
mov eax, dword [ebp - 0x4e7c]
add ecx, 3
add eax, ecx
jmp 0x1000aa4d
mov ecx, 1
sub edx, 0xd
jmp 0x1000c66a
mov ecx, dword [ebp - 0x4e80]
mov eax, dword [ebp - 0x4e28]
inc dword [ebp - 0x4e28]
cmp eax, dword [ebp - 0x4e38]
jge 0x1000d16f
mov eax, dword [ebp - 0x4e3c]
add eax, 3
add eax, edi
mov edi, dword [ebp - 0x4e34]
mov dword [edi], eax
mov eax, dword [ebp - 0x4e6c]
mov dword [edi + 4], 0
add edi, 0xc
cmp dword [ebp - 0x4e50], 0
mov dword [ebp - 0x4e34], edi
mov edi, dword [eax + 4]
jle case.default.0x1000bfbe
or eax, 0xffffffff
test ecx, ecx
je 0x1000c6e1
cmp dword [ebp - 0x4e54], 0
je 0x1000c6d3
cmp ebx, 0x80
jae 0x1000c6e1
mov eax, dword [ebp - 0x4e5c]
movzx eax, byte [ebx + eax + 0x100]
mov ecx, dword [ebp - 0x4e44]
cmp ecx, ebx
je 0x1000c6f3
cmp ecx, eax
je 0x1000c6f3
xor ecx, ecx
jmp 0x1000c6f8
mov ecx, 1
xor eax, eax
cmp edx, 0x3b
setl al
cmp ecx, eax
jne case.default.0x1000bfbe
cmp edx, 0x2d
je 0x1000c712
cmp edx, 0x47
jne 0x1000c71f
dec dword [ebp - 0x4e28]
sub dword [ebp - 0x4e34], 0xc
movzx ecx, byte [esi + 1]
inc edi
mov ebx, dword [ebp - 0x4e2c]
movzx eax, byte [esi + 2]
shl ecx, 8
or ecx, eax
lea edx, [ebx + 1]
cmp edi, ecx
jl 0x1000b30c
mov edi, edx
mov dword [ebp - 0x4e2c], edi
cmp ebx, dword [ebp - 0x4e38]
jge 0x1000d16f
mov ecx, dword [ebp - 0x4e3c]
mov eax, dword [ebp - 0x4e7c]
add ecx, 3
add eax, ecx
jmp 0x1000aa4d
mov ebx, dword [ebp - 0x4e4c]
xor edx, edx
cmp ebx, 0x70
je 0x1000c7b1
lea edi, [esi + 0x21]
test ecx, ecx
jle 0x1000c7de
mov eax, dword [ebp - 0x4e44]
cmp eax, 0xff
jbe 0x1000c791
cmp ebx, 0x6f
sete dl
jmp 0x1000c7de
mov ecx, dword [ebp - 0x4eec]
mov edx, eax
shr edx, 3
mov eax, 1
shl eax, cl
test byte [edx + esi + 1], al
mov edx, 0
setne dl
jmp 0x1000c7de
movzx edi, byte [esi + 1]
movzx eax, byte [esi + 2]
shl edi, 8
or edi, eax
add edi, esi
test ecx, ecx
jle 0x1000c7de
push dword [ebp - 0x4e54]
add esi, 3
push esi
push dword [ebp - 0x4e44]
call fcn.1001e370
add esp, 0xc
mov edx, eax
movzx ecx, byte [edi]
mov ebx, edi
sub ebx, dword [ebp - 0x4e68]
add ecx, 0xffffff9e
cmp ecx, 0xb
ja case.default.0x1000c7fc
movzx eax, byte [ecx + 0x1000dba8]
jmp dword [eax*4 + 0x1000db98]
mov ecx, dword [ebp - 0x4e28]
mov eax, ecx
inc ecx
mov dword [ebp - 0x4e28], ecx
cmp eax, dword [ebp - 0x4e38]
jge 0x1000d16f
mov ecx, dword [ebp - 0x4e34]
lea eax, [ebx + 1]
mov dword [ecx], eax
mov dword [ecx + 4], 0
add ecx, 0xc
test edx, edx
mov dword [ebp - 0x4e34], ecx
mov edx, dword [ebp - 0x4e28]
mov esi, ecx
je 0x1000a392
mov cl, byte [edi]
cmp cl, 0x6a
jne 0x1000c857
dec edx
mov dword [ebp - 0x4e28], edx
mov ebx, dword [ebp - 0x4e2c]
mov eax, ebx
inc ebx
mov dword [ebp - 0x4e2c], ebx
cmp eax, dword [ebp - 0x4e38]
jge 0x1000d16f
mov edi, dword [ebp - 0x4e30]
mov eax, dword [ebp - 0x4e3c]
mov dword [edi], eax
mov eax, dword [ebp - 0x4e34]
mov dword [edi + 4], 0
add eax, 0xfffffff4
add edi, 0xc
cmp cl, 0x6a
mov dword [ebp - 0x4e30], edi
cmovne eax, esi
mov dword [ebp - 0x4e34], eax
jmp 0x1000a392
mov eax, dword [ebp - 0x4e6c]
mov ecx, dword [eax + 4]
test ecx, ecx
jle 0x1000c8f1
mov esi, dword [ebp - 0x4e28]
mov eax, esi
inc esi
mov dword [ebp - 0x4e28], esi
mov esi, dword [ebp - 0x4e38]
cmp eax, esi
jge 0x1000d16f
lea eax, [ebx + 1]
mov ebx, dword [ebp - 0x4e34]
mov dword [ebx], eax
mov dword [ebx + 4], 0
add ebx, 0xc
mov dword [ebp - 0x4e34], ebx
jmp 0x1000c8fd
mov ebx, dword [ebp - 0x4e34]
mov esi, dword [ebp - 0x4e38]
test edx, edx
mov edx, dword [ebp - 0x4e28]
je 0x1000a392
test ecx, ecx
jle 0x1000c924
cmp byte [edi], 0x6b
jne 0x1000c924
dec edx
sub ebx, 0xc
mov dword [ebp - 0x4e28], edx
mov dword [ebp - 0x4e34], ebx
mov ebx, dword [ebp - 0x4e2c]
mov eax, ebx
inc ebx
mov dword [ebp - 0x4e2c], ebx
cmp eax, esi
jge 0x1000d16f
mov edi, dword [ebp - 0x4e30]
mov eax, dword [ebp - 0x4e3c]
mov dword [edi], eax
lea eax, [ecx + 1]
mov ecx, edi
mov edi, ebx
mov dword [ecx + 4], eax
add ecx, 0xc
mov dword [ebp - 0x4e30], ecx
jmp 0x1000a39e
mov ecx, dword [ebp - 0x4e28]
mov eax, ecx
inc ecx
mov dword [ebp - 0x4e28], ecx
cmp eax, dword [ebp - 0x4e38]
jge 0x1000d16f
mov ecx, dword [ebp - 0x4e34]
inc ebx
mov dword [ecx], ebx
mov dword [ecx + 4], 0
add ecx, 0xc
test edx, edx
mov dword [ebp - 0x4e34], ecx
mov edx, dword [ebp - 0x4e28]
mov esi, ecx
je 0x1000a392
mov cl, byte [edi]
cmp cl, 0x6c
jne 0x1000c9b3
dec edx
mov dword [ebp - 0x4e28], edx
mov edi, dword [ebp - 0x4e2c]
mov eax, edi
inc edi
mov dword [ebp - 0x4e2c], edi
cmp eax, dword [ebp - 0x4e38]
jge 0x1000d16f
mov edi, dword [ebp - 0x4e30]
mov eax, dword [ebp - 0x4e34]
add eax, 0xfffffff4
mov dword [edi], ebx
mov dword [edi + 4], 0
add edi, 0xc
cmp cl, 0x6c
mov dword [ebp - 0x4e30], edi
cmovne eax, esi
mov dword [ebp - 0x4e34], eax
jmp 0x1000a392
mov eax, dword [ebp - 0x4e6c]
movzx ecx, byte [edi + 1]
shl ecx, 8
mov esi, dword [eax + 4]
movzx eax, byte [edi + 2]
or ecx, eax
cmp esi, ecx
jl 0x1000ca50
mov ecx, dword [ebp - 0x4e28]
mov eax, ecx
inc ecx
mov dword [ebp - 0x4e28], ecx
cmp eax, dword [ebp - 0x4e38]
jge 0x1000d16f
mov ecx, dword [ebp - 0x4e34]
lea eax, [ebx + 5]
mov dword [ecx], eax
mov dword [ecx + 4], 0
add ecx, 0xc
mov dword [ebp - 0x4e34], ecx
test edx, edx
je case.default.0x1000bfbe
movzx edx, byte [edi + 3]
movzx eax, byte [edi + 4]
shl edx, 8
or edx, eax
cmp byte [edi], 0x6d
jne 0x1000ca88
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
shl ecx, 8
or ecx, eax
cmp esi, ecx
jl 0x1000ca88
dec dword [ebp - 0x4e28]
sub dword [ebp - 0x4e34], 0xc
inc esi
cmp esi, edx
jl 0x1000cab4
test edx, edx
je 0x1000cab4
mov edi, dword [ebp - 0x4e2c]
mov eax, edi
inc edi
mov dword [ebp - 0x4e2c], edi
cmp eax, dword [ebp - 0x4e38]
jge 0x1000d16f
lea eax, [ebx + 5]
jmp 0x1000aa4d
mov edi, dword [ebp - 0x4e2c]
mov eax, edi
inc edi
mov dword [ebp - 0x4e2c], edi
cmp eax, dword [ebp - 0x4e38]
jge 0x1000d16f
mov ecx, dword [ebp - 0x4e30]
mov eax, dword [ebp - 0x4e3c]
mov edx, dword [ebp - 0x4e28]
mov dword [ecx], eax
mov dword [ecx + 4], esi
add ecx, 0xc
mov dword [ebp - 0x4e30], ecx
jmp 0x1000a39e
mov edi, dword [ebp - 0x4e2c]
test edx, edx
je 0x1000a89f
mov eax, edi
inc edi
mov dword [ebp - 0x4e2c], edi
cmp eax, dword [ebp - 0x4e38]
jge 0x1000d16f
mov ecx, dword [ebp - 0x4e30]
mov dword [ecx], ebx
jmp 0x1000aa55
inc dword [ebp - 0x4ea4]
jmp case.default.0x1000bfbe
movzx edi, byte [esi + 1]
movzx eax, byte [esi + 2]
shl edi, 8
or edi, eax
add edi, esi
cmp byte [edi], 0x77
jne 0x1000cb57
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
shl ecx, 8
or ecx, eax
add edi, ecx
cmp byte [edi], 0x77
je 0x1000cb43
push dword [ebp + 0x28]
mov ecx, dword [ebp - 0x4e40]
lea eax, [ebp - 0x3e84]
push 0x3e8
push eax
push 2
lea eax, [ebp - 0x4f00]
push eax
mov eax, ecx
sub eax, dword [ebp - 0x4e58]
push eax
push ecx
push esi
push dword [ebp - 0x4e48]
call fcn.10009860
add esp, 0x24
cmp eax, 0xfffffff0
je case.0x1000a02e.3
mov ebx, dword [ebp - 0x4e4c]
cmp ebx, 0x7d
je 0x1000cbab
cmp ebx, 0x7f
je 0x1000cbab
xor ecx, ecx
jmp 0x1000cbb0
mov ecx, 1
mov edx, dword [ebp - 0x4e28]
not eax
shr eax, 0x1f
cmp eax, ecx
jne 0x1000a392
mov eax, edx
inc edx
mov dword [ebp - 0x4e28], edx
cmp eax, dword [ebp - 0x4e38]
jge 0x1000d16f
mov eax, dword [ebp - 0x4e34]
sub edi, dword [ebp - 0x4e68]
add edi, 3
mov dword [eax], edi
mov edi, eax
mov dword [edi + 4], 0
add edi, 0xc
mov dword [ebp - 0x4e34], edi
jmp 0x1000a392
movzx edi, byte [esi + 1]
movzx eax, byte [esi + 2]
shl edi, 8
or edi, eax
cmp byte [esi + 3], 0x76
jne 0x1000ccf1
mov edx, dword [sym.pcre3.dll_pcre_callout]
test edx, edx
je 0x1000cce8
movzx eax, byte [esi + 4]
mov ebx, dword [ebp - 0x4e58]
movzx ecx, byte [esi + 5]
mov dword [ebp - 0x4ed4], eax
mov eax, dword [ebp - 0x4ea0]
mov dword [ebp - 0x4ed0], eax
mov eax, dword [ebp - 0x4e78]
sub eax, ebx
shl ecx, 8
mov dword [ebp - 0x4ec8], eax
mov eax, dword [ebp - 0x4e74]
sub eax, ebx
mov dword [ebp - 0x4ed8], 1
mov dword [ebp - 0x4ec4], eax
mov eax, dword [ebp - 0x4e40]
sub eax, ebx
mov dword [ebp - 0x4ecc], ebx
mov dword [ebp - 0x4ec0], eax
movzx eax, byte [esi + 6]
or ecx, eax
mov dword [ebp - 0x4ebc], 1
movzx eax, byte [esi + 8]
mov dword [ebp - 0x4eb0], ecx
movzx ecx, byte [esi + 7]
shl ecx, 8
or ecx, eax
mov dword [ebp - 0x4eb8], 0xffffffff
mov eax, dword [ebp - 0x4e48]
mov dword [ebp - 0x4eac], ecx
mov dword [ebp - 0x4ea8], 0
mov eax, dword [eax + 0x2c]
mov dword [ebp - 0x4eb4], eax
lea eax, [ebp - 0x4ed8]
push eax
call edx
add esp, 4
test eax, eax
js 0x1000d174
jg case.default.0x1000bfbe
movzx eax, byte [0x1003ea76]
add esi, eax
mov bl, byte [esi + 3]
lea edx, [esi + 3]
cmp bl, 0x8d
je 0x1000d50f
cmp bl, 0x8e
je 0x1000d50f
cmp bl, 0x90
je 0x1000d50f
cmp bl, 0x91
je 0x1000ce3a
cmp bl, 0x9d
je 0x1000ce3a
cmp bl, 0x8f
jne 0x1000cd72
movzx ecx, byte [esi + 4]
movzx eax, byte [esi + 5]
shl ecx, 8
or ecx, eax
cmp ecx, 0xffff
jne 0x1000d50f
mov edx, dword [ebp - 0x4e28]
cmp edx, dword [ebp - 0x4e38]
jge 0x1000d16f
mov eax, dword [ebp - 0x4e48]
cmp dword [eax + 0x30], 0
mov eax, dword [ebp - 0x4e3c]
je 0x1000ce52
add eax, 6
jmp 0x1000ce57
movzx esi, byte [edx + 1]
movzx eax, byte [edx + 2]
shl esi, 8
or esi, eax
add esi, edx
cmp byte [esi], 0x77
jne 0x1000cda4
nop word [eax + eax]
movzx ecx, byte [esi + 1]
movzx eax, byte [esi + 2]
shl ecx, 8
or ecx, eax
add esi, ecx
cmp byte [esi], 0x77
je 0x1000cd90
push dword [ebp + 0x28]
mov ecx, dword [ebp - 0x4e40]
lea eax, [ebp - 0x3e84]
push 0x3e8
push eax
push 0x3e8
lea eax, [ebp - 0x4e24]
push eax
mov eax, ecx
sub eax, dword [ebp - 0x4e58]
push eax
push ecx
push edx
push dword [ebp - 0x4e48]
call fcn.10009860
add esp, 0x24
cmp eax, 0xfffffff0
je case.0x1000a02e.3
cmp bl, 0x7d
je 0x1000cdf5
cmp bl, 0x7f
je 0x1000cdf5
xor ecx, ecx
jmp 0x1000cdfa
mov ecx, 1
mov edx, dword [ebp - 0x4e28]
not eax
shr eax, 0x1f
cmp edx, dword [ebp - 0x4e38]
jge 0x1000d16f
cmp eax, ecx
mov ecx, 0xc
jne 0x1000ce2d
mov edi, dword [ebp - 0x4e34]
sub esi, dword [ebp - 0x4e68]
add esi, 3
mov dword [edi], esi
jmp 0x1000ce64
mov eax, dword [ebp - 0x4e3c]
add eax, 3
add eax, edi
jmp 0x1000ce5c
mov edx, dword [ebp - 0x4e28]
cmp edx, dword [ebp - 0x4e38]
jge 0x1000d16f
mov eax, dword [ebp - 0x4e3c]
add eax, 3
add eax, edi
mov ecx, 0xc
mov edi, dword [ebp - 0x4e34]
mov dword [edi], eax
mov eax, 1
mov dword [edi + 4], 0
add edx, eax
add edi, ecx
mov dword [ebp - 0x4e28], edx
mov dword [ebp - 0x4e34], edi
jmp 0x1000a392
movzx edx, byte [esi + 1]
movzx eax, byte [esi + 2]
mov ebx, dword [ebp - 0x4e48]
shl edx, 8
or edx, eax
add edx, dword [ebp - 0x4e68]
cmp edx, dword [ebx]
jne 0x1000cea6
xor ecx, ecx
jmp 0x1000ceb3
movzx ecx, byte [edx + 3]
movzx eax, byte [edx + 4]
shl ecx, 8
or ecx, eax
mov eax, dword [ebx + 0x30]
test eax, eax
je 0x1000ceda
nop word [eax + eax]
cmp ecx, dword [eax + 4]
jne 0x1000ced4
mov esi, dword [ebp - 0x4e40]
cmp esi, dword [eax + 8]
je 0x1000d525
mov eax, dword [eax]
test eax, eax
jne 0x1000cec0
push dword [ebp + 0x28]
mov eax, dword [ebx + 0x30]
mov esi, dword [ebp - 0x4e40]
mov edi, dword [ebp - 0x4e58]
mov dword [ebp - 0x4ef8], eax
lea eax, [ebp - 0x4ef8]
push 0x3e8
mov dword [ebx + 0x30], eax
lea eax, [ebp - 0x4e24]
push eax
push 0x3e8
lea eax, [ebp - 0xfa4]
mov dword [ebp - 0x4ef4], ecx
push eax
mov eax, esi
mov dword [ebp - 0x4ef0], esi
sub eax, edi
push eax
push esi
push edx
push ebx
call fcn.10009860
mov ecx, dword [ebp - 0x4ef8]
add esp, 0x24
mov dword [ebx + 0x30], ecx
test eax, eax
je 0x1000d53b
jle 0x1000d047
lea ebx, [eax*2 - 2]
test ebx, ebx
js case.default.0x1000bfbe
lea eax, [ebp - 0xfa0]
jmp 0x1000cf66
mov edi, dword [ebp - 0x4e58]
mov eax, dword [eax + ebx*4]
mov esi, eax
mov ecx, dword [ebp + ebx*4 - 0xfa4]
sub esi, ecx
cmp dword [ebp - 0x4e54], 0
je 0x1000cf9b
lea edx, [ecx + edi]
add edi, eax
cmp edx, edi
jae 0x1000cf9b
mov cl, byte [edx]
lea eax, [esi - 1]
and cl, 0xc0
inc edx
cmp cl, 0x80
cmovne eax, esi
mov esi, eax
cmp edx, edi
jb 0x1000cf86
test esi, esi
jle 0x1000cfeb
mov edi, dword [ebp - 0x4e2c]
mov eax, edi
inc edi
mov dword [ebp - 0x4e2c], edi
cmp eax, dword [ebp - 0x4e38]
jge 0x1000d16f
mov ecx, dword [ebp - 0x4e30]
mov eax, 0xfffffffd
sub eax, dword [ebp - 0x4e3c]
mov edx, dword [ebp - 0x4e28]
mov dword [ecx], eax
lea eax, [esi - 1]
mov dword [ecx + 4], 0
mov dword [ecx + 8], eax
add ecx, 0xc
mov dword [ebp - 0x4e30], ecx
jmp 0x1000d033
mov edx, dword [ebp - 0x4e28]
mov eax, edx
inc edx
mov dword [ebp - 0x4e28], edx
cmp eax, dword [ebp - 0x4e38]
jge 0x1000d16f
mov ecx, dword [ebp - 0x4e34]
mov eax, dword [ebp - 0x4e3c]
mov edi, dword [ebp - 0x4e2c]
add eax, 3
mov dword [ecx], eax
mov dword [ecx + 4], 0
add ecx, 0xc
mov dword [ebp - 0x4e34], ecx
mov ecx, dword [ebp - 0x4e30]
sub ebx, 2
lea eax, [ebp - 0xfa0]
jns 0x1000cf60
jmp 0x1000a39e
cmp eax, 0xffffffff
jne 0x1000d174
jmp case.default.0x1000bfbe
mov ecx, dword [ebp - 0x4e40]
mov edi, ecx
cmp edx, 0x94
jne 0x1000d066
inc esi
push dword [ebp + 0x28]
lea edx, [ebp - 0x2ee4]
mov eax, ecx
sub eax, dword [ebp - 0x4e58]
xor ebx, ebx
push 0x3e8
push edx
push 2
lea edx, [ebp - 0x4ee0]
mov dword [ebp - 0x4e94], eax
push edx
push eax
push ecx
push esi
push dword [ebp - 0x4e48]
call fcn.10009860
add esp, 0x24
test eax, eax
js 0x1000d0f3
nop dword [eax]
nop word [eax + eax]
mov eax, dword [ebp - 0x4edc]
sub eax, dword [ebp - 0x4ee0]
je 0x1000d0fc
push dword [ebp + 0x28]
add edi, eax
inc ebx
push 0x3e8
lea eax, [ebp - 0x2ee4]
push eax
push 2
lea eax, [ebp - 0x4ee0]
push eax
push dword [ebp - 0x4e94]
push edi
push esi
push dword [ebp - 0x4e48]
call fcn.10009860
add esp, 0x24
test eax, eax
jns 0x1000d0b0
cmp eax, 0xffffffff
jne 0x1000d174
test ebx, ebx
jg 0x1000d110
cmp dword [ebp - 0x4e4c], 0x94
jne case.default.0x1000bfbe
movzx ecx, byte [esi + 1]
movzx eax, byte [esi + 2]
shl ecx, 8
or ecx, eax
add esi, ecx
cmp byte [esi], 0x77
je 0x1000d110
sub esi, dword [ebp - 0x4e68]
mov eax, dword [ebp - 0x4e90]
add esi, 3
mov edx, dword [ebp - 0x4e28]
inc eax
cmp eax, edx
jl 0x1000d185
cmp dword [ebp - 0x4e2c], 0
jne 0x1000d185
cmp dword [ebp - 0x4e38], 0
mov dword [ebp - 0x4e40], edi
mov edi, 1
mov dword [ebp - 0x4e50], 0
mov dword [ebp - 0x4e2c], edi
jg 0x1000b182
mov eax, 0xffffffed
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100218b6
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0x4e40]
mov ebx, edi
sub ebx, eax
mov edx, eax
cmp dword [ebp - 0x4e54], 0
je 0x1000d1b5
cmp eax, edi
jae 0x1000d1b5
nop
mov cl, byte [edx]
lea eax, [ebx - 1]
and cl, 0xc0
inc edx
cmp cl, 0x80
cmovne eax, ebx
mov ebx, eax
cmp edx, edi
jb 0x1000d1a0
mov edi, dword [ebp - 0x4e2c]
mov eax, edi
inc edi
mov dword [ebp - 0x4e2c], edi
cmp eax, dword [ebp - 0x4e38]
jge 0x1000d16f
mov ecx, dword [ebp - 0x4e30]
lea eax, [ebx - 1]
neg esi
mov dword [ecx], esi
mov dword [ecx + 8], eax
jmp 0x1000aa55
push dword [ebp + 0x28]
mov ebx, dword [ebp - 0x4e40]
lea eax, [ebp - 0x1f44]
push 0x3e8
push eax
push 2
lea eax, [ebp - 0x4ee8]
push eax
mov eax, ebx
sub eax, dword [ebp - 0x4e58]
push eax
push ebx
push esi
push dword [ebp - 0x4e48]
call fcn.10009860
add esp, 0x24
test eax, eax
js 0x1000d047
mov ebx, dword [ebp - 0x4ee4]
mov edi, ebx
sub edi, dword [ebp - 0x4ee8]
nop
movzx ecx, byte [esi + 1]
movzx eax, byte [esi + 2]
shl ecx, 8
or ecx, eax
mov al, byte [esi + ecx]
add esi, ecx
cmp al, 0x77
je 0x1000d230
mov edx, esi
sub edx, dword [ebp - 0x4e68]
add edx, 3
mov dword [ebp - 0x4e80], edx
cmp al, 0x79
je 0x1000d264
cmp al, 0x7a
je 0x1000d264
or esi, 0xffffffff
jmp 0x1000d279
movzx ecx, byte [esi + 1]
movzx eax, byte [esi + 2]
shl ecx, 8
or ecx, eax
sub esi, ecx
sub esi, dword [ebp - 0x4e68]
test edi, edi
jne 0x1000d2af
mov ecx, dword [ebp - 0x4e28]
mov eax, ecx
inc ecx
mov dword [ebp - 0x4e28], ecx
cmp eax, dword [ebp - 0x4e38]
jge 0x1000d16f
mov edi, dword [ebp - 0x4e34]
mov dword [edi], edx
mov dword [edi + 4], 0
add edi, 0xc
jmp 0x1000a386
mov eax, dword [ebp - 0x4e90]
inc eax
cmp eax, dword [ebp - 0x4e28]
jl 0x1000d345
cmp dword [ebp - 0x4e2c], 0
jne 0x1000d345
add dword [ebp - 0x4e40], edi
mov edi, 1
cmp dword [ebp - 0x4e38], 0
mov dword [ebp - 0x4e50], 0
mov dword [ebp - 0x4e2c], edi
jle 0x1000d16f
mov ecx, dword [ebp - 0x4e30]
mov dword [ecx], edx
mov dword [ecx + 4], 0
add ecx, 0xc
mov dword [ebp - 0x4e30], ecx
test esi, esi
js 0x1000aa65
or eax, 0xffffffff
mov edx, edi
mov dword [ebp - 0x4e90], eax
mov eax, dword [ebp - 0x4e88]
mov dword [ebp - 0x4e28], edx
mov dword [eax], esi
mov dword [eax + 4], 0
add eax, 0xc
mov dword [ebp - 0x4e34], eax
jmp 0x1000a39e
cmp dword [ebp - 0x4e54], 0
je 0x1000d37f
mov edx, dword [ebp - 0x4ee8]
add edx, dword [ebp - 0x4e58]
add ebx, dword [ebp - 0x4e58]
cmp edx, ebx
jae 0x1000d379
mov cl, byte [edx]
lea eax, [edi - 1]
and cl, 0xc0
inc edx
cmp cl, 0x80
cmovne eax, edi
mov edi, eax
cmp edx, ebx
jb 0x1000d364
mov edx, dword [ebp - 0x4e80]
mov ebx, dword [ebp - 0x4e2c]
mov eax, ebx
inc ebx
mov dword [ebp - 0x4e2c], ebx
cmp eax, dword [ebp - 0x4e38]
jge 0x1000d16f
mov ecx, dword [ebp - 0x4e30]
neg edx
dec edi
mov dword [ecx], edx
mov dword [ecx + 4], 0
mov dword [ecx + 8], edi
add ecx, 0xc
mov dword [ebp - 0x4e30], ecx
test esi, esi
js 0x1000b338
mov eax, ebx
inc ebx
mov dword [ebp - 0x4e2c], ebx
cmp eax, dword [ebp - 0x4e38]
jge 0x1000d16f
mov edx, dword [ebp - 0x4e28]
neg esi
mov dword [ecx + 8], edi
mov edi, ebx
mov dword [ecx], esi
mov dword [ecx + 4], 0
add ecx, 0xc
mov dword [ebp - 0x4e30], ecx
jmp 0x1000a39e
mov edx, dword [sym.pcre3.dll_pcre_callout]
test edx, edx
je 0x1000d4ca
movzx eax, byte [esi + 1]
mov ecx, dword [ebp - 0x4e58]
mov dword [ebp - 0x4ed4], eax
mov eax, dword [ebp - 0x4ea0]
mov dword [ebp - 0x4ed0], eax
mov eax, dword [ebp - 0x4e78]
sub eax, ecx
mov dword [ebp - 0x4ecc], ecx
mov dword [ebp - 0x4ec8], eax
mov eax, dword [ebp - 0x4e74]
sub eax, ecx
mov dword [ebp - 0x4ed8], 1
mov dword [ebp - 0x4ec4], eax
mov eax, dword [ebp - 0x4e40]
sub eax, ecx
mov dword [ebp - 0x4ebc], 1
movzx ecx, byte [esi + 2]
mov dword [ebp - 0x4ec0], eax
movzx eax, byte [esi + 3]
shl ecx, 8
or ecx, eax
mov dword [ebp - 0x4eb8], 0xffffffff
movzx eax, byte [esi + 5]
mov dword [ebp - 0x4eb0], ecx
movzx ecx, byte [esi + 4]
shl ecx, 8
or ecx, eax
mov dword [ebp - 0x4ea8], 0
mov eax, dword [ebp - 0x4e48]
mov dword [ebp - 0x4eac], ecx
mov eax, dword [eax + 0x2c]
mov dword [ebp - 0x4eb4], eax
lea eax, [ebp - 0x4ed8]
push eax
call edx
add esp, 4
test eax, eax
js 0x1000d174
jne case.default.0x1000bfbe
mov edx, dword [ebp - 0x4e28]
mov eax, edx
inc edx
mov dword [ebp - 0x4e28], edx
cmp eax, dword [ebp - 0x4e38]
jge 0x1000d16f
mov edi, dword [ebp - 0x4e34]
movzx eax, byte [0x1003ea76]
add eax, dword [ebp - 0x4e3c]
mov dword [edi], eax
mov dword [edi + 4], 0
add edi, 0xc
mov dword [ebp - 0x4e34], edi
jmp 0x1000a392
pop edi
pop esi
mov eax, 0xffffffef
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100218b6
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0xffffffe6
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100218b6
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0xffffffec
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100218b6
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0xfffffff0
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100218b6
mov esp, ebp
pop ebp
ret
cmp dword [ebp + 0x28], 1
jne 0x1000a19e
cmp dword [ebp - 0x4e64], 0
je 0x1000a19e
mov esi, dword [ebp - 0x4e98]
mov eax, dword [ebp - 0x4ea4]
cmp eax, dword [esi + 4]
je 0x1000a19e
mov ecx, dword [ebp - 0x4e48]
mov eax, dword [ecx + 0x18]
test eax, 0x8000000
jne 0x1000d5bb
test eax, 0x8000
je 0x1000a19e
cmp dword [ebp - 0x4e70], 0
jge 0x1000a19e
cmp dword [ebp - 0x4e84], 0
jne 0x1000d5df
mov eax, dword [ebp - 0x4e40]
cmp eax, dword [ebp - 0x4e78]
jb 0x1000a19e
cmp eax, dword [ecx + 0xc]
jbe 0x1000a19e
mov ecx, dword [ebp - 4]
mov eax, 0xfffffff4
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.100218b6
mov esp, ebp
pop ebp
ret