408031:	74 63                	je     0x408096
408033:	8b 4d dc             	mov    -0x24(%ebp),%ecx
408036:	6a 01                	push   $0x1
408038:	e8 6c 6b 00 00       	call   0x40eba9
40803d:	8b 45 dc             	mov    -0x24(%ebp),%eax
408040:	6a 13                	push   $0x13
408042:	53                   	push   %ebx
408043:	53                   	push   %ebx
408044:	53                   	push   %ebx
408045:	53                   	push   %ebx
408046:	ff 75 0c             	push   0xc(%ebp)
408049:	ff 70 20             	push   0x20(%eax)
40804c:	ff 15 dc 07 4b 00    	call   *0x4b07dc
408052:	8b 45 dc             	mov    -0x24(%ebp),%eax
408055:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
408058:	89 88 90 00 00 00    	mov    %ecx,0x90(%eax)
40805e:	8b 4d dc             	mov    -0x24(%ebp),%ecx
408061:	8d 45 14             	lea    0x14(%ebp),%eax
408064:	81 c1 a0 00 00 00    	add    $0xa0,%ecx
40806a:	50                   	push   %eax
40806b:	e8 83 92 ff ff       	call   0x4012f3
408070:	8b 45 dc             	mov    -0x24(%ebp),%eax
408073:	66 8b 4d c8          	mov    -0x38(%ebp),%cx
408077:	66 89 88 94 00 00 00 	mov    %cx,0x94(%eax)
40807e:	8b 45 dc             	mov    -0x24(%ebp),%eax
408081:	8b 4d c4             	mov    -0x3c(%ebp),%ecx
408084:	89 88 98 00 00 00    	mov    %ecx,0x98(%eax)
40808a:	8b 45 dc             	mov    -0x24(%ebp),%eax
40808d:	8b 4d d0             	mov    -0x30(%ebp),%ecx
408090:	89 88 9c 00 00 00    	mov    %ecx,0x9c(%eax)
408096:	39 5d d8             	cmp    %ebx,-0x28(%ebp)
408099:	5e                   	pop    %esi
40809a:	74 09                	je     0x4080a5
40809c:	ff 75 d8             	push   -0x28(%ebp)
40809f:	ff 15 08 05 4b 00    	call   *0x4b0508
4080a5:	8b 45 dc             	mov    -0x24(%ebp),%eax
4080a8:	3b c3                	cmp    %ebx,%eax
4080aa:	74 0d                	je     0x4080b9
4080ac:	8b 40 20             	mov    0x20(%eax),%eax
4080af:	8b 4d 24             	mov    0x24(%ebp),%ecx
4080b2:	33 db                	xor    %ebx,%ebx
4080b4:	89 01                	mov    %eax,(%ecx)
4080b6:	43                   	inc    %ebx
4080b7:	eb 05                	jmp    0x4080be
4080b9:	8b 45 24             	mov    0x24(%ebp),%eax
4080bc:	89 18                	mov    %ebx,(%eax)
4080be:	8d 8d 6c ff ff ff    	lea    -0x94(%ebp),%ecx
4080c4:	c6 45 fc 00          	movb   $0x0,-0x4(%ebp)
4080c8:	e8 c3 ff 04 00       	call   0x458090
4080cd:	8b 4d 14             	mov    0x14(%ebp),%ecx
4080d0:	83 c1 f0             	add    $0xfffffff0,%ecx
4080d3:	e8 7a 92 ff ff       	call   0x401352
4080d8:	8b 4d f4             	mov    -0xc(%ebp),%ecx
4080db:	5f                   	pop    %edi
4080dc:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
4080e3:	8b 4d f0             	mov    -0x10(%ebp),%ecx
4080e6:	8b c3                	mov    %ebx,%eax
4080e8:	5b                   	pop    %ebx
4080e9:	e8 f0 fa 00 00       	call   0x417bde
4080ee:	c9                   	leave
4080ef:	c2 20 00             	ret    $0x20
4080f2:	55                   	push   %ebp
4080f3:	8b ec                	mov    %esp,%ebp
4080f5:	83 ec 1c             	sub    $0x1c,%esp
4080f8:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
4080fb:	8b 4d 10             	mov    0x10(%ebp),%ecx
4080fe:	8b 01                	mov    (%ecx),%eax
408100:	33 d2                	xor    %edx,%edx
408102:	3b c2                	cmp    %edx,%eax
408104:	75 08                	jne    0x40810e
408106:	33 c0                	xor    %eax,%eax
408108:	40                   	inc    %eax
408109:	e9 37 01 00 00       	jmp    0x408245
40810e:	53                   	push   %ebx
40810f:	56                   	push   %esi
408110:	8b 75 08             	mov    0x8(%ebp),%esi
408113:	3b f2                	cmp    %edx,%esi
408115:	57                   	push   %edi
408116:	75 05                	jne    0x40811d
408118:	89 55 f8             	mov    %edx,-0x8(%ebp)
40811b:	eb 06                	jmp    0x408123
40811d:	8b 7e 1c             	mov    0x1c(%esi),%edi
408120:	89 7d f8             	mov    %edi,-0x8(%ebp)
408123:	8b 7d 0c             	mov    0xc(%ebp),%edi
408126:	33 db                	xor    %ebx,%ebx
408128:	66 81 78 02 ff ff    	cmpw   $0xffff,0x2(%eax)
40812e:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
408135:	0f 94 c3             	sete   %bl
408138:	3b fa                	cmp    %edx,%edi
40813a:	89 5d ec             	mov    %ebx,-0x14(%ebp)
40813d:	0f 84 e6 00 00 00    	je     0x408229
408143:	8b 41 04             	mov    0x4(%ecx),%eax
408146:	89 45 f4             	mov    %eax,-0xc(%ebp)
408149:	89 55 10             	mov    %edx,0x10(%ebp)
40814c:	89 55 0c             	mov    %edx,0xc(%ebp)
40814f:	66 39 17             	cmp    %dx,(%edi)
408152:	0f 84 c9 00 00 00    	je     0x408221
408158:	47                   	inc    %edi
408159:	47                   	inc    %edi
40815a:	66 8b 1f             	mov    (%edi),%bx
40815d:	47                   	inc    %edi
40815e:	47                   	inc    %edi
40815f:	8b 07                	mov    (%edi),%eax
408161:	83 c7 04             	add    $0x4,%edi
408164:	66 81 fb 76 03       	cmp    $0x376,%bx
408169:	89 45 e8             	mov    %eax,-0x18(%ebp)
40816c:	74 42                	je     0x4081b0
40816e:	66 81 fb 7a 03       	cmp    $0x37a,%bx
408173:	74 3b                	je     0x4081b0
408175:	66 81 fb 77 03       	cmp    $0x377,%bx
40817a:	74 34                	je     0x4081b0
40817c:	66 81 fb 7b 03       	cmp    $0x37b,%bx
408181:	74 2d                	je     0x4081b0
408183:	66 81 fb 78 03       	cmp    $0x378,%bx
408188:	0f 85 85 00 00 00    	jne    0x408213
40818e:	eb 20                	jmp    0x4081b0
408190:	83 fe ff             	cmp    $0xffffffff,%esi
408193:	74 2b                	je     0x4081c0
408195:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
408199:	75 07                	jne    0x4081a2
40819b:	6a 05                	push   $0x5
40819d:	ff 75 f8             	push   -0x8(%ebp)
4081a0:	eb 05                	jmp    0x4081a7
4081a2:	6a 02                	push   $0x2
4081a4:	ff 75 0c             	push   0xc(%ebp)
4081a7:	ff 15 4c 07 4b 00    	call   *0x4b074c
4081ad:	89 45 0c             	mov    %eax,0xc(%ebp)
4081b0:	8b 4d 10             	mov    0x10(%ebp),%ecx
4081b3:	8b 45 f4             	mov    -0xc(%ebp),%eax
4081b6:	8b 34 88             	mov    (%eax,%ecx,4),%esi
4081b9:	ff 45 10             	incl   0x10(%ebp)
4081bc:	85 f6                	test   %esi,%esi
4081be:	74 d0                	je     0x408190
4081c0:	83 65 f0 00          	andl   $0x0,-0x10(%ebp)
4081c4:	83 fe ff             	cmp    $0xffffffff,%esi
4081c7:	74 46                	je     0x40820f
4081c9:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
4081cc:	8d 45 f0             	lea    -0x10(%ebp),%eax
4081cf:	50                   	push   %eax
4081d0:	ff 75 e8             	push   -0x18(%ebp)
4081d3:	57                   	push   %edi
4081d4:	53                   	push   %ebx
4081d5:	56                   	push   %esi
4081d6:	ff 75 ec             	push   -0x14(%ebp)
4081d9:	ff 75 0c             	push   0xc(%ebp)
4081dc:	ff 75 08             	push   0x8(%ebp)
4081df:	e8 12 fc ff ff       	call   0x407df6
4081e4:	85 c0                	test   %eax,%eax
4081e6:	74 27                	je     0x40820f
4081e8:	8b 5d f0             	mov    -0x10(%ebp),%ebx
4081eb:	85 db                	test   %ebx,%ebx
4081ed:	74 24                	je     0x408213
4081ef:	83 7d ec 00          	cmpl   $0x0,-0x14(%ebp)
4081f3:	74 09                	je     0x4081fe
4081f5:	ff 36                	push   (%esi)
4081f7:	53                   	push   %ebx
4081f8:	ff 15 50 07 4b 00    	call   *0x4b0750
4081fe:	53                   	push   %ebx
4081ff:	ff 15 d8 07 4b 00    	call   *0x4b07d8
408205:	3b 45 f8             	cmp    -0x8(%ebp),%eax
408208:	75 09                	jne    0x408213
40820a:	89 5d 0c             	mov    %ebx,0xc(%ebp)
40820d:	eb 04                	jmp    0x408213
40820f:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
408213:	03 7d e8             	add    -0x18(%ebp),%edi
408216:	33 d2                	xor    %edx,%edx
408218:	39 55 fc             	cmp    %edx,-0x4(%ebp)
40821b:	0f 85 2e ff ff ff    	jne    0x40814f
408221:	39 55 fc             	cmp    %edx,-0x4(%ebp)
408224:	74 19                	je     0x40823f
408226:	8b 75 08             	mov    0x8(%ebp),%esi
408229:	8b 4e 48             	mov    0x48(%esi),%ecx
40822c:	3b ca                	cmp    %edx,%ecx
40822e:	74 06                	je     0x408236
408230:	52                   	push   %edx
408231:	e8 d9 55 00 00       	call   0x40d80f
408236:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
408239:	56                   	push   %esi
40823a:	e8 38 fa ff ff       	call   0x407c77
40823f:	8b 45 fc             	mov    -0x4(%ebp),%eax
408242:	5f                   	pop    %edi
408243:	5e                   	pop    %esi
408244:	5b                   	pop    %ebx
408245:	c9                   	leave
408246:	c2 0c 00             	ret    $0xc
408249:	e9 0a 08 01 00       	jmp    0x418a58
40824e:	ff 74 24 08          	push   0x8(%esp)
408252:	ff 74 24 08          	push   0x8(%esp)
408256:	ff 15 4c 07 4b 00    	call   *0x4b074c
40825c:	c3                   	ret
40825d:	8b 44 24 04          	mov    0x4(%esp),%eax
408261:	c3                   	ret
408262:	8b c1                	mov    %ecx,%eax
408264:	8b 4c 24 04          	mov    0x4(%esp),%ecx
408268:	89 08                	mov    %ecx,(%eax)
40826a:	8b 4c 24 08          	mov    0x8(%esp),%ecx
40826e:	89 48 04             	mov    %ecx,0x4(%eax)
408271:	c2 08 00             	ret    $0x8
408274:	8b c1                	mov    %ecx,%eax
408276:	8b 4c 24 04          	mov    0x4(%esp),%ecx
40827a:	0f bf d1             	movswl %cx,%edx
40827d:	c1 e9 10             	shr    $0x10,%ecx
408280:	0f bf c9             	movswl %cx,%ecx
408283:	89 10                	mov    %edx,(%eax)
408285:	89 48 04             	mov    %ecx,0x4(%eax)
408288:	c2 04 00             	ret    $0x4
40828b:	8b c1                	mov    %ecx,%eax
40828d:	c3                   	ret
40828e:	8d 41 08             	lea    0x8(%ecx),%eax
408291:	c3                   	ret
408292:	8b c1                	mov    %ecx,%eax
408294:	c3                   	ret
408295:	ff 74 24 08          	push   0x8(%esp)
408299:	ff 74 24 08          	push   0x8(%esp)
40829d:	51                   	push   %ecx
40829e:	ff 15 48 07 4b 00    	call   *0x4b0748
4082a4:	c2 08 00             	ret    $0x8
4082a7:	ff 74 24 04          	push   0x4(%esp)
4082ab:	51                   	push   %ecx
4082ac:	ff 15 44 07 4b 00    	call   *0x4b0744
4082b2:	c2 04 00             	ret    $0x4
4082b5:	8b 44 24 08          	mov    0x8(%esp),%eax
4082b9:	c2 08 00             	ret    $0x8
4082bc:	ff 74 24 04          	push   0x4(%esp)
4082c0:	e8 bb 7d 03 00       	call   0x440080
4082c5:	59                   	pop    %ecx
4082c6:	c2 08 00             	ret    $0x8
4082c9:	55                   	push   %ebp
4082ca:	8b ec                	mov    %esp,%ebp
4082cc:	81 ec 98 00 00 00    	sub    $0x98,%esp
4082d2:	a1 40 8b 4a 00       	mov    0x4a8b40,%eax
4082d7:	57                   	push   %edi
4082d8:	89 45 fc             	mov    %eax,-0x4(%ebp)
4082db:	6a 24                	push   $0x24
4082dd:	59                   	pop    %ecx
4082de:	33 c0                	xor    %eax,%eax
4082e0:	8d bd 6c ff ff ff    	lea    -0x94(%ebp),%edi
4082e6:	f3 ab                	rep stos %eax,%es:(%edi)
4082e8:	8d 85 68 ff ff ff    	lea    -0x98(%ebp),%eax
4082ee:	50                   	push   %eax
4082ef:	c7 85 68 ff ff ff 94 	movl   $0x94,-0x98(%ebp)
4082f6:	00 00 00
4082f9:	ff 15 a8 03 4b 00    	call   *0x4b03a8
4082ff:	8b 4d fc             	mov    -0x4(%ebp),%ecx
408302:	33 c0                	xor    %eax,%eax
408304:	83 bd 78 ff ff ff 02 	cmpl   $0x2,-0x88(%ebp)
40830b:	5f                   	pop    %edi
40830c:	0f 94 c0             	sete   %al
40830f:	e8 ca f8 00 00       	call   0x417bde
408314:	c9                   	leave
408315:	c3                   	ret
408316:	53                   	push   %ebx
408317:	33 db                	xor    %ebx,%ebx
408319:	39 1d 44 c1 4a 00    	cmp    %ebx,0x4ac144
40831f:	74 0d                	je     0x40832e
408321:	33 c0                	xor    %eax,%eax
408323:	39 1d 38 c1 4a 00    	cmp    %ebx,0x4ac138
408329:	5b                   	pop    %ebx
40832a:	0f 95 c0             	setne  %al
40832d:	c3                   	ret
40832e:	56                   	push   %esi
40832f:	57                   	push   %edi
408330:	e8 94 ff ff ff       	call   0x4082c9
408335:	68 38 b0 48 00       	push   $0x48b038
40833a:	a3 48 c1 4a 00       	mov    %eax,0x4ac148
40833f:	ff 15 f4 02 4b 00    	call   *0x4b02f4
408345:	8b f8                	mov    %eax,%edi
408347:	3b fb                	cmp    %ebx,%edi
408349:	0f 84 87 00 00 00    	je     0x4083d6
40834f:	8b 35 f8 02 4b 00    	mov    0x4b02f8,%esi
408355:	68 24 b0 48 00       	push   $0x48b024
40835a:	57                   	push   %edi
40835b:	ff d6                	call   *%esi
40835d:	3b c3                	cmp    %ebx,%eax
40835f:	a3 28 c1 4a 00       	mov    %eax,0x4ac128
408364:	74 70                	je     0x4083d6
408366:	68 10 b0 48 00       	push   $0x48b010
40836b:	57                   	push   %edi
40836c:	ff d6                	call   *%esi
40836e:	3b c3                	cmp    %ebx,%eax
408370:	a3 2c c1 4a 00       	mov    %eax,0x4ac12c
408375:	74 5f                	je     0x4083d6
408377:	68 00 b0 48 00       	push   $0x48b000
40837c:	57                   	push   %edi
40837d:	ff d6                	call   *%esi
40837f:	3b c3                	cmp    %ebx,%eax
408381:	a3 30 c1 4a 00       	mov    %eax,0x4ac130
408386:	74 4e                	je     0x4083d6
408388:	68 ec af 48 00       	push   $0x48afec
40838d:	57                   	push   %edi
40838e:	ff d6                	call   *%esi
408390:	3b c3                	cmp    %ebx,%eax
408392:	a3 34 c1 4a 00       	mov    %eax,0x4ac134
408397:	74 3d                	je     0x4083d6
408399:	68 d8 af 48 00       	push   $0x48afd8
40839e:	57                   	push   %edi
40839f:	ff d6                	call   *%esi
4083a1:	3b c3                	cmp    %ebx,%eax
4083a3:	a3 3c c1 4a 00       	mov    %eax,0x4ac13c
4083a8:	74 2c                	je     0x4083d6
4083aa:	68 c8 af 48 00       	push   $0x48afc8
4083af:	57                   	push   %edi
4083b0:	ff d6                	call   *%esi
4083b2:	3b c3                	cmp    %ebx,%eax
4083b4:	a3 38 c1 4a 00       	mov    %eax,0x4ac138
4083b9:	74 1b                	je     0x4083d6
4083bb:	68 b4 af 48 00       	push   $0x48afb4
4083c0:	57                   	push   %edi
4083c1:	ff d6                	call   *%esi
4083c3:	3b c3                	cmp    %ebx,%eax
4083c5:	a3 40 c1 4a 00       	mov    %eax,0x4ac140
4083ca:	74 0a                	je     0x4083d6
4083cc:	33 c0                	xor    %eax,%eax
4083ce:	40                   	inc    %eax
4083cf:	a3 44 c1 4a 00       	mov    %eax,0x4ac144
4083d4:	eb 36                	jmp    0x40840c
4083d6:	89 1d 28 c1 4a 00    	mov    %ebx,0x4ac128
4083dc:	89 1d 2c c1 4a 00    	mov    %ebx,0x4ac12c
4083e2:	89 1d 30 c1 4a 00    	mov    %ebx,0x4ac130
4083e8:	89 1d 34 c1 4a 00    	mov    %ebx,0x4ac134
4083ee:	89 1d 38 c1 4a 00    	mov    %ebx,0x4ac138
4083f4:	89 1d 3c c1 4a 00    	mov    %ebx,0x4ac13c
4083fa:	89 1d 40 c1 4a 00    	mov    %ebx,0x4ac140
408400:	c7 05 44 c1 4a 00 01 	movl   $0x1,0x4ac144
408407:	00 00 00
40840a:	33 c0                	xor    %eax,%eax
40840c:	5f                   	pop    %edi
40840d:	5e                   	pop    %esi
40840e:	5b                   	pop    %ebx
40840f:	c3                   	ret
408410:	e8 01 ff ff ff       	call   0x408316
408415:	85 c0                	test   %eax,%eax
408417:	74 06                	je     0x40841f
408419:	ff 25 28 c1 4a 00    	jmp    *0x4ac128
40841f:	8b 44 24 04          	mov    0x4(%esp),%eax
408423:	83 f8 4c             	cmp    $0x4c,%eax
408426:	7c 1e                	jl     0x408446
408428:	83 f8 4d             	cmp    $0x4d,%eax
40842b:	7e 27                	jle    0x408454
40842d:	83 f8 4e             	cmp    $0x4e,%eax
408430:	74 1e                	je     0x408450
408432:	83 f8 4f             	cmp    $0x4f,%eax
408435:	74 0c                	je     0x408443
408437:	7e 0d                	jle    0x408446
408439:	83 f8 51             	cmp    $0x51,%eax
40843c:	7f 08                	jg     0x408446
40843e:	33 c0                	xor    %eax,%eax
408440:	40                   	inc    %eax
408441:	eb 0a                	jmp    0x40844d
408443:	33 c0                	xor    %eax,%eax