409e48:	0f b6 0c 03          	movzbl (%ebx,%eax,1),%ecx
409e4c:	66 89 4d fc          	mov    %cx,-0x4(%ebp)
409e50:	6a 00                	push   $0x0
409e52:	0f b7 c1             	movzwl %cx,%eax
409e55:	50                   	push   %eax
409e56:	68 02 01 00 00       	push   $0x102
409e5b:	6a 68                	push   $0x68
409e5d:	ff 75 08             	push   0x8(%ebp)
409e60:	ff 15 18 33 43 00    	call   *0x433318
409e66:	8b 4d 08             	mov    0x8(%ebp),%ecx
409e69:	e8 a6 42 00 00       	call   0x40e114
409e6e:	be b0 8f 40 00       	mov    $0x408fb0,%esi
409e73:	56                   	push   %esi
409e74:	e8 12 53 00 00       	call   0x40f18b
409e79:	8b 40 04             	mov    0x4(%eax),%eax
409e7c:	85 c0                	test   %eax,%eax
409e7e:	74 13                	je     0x409e93
409e80:	83 38 00             	cmpl   $0x0,(%eax)
409e83:	76 0e                	jbe    0x409e93
409e85:	56                   	push   %esi
409e86:	e8 00 53 00 00       	call   0x40f18b
409e8b:	ff 75 fc             	push   -0x4(%ebp)
409e8e:	e8 5f f1 ff ff       	call   0x408ff2
409e93:	5e                   	pop    %esi
409e94:	5b                   	pop    %ebx
409e95:	c9                   	leave
409e96:	c2 04 00             	ret    $0x4
409e99:	cc                   	int3
409e9a:	cc                   	int3
409e9b:	cc                   	int3
409e9c:	cc                   	int3
409e9d:	cc                   	int3
409e9e:	cc                   	int3
409e9f:	cc                   	int3
409ea0:	8b ff                	mov    %edi,%edi
409ea2:	55                   	push   %ebp
409ea3:	8b ec                	mov    %esp,%ebp
409ea5:	81 ec 0c 02 00 00    	sub    $0x20c,%esp
409eab:	a1 64 10 41 00       	mov    0x411064,%eax
409eb0:	33 c5                	xor    %ebp,%eax
409eb2:	89 45 fc             	mov    %eax,-0x4(%ebp)
409eb5:	56                   	push   %esi
409eb6:	8b 75 08             	mov    0x8(%ebp),%esi
409eb9:	8d 85 f4 fd ff ff    	lea    -0x20c(%ebp),%eax
409ebf:	68 04 01 00 00       	push   $0x104
409ec4:	50                   	push   %eax
409ec5:	56                   	push   %esi
409ec6:	ff 15 90 32 43 00    	call   *0x433290
409ecc:	6a ff                	push   $0xffffffff
409ece:	68 e8 17 40 00       	push   $0x4017e8
409ed3:	6a ff                	push   $0xffffffff
409ed5:	8d 85 f4 fd ff ff    	lea    -0x20c(%ebp),%eax
409edb:	50                   	push   %eax
409edc:	6a 01                	push   $0x1
409ede:	6a 7f                	push   $0x7f
409ee0:	ff 15 c0 31 43 00    	call   *0x4331c0
409ee6:	83 f8 02             	cmp    $0x2,%eax
409ee9:	75 16                	jne    0x409f01
409eeb:	6a ec                	push   $0xffffffec
409eed:	56                   	push   %esi
409eee:	ff 15 fc 32 43 00    	call   *0x4332fc
409ef4:	83 e0 fb             	and    $0xfffffffb,%eax
409ef7:	50                   	push   %eax
409ef8:	6a ec                	push   $0xffffffec
409efa:	56                   	push   %esi
409efb:	ff 15 f8 32 43 00    	call   *0x4332f8
409f01:	8b 4d fc             	mov    -0x4(%ebp),%ecx
409f04:	33 c0                	xor    %eax,%eax
409f06:	33 cd                	xor    %ebp,%ecx
409f08:	40                   	inc    %eax
409f09:	5e                   	pop    %esi
409f0a:	e8 21 65 00 00       	call   0x410430
409f0f:	c9                   	leave
409f10:	c2 08 00             	ret    $0x8
409f13:	cc                   	int3
409f14:	cc                   	int3
409f15:	cc                   	int3
409f16:	cc                   	int3
409f17:	cc                   	int3
409f18:	cc                   	int3
409f19:	cc                   	int3
409f1a:	cc                   	int3
409f1b:	cc                   	int3
409f1c:	cc                   	int3
409f1d:	cc                   	int3
409f1e:	cc                   	int3
409f1f:	cc                   	int3
409f20:	8b ff                	mov    %edi,%edi
409f22:	55                   	push   %ebp
409f23:	8b ec                	mov    %esp,%ebp
409f25:	83 e4 f8             	and    $0xfffffff8,%esp
409f28:	81 ec 94 06 00 00    	sub    $0x694,%esp
409f2e:	a1 64 10 41 00       	mov    0x411064,%eax
409f33:	33 c4                	xor    %esp,%eax
409f35:	89 84 24 90 06 00 00 	mov    %eax,0x690(%esp)
409f3c:	8b 45 0c             	mov    0xc(%ebp),%eax
409f3f:	b9 00 01 00 00       	mov    $0x100,%ecx
409f44:	8b 55 14             	mov    0x14(%ebp),%edx
409f47:	53                   	push   %ebx
409f48:	8b 5d 08             	mov    0x8(%ebp),%ebx
409f4b:	56                   	push   %esi
409f4c:	57                   	push   %edi
409f4d:	8b 7d 10             	mov    0x10(%ebp),%edi
409f50:	33 f6                	xor    %esi,%esi
409f52:	89 9c 24 88 00 00 00 	mov    %ebx,0x88(%esp)
409f59:	89 7c 24 14          	mov    %edi,0x14(%esp)
409f5d:	89 54 24 0c          	mov    %edx,0xc(%esp)
409f61:	3b c1                	cmp    %ecx,%eax
409f63:	0f 87 d4 03 00 00    	ja     0x40a33d
409f69:	0f 84 a3 03 00 00    	je     0x40a312
409f6f:	83 f8 1d             	cmp    $0x1d,%eax
409f72:	0f 87 14 03 00 00    	ja     0x40a28c
409f78:	0f 84 c5 02 00 00    	je     0x40a243
409f7e:	48                   	dec    %eax
409f7f:	83 e8 01             	sub    $0x1,%eax
409f82:	0f 84 f4 01 00 00    	je     0x40a17c
409f88:	83 e8 0d             	sub    $0xd,%eax
409f8b:	74 54                	je     0x409fe1
409f8d:	83 e8 01             	sub    $0x1,%eax
409f90:	74 44                	je     0x409fd6
409f92:	83 e8 05             	sub    $0x5,%eax
409f95:	0f 85 c4 12 00 00    	jne    0x40b25f
409f9b:	8b 75 0c             	mov    0xc(%ebp),%esi
409f9e:	a1 64 26 43 00       	mov    0x432664,%eax
409fa3:	85 c0                	test   %eax,%eax
409fa5:	74 07                	je     0x409fae
409fa7:	50                   	push   %eax
409fa8:	ff 15 b4 30 43 00    	call   *0x4330b4
409fae:	e8 bd 4c 00 00       	call   0x40ec70
409fb3:	a3 64 26 43 00       	mov    %eax,0x432664
409fb8:	83 fe 15             	cmp    $0x15,%esi
409fbb:	0f 85 9e 12 00 00    	jne    0x40b25f
409fc1:	8b 4c 24 0c          	mov    0xc(%esp),%ecx
409fc5:	51                   	push   %ecx
409fc6:	57                   	push   %edi
409fc7:	56                   	push   %esi
409fc8:	6a 68                	push   $0x68
409fca:	53                   	push   %ebx
409fcb:	ff 15 18 33 43 00    	call   *0x433318
409fd1:	e9 89 12 00 00       	jmp    0x40b25f
409fd6:	ff 35 10 19 43 00    	push   0x431910
409fdc:	e9 91 0e 00 00       	jmp    0x40ae72
409fe1:	8d 44 24 38          	lea    0x38(%esp),%eax
409fe5:	50                   	push   %eax
409fe6:	53                   	push   %ebx
409fe7:	ff 15 ec 32 43 00    	call   *0x4332ec
409fed:	be 40 1f 43 00       	mov    $0x431f40,%esi
409ff2:	89 44 24 0c          	mov    %eax,0xc(%esp)
409ff6:	8d 7c 24 28          	lea    0x28(%esp),%edi
409ffa:	6a 06                	push   $0x6
409ffc:	a5                   	movsl  %ds:(%esi),%es:(%edi)
409ffd:	a5                   	movsl  %ds:(%esi),%es:(%edi)
409ffe:	a5                   	movsl  %ds:(%esi),%es:(%edi)
409fff:	a5                   	movsl  %ds:(%esi),%es:(%edi)
40a000:	ff 15 ec 31 43 00    	call   *0x4331ec
40a006:	8b f8                	mov    %eax,%edi
40a008:	6a 10                	push   $0x10
40a00a:	89 7c 24 14          	mov    %edi,0x14(%esp)
40a00e:	ff 15 0c 32 43 00    	call   *0x43320c
40a014:	50                   	push   %eax
40a015:	ff 15 5c 30 43 00    	call   *0x43305c
40a01b:	8b c8                	mov    %eax,%ecx
40a01d:	8d 34 3f             	lea    (%edi,%edi,1),%esi
40a020:	8b d7                	mov    %edi,%edx
40a022:	89 4c 24 14          	mov    %ecx,0x14(%esp)
40a026:	c1 e2 03             	shl    $0x3,%edx
40a029:	89 54 24 18          	mov    %edx,0x18(%esp)
40a02d:	89 74 24 20          	mov    %esi,0x20(%esp)
40a031:	85 c9                	test   %ecx,%ecx
40a033:	0f 84 80 00 00 00    	je     0x40a0b9
40a039:	a1 48 1f 43 00       	mov    0x431f48,%eax
40a03e:	2b c2                	sub    %edx,%eax
40a040:	6b df 06             	imul   $0x6,%edi,%ebx
40a043:	89 44 24 30          	mov    %eax,0x30(%esp)
40a047:	a1 44 1f 43 00       	mov    0x431f44,%eax
40a04c:	03 c6                	add    %esi,%eax
40a04e:	89 44 24 2c          	mov    %eax,0x2c(%esp)
40a052:	03 c7                	add    %edi,%eax
40a054:	89 44 24 34          	mov    %eax,0x34(%esp)
40a058:	8d 44 24 28          	lea    0x28(%esp),%eax
40a05c:	51                   	push   %ecx
40a05d:	50                   	push   %eax
40a05e:	ff 74 24 14          	push   0x14(%esp)
40a062:	89 5c 24 34          	mov    %ebx,0x34(%esp)
40a066:	ff 15 ac 32 43 00    	call   *0x4332ac
40a06c:	be 40 1f 43 00       	mov    $0x431f40,%esi
40a071:	8d 7c 24 28          	lea    0x28(%esp),%edi
40a075:	a5                   	movsl  %ds:(%esi),%es:(%edi)
40a076:	a5                   	movsl  %ds:(%esi),%es:(%edi)
40a077:	a5                   	movsl  %ds:(%esi),%es:(%edi)
40a078:	a5                   	movsl  %ds:(%esi),%es:(%edi)
40a079:	8b 7c 24 10          	mov    0x10(%esp),%edi
40a07d:	8b 74 24 20          	mov    0x20(%esp),%esi
40a081:	01 74 24 2c          	add    %esi,0x2c(%esp)
40a085:	29 74 24 34          	sub    %esi,0x34(%esp)
40a089:	8b 74 24 0c          	mov    0xc(%esp),%esi
40a08d:	8d 04 3b             	lea    (%ebx,%edi,1),%eax
40a090:	89 5c 24 28          	mov    %ebx,0x28(%esp)
40a094:	8b 5c 24 14          	mov    0x14(%esp),%ebx
40a098:	89 44 24 30          	mov    %eax,0x30(%esp)
40a09c:	8d 44 24 28          	lea    0x28(%esp),%eax
40a0a0:	53                   	push   %ebx
40a0a1:	50                   	push   %eax
40a0a2:	56                   	push   %esi
40a0a3:	ff 15 ac 32 43 00    	call   *0x4332ac
40a0a9:	53                   	push   %ebx
40a0aa:	ff 15 b4 30 43 00    	call   *0x4330b4
40a0b0:	8b 9c 24 88 00 00 00 	mov    0x88(%esp),%ebx
40a0b7:	eb 08                	jmp    0x40a0c1
40a0b9:	89 74 24 20          	mov    %esi,0x20(%esp)
40a0bd:	8b 74 24 0c          	mov    0xc(%esp),%esi
40a0c1:	6a 14                	push   $0x14
40a0c3:	ff 15 0c 32 43 00    	call   *0x43320c
40a0c9:	50                   	push   %eax
40a0ca:	ff 15 5c 30 43 00    	call   *0x43305c
40a0d0:	89 44 24 1c          	mov    %eax,0x1c(%esp)
40a0d4:	85 c0                	test   %eax,%eax
40a0d6:	0f 84 87 00 00 00    	je     0x40a163
40a0dc:	8b 0d 48 1f 43 00    	mov    0x431f48,%ecx
40a0e2:	8b c7                	mov    %edi,%eax
40a0e4:	8b 15 4c 1f 43 00    	mov    0x431f4c,%edx
40a0ea:	ff 74 24 1c          	push   0x1c(%esp)
40a0ee:	c1 e0 03             	shl    $0x3,%eax
40a0f1:	2b c8                	sub    %eax,%ecx
40a0f3:	89 44 24 2c          	mov    %eax,0x2c(%esp)
40a0f7:	89 4c 24 34          	mov    %ecx,0x34(%esp)
40a0fb:	6b cf 03             	imul   $0x3,%edi,%ecx
40a0fe:	2b d1                	sub    %ecx,%edx
40a100:	89 54 24 30          	mov    %edx,0x30(%esp)
40a104:	8d 04 3a             	lea    (%edx,%edi,1),%eax
40a107:	89 44 24 38          	mov    %eax,0x38(%esp)
40a10b:	8d 44 24 2c          	lea    0x2c(%esp),%eax
40a10f:	50                   	push   %eax
40a110:	56                   	push   %esi
40a111:	ff 15 ac 32 43 00    	call   *0x4332ac
40a117:	a1 48 1f 43 00       	mov    0x431f48,%eax
40a11c:	8d 7c 24 28          	lea    0x28(%esp),%edi
40a120:	2b 44 24 18          	sub    0x18(%esp),%eax
40a124:	be 40 1f 43 00       	mov    $0x431f40,%esi
40a129:	8b 4c 24 10          	mov    0x10(%esp),%ecx
40a12d:	a5                   	movsl  %ds:(%esi),%es:(%edi)
40a12e:	a5                   	movsl  %ds:(%esi),%es:(%edi)
40a12f:	a5                   	movsl  %ds:(%esi),%es:(%edi)
40a130:	a5                   	movsl  %ds:(%esi),%es:(%edi)
40a131:	8b 7c 24 1c          	mov    0x1c(%esp),%edi
40a135:	8b 74 24 0c          	mov    0xc(%esp),%esi
40a139:	89 44 24 28          	mov    %eax,0x28(%esp)
40a13d:	03 c1                	add    %ecx,%eax
40a13f:	89 44 24 30          	mov    %eax,0x30(%esp)
40a143:	8b 44 24 20          	mov    0x20(%esp),%eax
40a147:	01 44 24 2c          	add    %eax,0x2c(%esp)
40a14b:	29 44 24 34          	sub    %eax,0x34(%esp)
40a14f:	8d 44 24 28          	lea    0x28(%esp),%eax
40a153:	57                   	push   %edi
40a154:	50                   	push   %eax
40a155:	56                   	push   %esi
40a156:	ff 15 ac 32 43 00    	call   *0x4332ac
40a15c:	57                   	push   %edi
40a15d:	ff 15 b4 30 43 00    	call   *0x4330b4
40a163:	51                   	push   %ecx
40a164:	8b ce                	mov    %esi,%ecx
40a166:	e8 43 39 00 00       	call   0x40daae
40a16b:	8d 44 24 38          	lea    0x38(%esp),%eax
40a16f:	50                   	push   %eax
40a170:	53                   	push   %ebx
40a171:	ff 15 f4 32 43 00    	call   *0x4332f4
40a177:	e9 01 02 00 00       	jmp    0x40a37d
40a17c:	a1 4c 26 43 00       	mov    0x43264c,%eax
40a181:	33 d2                	xor    %edx,%edx
40a183:	42                   	inc    %edx
40a184:	33 c9                	xor    %ecx,%ecx
40a186:	85 c0                	test   %eax,%eax
40a188:	74 30                	je     0x40a1ba
40a18a:	be b4 19 40 00       	mov    $0x4019b4,%esi
40a18f:	8d 7c 24 78          	lea    0x78(%esp),%edi
40a193:	52                   	push   %edx
40a194:	8d 54 24 7c          	lea    0x7c(%esp),%edx
40a198:	52                   	push   %edx
40a199:	a5                   	movsl  %ds:(%esi),%es:(%edi)
40a19a:	51                   	push   %ecx
40a19b:	6a fc                	push   $0xfffffffc
40a19d:	ff 35 14 19 43 00    	push   0x431914
40a1a3:	a5                   	movsl  %ds:(%esi),%es:(%edi)
40a1a4:	50                   	push   %eax
40a1a5:	a5                   	movsl  %ds:(%esi),%es:(%edi)
40a1a6:	a5                   	movsl  %ds:(%esi),%es:(%edi)
40a1a7:	8b 30                	mov    (%eax),%esi
40a1a9:	8b 4e 24             	mov    0x24(%esi),%ecx
40a1ac:	ff 15 18 34 43 00    	call   *0x433418
40a1b2:	ff 56 24             	call   *0x24(%esi)
40a1b5:	33 d2                	xor    %edx,%edx
40a1b7:	33 c9                	xor    %ecx,%ecx
40a1b9:	42                   	inc    %edx
40a1ba:	8b 35 50 26 43 00    	mov    0x432650,%esi
40a1c0:	85 f6                	test   %esi,%esi
40a1c2:	74 2b                	je     0x40a1ef
40a1c4:	33 c0                	xor    %eax,%eax
40a1c6:	39 15 34 13 41 00    	cmp    %edx,0x411334
40a1cc:	6a 04                	push   $0x4
40a1ce:	0f 94 c0             	sete   %al
40a1d1:	89 84 24 8c 00 00 00 	mov    %eax,0x8c(%esp)
40a1d8:	8d 84 24 8c 00 00 00 	lea    0x8c(%esp),%eax
40a1df:	50                   	push   %eax
40a1e0:	6a 04                	push   $0x4
40a1e2:	51                   	push   %ecx
40a1e3:	68 f8 17 40 00       	push   $0x4017f8
40a1e8:	56                   	push   %esi
40a1e9:	ff 15 28 30 43 00    	call   *0x433028
40a1ef:	68 18 18 40 00       	push   $0x401818
40a1f4:	51                   	push   %ecx
40a1f5:	ba 82 00 00 00       	mov    $0x82,%edx
40a1fa:	8b cb                	mov    %ebx,%ecx
40a1fc:	e8 d8 5d 00 00       	call   0x40ffd9
40a201:	68 0c 18 40 00       	push   $0x40180c
40a206:	51                   	push   %ecx
40a207:	6a 69                	push   $0x69
40a209:	5a                   	pop    %edx
40a20a:	8b cb                	mov    %ebx,%ecx
40a20c:	e8 c8 5d 00 00       	call   0x40ffd9
40a211:	e8 9e 99 ff ff       	call   0x403bb4
40a216:	e8 cd a4 ff ff       	call   0x4046e8
40a21b:	e8 90 5c 00 00       	call   0x40feb0
40a220:	e8 e9 ca ff ff       	call   0x406d0e
40a225:	e8 36 9c ff ff       	call   0x403e60
40a22a:	ff 35 68 1f 43 00    	push   0x431f68
40a230:	ff 15 b4 30 43 00    	call   *0x4330b4
40a236:	6a 00                	push   $0x0
40a238:	ff 15 58 32 43 00    	call   *0x433258
40a23e:	e9 1c 10 00 00       	jmp    0x40b25f
40a243:	68 0c 18 40 00       	push   $0x40180c
40a248:	51                   	push   %ecx
40a249:	6a 69                	push   $0x69
40a24b:	5a                   	pop    %edx
40a24c:	8b cb                	mov    %ebx,%ecx
40a24e:	e8 86 5d 00 00       	call   0x40ffd9
40a253:	8b cb                	mov    %ebx,%ecx
40a255:	e8 e2 a4 ff ff       	call   0x40473c
40a25a:	85 c0                	test   %eax,%eax
40a25c:	74 14                	je     0x40a272
40a25e:	6a 69                	push   $0x69
40a260:	53                   	push   %ebx
40a261:	ff 15 14 33 43 00    	call   *0x433314
40a267:	85 c0                	test   %eax,%eax
40a269:	74 07                	je     0x40a272
40a26b:	8b c8                	mov    %eax,%ecx
40a26d:	e8 b5 a6 ff ff       	call   0x404927
40a272:	68 e8 10 41 00       	push   $0x4110e8
40a277:	68 0c 18 40 00       	push   $0x40180c
40a27c:	51                   	push   %ecx
40a27d:	6a 69                	push   $0x69