4070c1:	e8 37 e0 ff ff       	call   0x4050fd
4070c6:	83 c4 14             	add    $0x14,%esp
4070c9:	8b 85 68 ff ff ff    	mov    -0x98(%ebp),%eax
4070cf:	eb 02                	jmp    0x4070d3
4070d1:	33 c0                	xor    %eax,%eax
4070d3:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4070d6:	5f                   	pop    %edi
4070d7:	5e                   	pop    %esi
4070d8:	33 cd                	xor    %ebp,%ecx
4070da:	5b                   	pop    %ebx
4070db:	e8 46 f5 ff ff       	call   0x406626
4070e0:	c9                   	leave
4070e1:	c3                   	ret
4070e2:	8b ff                	mov    %edi,%edi
4070e4:	55                   	push   %ebp
4070e5:	8b ec                	mov    %esp,%ebp
4070e7:	81 ec c4 01 00 00    	sub    $0x1c4,%esp
4070ed:	a1 68 b2 42 00       	mov    0x42b268,%eax
4070f2:	33 c5                	xor    %ebp,%eax
4070f4:	89 45 fc             	mov    %eax,-0x4(%ebp)
4070f7:	53                   	push   %ebx
4070f8:	57                   	push   %edi
4070f9:	8b d9                	mov    %ecx,%ebx
4070fb:	e8 41 39 00 00       	call   0x40aa41
407100:	ff 75 08             	push   0x8(%ebp)
407103:	8b f8                	mov    %eax,%edi
407105:	8d 85 68 fe ff ff    	lea    -0x198(%ebp),%eax
40710b:	50                   	push   %eax
40710c:	8d 85 50 fe ff ff    	lea    -0x1b0(%ebp),%eax
407112:	50                   	push   %eax
407113:	68 83 00 00 00       	push   $0x83
407118:	8d 85 78 ff ff ff    	lea    -0x88(%ebp),%eax
40711e:	50                   	push   %eax
40711f:	53                   	push   %ebx
407120:	81 c7 d0 01 00 00    	add    $0x1d0,%edi
407126:	e8 86 fd ff ff       	call   0x406eb1
40712b:	83 c4 18             	add    $0x18,%esp
40712e:	85 c0                	test   %eax,%eax
407130:	75 07                	jne    0x407139
407132:	33 c0                	xor    %eax,%eax
407134:	e9 9d 02 00 00       	jmp    0x4073d6
407139:	8b 45 08             	mov    0x8(%ebp),%eax
40713c:	c1 e0 04             	shl    $0x4,%eax
40713f:	8d 1c 30             	lea    (%eax,%esi,1),%ebx
407142:	ff 73 48             	push   0x48(%ebx)
407145:	8d 85 78 ff ff ff    	lea    -0x88(%ebp),%eax
40714b:	50                   	push   %eax
40714c:	e8 df 50 00 00       	call   0x40c230
407151:	59                   	pop    %ecx
407152:	59                   	pop    %ecx
407153:	85 c0                	test   %eax,%eax
407155:	0f 84 78 02 00 00    	je     0x4073d3
40715b:	8d 85 78 ff ff ff    	lea    -0x88(%ebp),%eax
407161:	50                   	push   %eax
407162:	e8 f9 ed ff ff       	call   0x405f60
407167:	83 c0 05             	add    $0x5,%eax
40716a:	50                   	push   %eax
40716b:	89 85 74 fe ff ff    	mov    %eax,-0x18c(%ebp)
407171:	e8 ea 09 00 00       	call   0x407b60
407176:	59                   	pop    %ecx
407177:	59                   	pop    %ecx
407178:	89 85 70 fe ff ff    	mov    %eax,-0x190(%ebp)
40717e:	85 c0                	test   %eax,%eax
407180:	74 b0                	je     0x407132
407182:	8b 43 48             	mov    0x48(%ebx),%eax
407185:	8b 4d 08             	mov    0x8(%ebp),%ecx
407188:	89 85 5c fe ff ff    	mov    %eax,-0x1a4(%ebp)
40718e:	8d 44 8e 0c          	lea    0xc(%esi,%ecx,4),%eax
407192:	83 c1 06             	add    $0x6,%ecx
407195:	6b c9 06             	imul   $0x6,%ecx,%ecx
407198:	89 85 6c fe ff ff    	mov    %eax,-0x194(%ebp)
40719e:	8b 00                	mov    (%eax),%eax
4071a0:	89 85 58 fe ff ff    	mov    %eax,-0x1a8(%ebp)
4071a6:	8d 04 31             	lea    (%ecx,%esi,1),%eax
4071a9:	6a 06                	push   $0x6
4071ab:	50                   	push   %eax
4071ac:	89 85 64 fe ff ff    	mov    %eax,-0x19c(%ebp)
4071b2:	8d 85 3c fe ff ff    	lea    -0x1c4(%ebp),%eax
4071b8:	50                   	push   %eax
4071b9:	e8 42 0f 00 00       	call   0x408100
4071be:	8b 46 04             	mov    0x4(%esi),%eax
4071c1:	8d 8d 78 ff ff ff    	lea    -0x88(%ebp),%ecx
4071c7:	51                   	push   %ecx
4071c8:	8b 8d 74 fe ff ff    	mov    -0x18c(%ebp),%ecx
4071ce:	89 85 4c fe ff ff    	mov    %eax,-0x1b4(%ebp)
4071d4:	8b 85 70 fe ff ff    	mov    -0x190(%ebp),%eax
4071da:	83 c1 fc             	add    $0xfffffffc,%ecx
4071dd:	83 c0 04             	add    $0x4,%eax
4071e0:	51                   	push   %ecx
4071e1:	50                   	push   %eax
4071e2:	e8 d0 23 00 00       	call   0x4095b7
4071e7:	83 c4 18             	add    $0x18,%esp
4071ea:	85 c0                	test   %eax,%eax
4071ec:	74 0f                	je     0x4071fd
4071ee:	33 c0                	xor    %eax,%eax
4071f0:	50                   	push   %eax
4071f1:	50                   	push   %eax
4071f2:	50                   	push   %eax
4071f3:	50                   	push   %eax
4071f4:	50                   	push   %eax
4071f5:	e8 03 df ff ff       	call   0x4050fd
4071fa:	83 c4 14             	add    $0x14,%esp
4071fd:	8b 85 70 fe ff ff    	mov    -0x190(%ebp),%eax
407203:	8b 8d 6c fe ff ff    	mov    -0x194(%ebp),%ecx
407209:	83 c0 04             	add    $0x4,%eax
40720c:	89 43 48             	mov    %eax,0x48(%ebx)
40720f:	0f b7 85 50 fe ff ff 	movzwl -0x1b0(%ebp),%eax
407216:	89 01                	mov    %eax,(%ecx)
407218:	6a 06                	push   $0x6
40721a:	8d 85 50 fe ff ff    	lea    -0x1b0(%ebp),%eax
407220:	50                   	push   %eax
407221:	ff b5 64 fe ff ff    	push   -0x19c(%ebp)
407227:	e8 d4 0e 00 00       	call   0x408100
40722c:	83 c4 0c             	add    $0xc,%esp
40722f:	83 7d 08 02          	cmpl   $0x2,0x8(%ebp)
407233:	0f 85 f7 00 00 00    	jne    0x407330
407239:	8b 85 68 fe ff ff    	mov    -0x198(%ebp),%eax
40723f:	83 a5 74 fe ff ff 00 	andl   $0x0,-0x18c(%ebp)
407246:	89 46 04             	mov    %eax,0x4(%esi)
407249:	8b 47 24             	mov    0x24(%edi),%eax
40724c:	8b 4f 20             	mov    0x20(%edi),%ecx
40724f:	89 85 64 fe ff ff    	mov    %eax,-0x19c(%ebp)
407255:	8b c7                	mov    %edi,%eax
407257:	8b 56 04             	mov    0x4(%esi),%edx
40725a:	3b 10                	cmp    (%eax),%edx
40725c:	74 36                	je     0x407294
40725e:	8b 10                	mov    (%eax),%edx
407260:	ff 85 74 fe ff ff    	incl   -0x18c(%ebp)
407266:	89 08                	mov    %ecx,(%eax)
407268:	8b 8d 64 fe ff ff    	mov    -0x19c(%ebp),%ecx
40726e:	89 95 44 fe ff ff    	mov    %edx,-0x1bc(%ebp)
407274:	8b 50 04             	mov    0x4(%eax),%edx
407277:	89 48 04             	mov    %ecx,0x4(%eax)
40727a:	8b 8d 44 fe ff ff    	mov    -0x1bc(%ebp),%ecx
407280:	83 c0 08             	add    $0x8,%eax
407283:	83 bd 74 fe ff ff 05 	cmpl   $0x5,-0x18c(%ebp)
40728a:	89 95 64 fe ff ff    	mov    %edx,-0x19c(%ebp)
407290:	7c c5                	jl     0x407257
407292:	eb 22                	jmp    0x4072b6
407294:	8b 85 74 fe ff ff    	mov    -0x18c(%ebp),%eax
40729a:	85 c0                	test   %eax,%eax
40729c:	74 18                	je     0x4072b6
40729e:	8d 04 c7             	lea    (%edi,%eax,8),%eax
4072a1:	8b 10                	mov    (%eax),%edx
4072a3:	89 17                	mov    %edx,(%edi)
4072a5:	8b 50 04             	mov    0x4(%eax),%edx
4072a8:	89 57 04             	mov    %edx,0x4(%edi)
4072ab:	89 08                	mov    %ecx,(%eax)
4072ad:	8b 8d 64 fe ff ff    	mov    -0x19c(%ebp),%ecx
4072b3:	89 48 04             	mov    %ecx,0x4(%eax)
4072b6:	83 bd 74 fe ff ff 05 	cmpl   $0x5,-0x18c(%ebp)
4072bd:	75 68                	jne    0x407327
4072bf:	6a 01                	push   $0x1
4072c1:	ff 76 14             	push   0x14(%esi)
4072c4:	8d 85 78 fe ff ff    	lea    -0x188(%ebp),%eax
4072ca:	ff 76 04             	push   0x4(%esi)
4072cd:	50                   	push   %eax
4072ce:	6a 7f                	push   $0x7f
4072d0:	68 50 a3 41 00       	push   $0x41a350
4072d5:	6a 01                	push   $0x1
4072d7:	6a 00                	push   $0x0
4072d9:	e8 6f 61 00 00       	call   0x40d44d
4072de:	83 c4 20             	add    $0x20,%esp
4072e1:	85 c0                	test   %eax,%eax
4072e3:	74 39                	je     0x40731e
4072e5:	33 c0                	xor    %eax,%eax
4072e7:	b9 ff 01 00 00       	mov    $0x1ff,%ecx
4072ec:	66 21 8c 45 78 fe ff 	and    %cx,-0x188(%ebp,%eax,2)
4072f3:	ff
4072f4:	40                   	inc    %eax
4072f5:	83 f8 7f             	cmp    $0x7f,%eax
4072f8:	72 ed                	jb     0x4072e7
4072fa:	68 fe 00 00 00       	push   $0xfe
4072ff:	ff 35 64 b2 42 00    	push   0x42b264
407305:	8d 85 78 fe ff ff    	lea    -0x188(%ebp),%eax
40730b:	50                   	push   %eax
40730c:	e8 f6 8f 00 00       	call   0x410307
407311:	83 c4 0c             	add    $0xc,%esp
407314:	f7 d8                	neg    %eax
407316:	1b c0                	sbb    %eax,%eax
407318:	40                   	inc    %eax
407319:	89 47 04             	mov    %eax,0x4(%edi)
40731c:	eb 04                	jmp    0x407322
40731e:	83 67 04 00          	andl   $0x0,0x4(%edi)
407322:	8b 46 04             	mov    0x4(%esi),%eax
407325:	89 07                	mov    %eax,(%edi)
407327:	8b 47 04             	mov    0x4(%edi),%eax
40732a:	89 86 a8 00 00 00    	mov    %eax,0xa8(%esi)
407330:	83 7d 08 01          	cmpl   $0x1,0x8(%ebp)
407334:	75 09                	jne    0x40733f
407336:	8b 85 68 fe ff ff    	mov    -0x198(%ebp),%eax
40733c:	89 46 08             	mov    %eax,0x8(%esi)
40733f:	8b 45 08             	mov    0x8(%ebp),%eax
407342:	6b c0 0c             	imul   $0xc,%eax,%eax
407345:	56                   	push   %esi
407346:	ff 90 10 a3 41 00    	call   *0x41a310(%eax)
40734c:	59                   	pop    %ecx
40734d:	85 c0                	test   %eax,%eax
40734f:	74 31                	je     0x407382
407351:	8b 85 5c fe ff ff    	mov    -0x1a4(%ebp),%eax
407357:	ff b5 70 fe ff ff    	push   -0x190(%ebp)
40735d:	89 43 48             	mov    %eax,0x48(%ebx)
407360:	e8 bb dc ff ff       	call   0x405020
407365:	8b 85 58 fe ff ff    	mov    -0x1a8(%ebp),%eax
40736b:	59                   	pop    %ecx
40736c:	8b 8d 6c fe ff ff    	mov    -0x194(%ebp),%ecx
407372:	89 01                	mov    %eax,(%ecx)
407374:	8b 85 4c fe ff ff    	mov    -0x1b4(%ebp),%eax
40737a:	89 46 04             	mov    %eax,0x4(%esi)
40737d:	e9 b0 fd ff ff       	jmp    0x407132
407382:	81 bd 5c fe ff ff a8 	cmpl   $0x42b7a8,-0x1a4(%ebp)
407389:	b7 42 00
40738c:	74 2d                	je     0x4073bb
40738e:	8b 45 08             	mov    0x8(%ebp),%eax
407391:	83 c0 05             	add    $0x5,%eax
407394:	c1 e0 04             	shl    $0x4,%eax
407397:	8d 3c 30             	lea    (%eax,%esi,1),%edi
40739a:	ff 37                	push   (%edi)
40739c:	ff 15 78 a0 41 00    	call   *0x41a078
4073a2:	85 c0                	test   %eax,%eax
4073a4:	75 15                	jne    0x4073bb
4073a6:	ff 37                	push   (%edi)
4073a8:	e8 73 dc ff ff       	call   0x405020
4073ad:	ff 73 54             	push   0x54(%ebx)
4073b0:	e8 6b dc ff ff       	call   0x405020
4073b5:	83 63 4c 00          	andl   $0x0,0x4c(%ebx)
4073b9:	59                   	pop    %ecx
4073ba:	59                   	pop    %ecx
4073bb:	8b 4d 08             	mov    0x8(%ebp),%ecx
4073be:	8b 85 70 fe ff ff    	mov    -0x190(%ebp),%eax
4073c4:	83 c1 05             	add    $0x5,%ecx
4073c7:	c1 e1 04             	shl    $0x4,%ecx
4073ca:	c7 00 01 00 00 00    	movl   $0x1,(%eax)
4073d0:	89 04 31             	mov    %eax,(%ecx,%esi,1)
4073d3:	8b 43 48             	mov    0x48(%ebx),%eax
4073d6:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4073d9:	5f                   	pop    %edi
4073da:	33 cd                	xor    %ebp,%ecx
4073dc:	5b                   	pop    %ebx
4073dd:	e8 44 f2 ff ff       	call   0x406626
4073e2:	c9                   	leave
4073e3:	c3                   	ret
4073e4:	8b ff                	mov    %edi,%edi
4073e6:	55                   	push   %ebp
4073e7:	8b ec                	mov    %esp,%ebp
4073e9:	81 ec 98 00 00 00    	sub    $0x98,%esp
4073ef:	a1 68 b2 42 00       	mov    0x42b268,%eax
4073f4:	33 c5                	xor    %ebp,%eax
4073f6:	89 45 fc             	mov    %eax,-0x4(%ebp)
4073f9:	8b 45 08             	mov    0x8(%ebp),%eax
4073fc:	53                   	push   %ebx
4073fd:	56                   	push   %esi
4073fe:	33 db                	xor    %ebx,%ebx
407400:	8b f2                	mov    %edx,%esi
407402:	57                   	push   %edi
407403:	89 b5 68 ff ff ff    	mov    %esi,-0x98(%ebp)
407409:	3b c3                	cmp    %ebx,%eax
40740b:	74 1c                	je     0x407429
40740d:	3b cb                	cmp    %ebx,%ecx
40740f:	74 0c                	je     0x40741d
407411:	50                   	push   %eax
407412:	e8 cb fc ff ff       	call   0x4070e2
407417:	59                   	pop    %ecx
407418:	e9 d3 01 00 00       	jmp    0x4075f0
40741d:	c1 e0 04             	shl    $0x4,%eax
407420:	8b 44 30 48          	mov    0x48(%eax,%esi,1),%eax
407424:	e9 c7 01 00 00       	jmp    0x4075f0
407429:	c7 85 70 ff ff ff 01 	movl   $0x1,-0x90(%ebp)
407430:	00 00 00
407433:	89 9d 74 ff ff ff    	mov    %ebx,-0x8c(%ebp)
407439:	3b cb                	cmp    %ebx,%ecx
40743b:	0f 84 aa 01 00 00    	je     0x4075eb
407441:	80 39 4c             	cmpb   $0x4c,(%ecx)
407444:	0f 85 30 01 00 00    	jne    0x40757a
40744a:	80 79 01 43          	cmpb   $0x43,0x1(%ecx)
40744e:	0f 85 26 01 00 00    	jne    0x40757a
407454:	80 79 02 5f          	cmpb   $0x5f,0x2(%ecx)
407458:	0f 85 1c 01 00 00    	jne    0x40757a
40745e:	8b f9                	mov    %ecx,%edi
407460:	68 e4 a3 41 00       	push   $0x41a3e4
407465:	57                   	push   %edi
407466:	e8 e5 a5 00 00       	call   0x411a50
40746b:	8b d8                	mov    %eax,%ebx
40746d:	59                   	pop    %ecx
40746e:	59                   	pop    %ecx
40746f:	85 db                	test   %ebx,%ebx
407471:	0f 84 ff 00 00 00    	je     0x407576
407477:	2b c7                	sub    %edi,%eax
407479:	89 85 70 ff ff ff    	mov    %eax,-0x90(%ebp)
40747f:	0f 84 f1 00 00 00    	je     0x407576
407485:	80 3b 3b             	cmpb   $0x3b,(%ebx)
407488:	0f 84 e8 00 00 00    	je     0x407576
40748e:	c7 85 6c ff ff ff 01 	movl   $0x1,-0x94(%ebp)
407495:	00 00 00
407498:	be 14 a3 41 00       	mov    $0x41a314,%esi
40749d:	eb 06                	jmp    0x4074a5
40749f:	8b 85 70 ff ff ff    	mov    -0x90(%ebp),%eax
4074a5:	50                   	push   %eax
4074a6:	57                   	push   %edi
4074a7:	ff 36                	push   (%esi)
4074a9:	e8 d9 a4 00 00       	call   0x411987
4074ae:	83 c4 0c             	add    $0xc,%esp
4074b1:	85 c0                	test   %eax,%eax
4074b3:	75 10                	jne    0x4074c5
4074b5:	ff 36                	push   (%esi)
4074b7:	e8 a4 ea ff ff       	call   0x405f60
4074bc:	59                   	pop    %ecx
4074bd:	39 85 70 ff ff ff    	cmp    %eax,-0x90(%ebp)
4074c3:	74 11                	je     0x4074d6
4074c5:	ff 85 6c ff ff ff    	incl   -0x94(%ebp)
4074cb:	83 c6 0c             	add    $0xc,%esi
4074ce:	81 fe 44 a3 41 00    	cmp    $0x41a344,%esi
4074d4:	7e c9                	jle    0x40749f
4074d6:	43                   	inc    %ebx
4074d7:	68 dc a3 41 00       	push   $0x41a3dc
4074dc:	53                   	push   %ebx
4074dd:	e8 7e 85 00 00       	call   0x40fa60
4074e2:	8b f8                	mov    %eax,%edi
4074e4:	33 f6                	xor    %esi,%esi
4074e6:	59                   	pop    %ecx
4074e7:	59                   	pop    %ecx
4074e8:	3b fe                	cmp    %esi,%edi
4074ea:	75 09                	jne    0x4074f5
4074ec:	80 3b 3b             	cmpb   $0x3b,(%ebx)
4074ef:	0f 85 81 00 00 00    	jne    0x407576
4074f5:	83 bd 6c ff ff ff 05 	cmpl   $0x5,-0x94(%ebp)
4074fc:	7f 51                	jg     0x40754f
4074fe:	57                   	push   %edi
4074ff:	53                   	push   %ebx
407500:	8d 85 78 ff ff ff    	lea    -0x88(%ebp),%eax
407506:	68 83 00 00 00       	push   $0x83
40750b:	50                   	push   %eax
40750c:	e8 95 85 00 00       	call   0x40faa6
407511:	83 c4 10             	add    $0x10,%esp
407514:	85 c0                	test   %eax,%eax
407516:	74 0d                	je     0x407525
407518:	56                   	push   %esi
407519:	56                   	push   %esi
40751a:	56                   	push   %esi
40751b:	56                   	push   %esi
40751c:	56                   	push   %esi
40751d:	e8 db db ff ff       	call   0x4050fd
407522:	83 c4 14             	add    $0x14,%esp
407525:	ff b5 6c ff ff ff    	push   -0x94(%ebp)
40752b:	8b b5 68 ff ff ff    	mov    -0x98(%ebp),%esi
407531:	8d 8d 78 ff ff ff    	lea    -0x88(%ebp),%ecx
407537:	c6 84 3d 78 ff ff ff 	movb   $0x0,-0x88(%ebp,%edi,1)
40753e:	00
40753f:	e8 9e fb ff ff       	call   0x4070e2
407544:	59                   	pop    %ecx