40321f:	6a 65                	push   $0x65
403221:	b9 e3 00 00 00       	mov    $0xe3,%ecx
403226:	e8 26 68 00 00       	call   0x409a51
40322b:	8d 8e 04 02 00 00    	lea    0x204(%esi),%ecx
403231:	8b d0                	mov    %eax,%edx
403233:	e8 be 71 00 00       	call   0x40a3f6
403238:	68 00 01 00 00       	push   $0x100
40323d:	b9 d1 00 00 00       	mov    $0xd1,%ecx
403242:	e8 0a 68 00 00       	call   0x409a51
403247:	8d 4e 04             	lea    0x4(%esi),%ecx
40324a:	8b d0                	mov    %eax,%edx
40324c:	e8 a5 71 00 00       	call   0x40a3f6
403251:	68 00 01 00 00       	push   $0x100
403256:	8d 8e d4 02 00 00    	lea    0x2d4(%esi),%ecx
40325c:	ba 30 12 40 00       	mov    $0x401230,%edx
403261:	e8 90 71 00 00       	call   0x40a3f6
403266:	8b 77 5c             	mov    0x5c(%edi),%esi
403269:	81 c6 bc 2b 00 00    	add    $0x2bbc,%esi
40326f:	c7 06 09 00 00 00    	movl   $0x9,(%esi)
403275:	c7 86 d0 02 00 00 01 	movl   $0x2001,0x2d0(%esi)
40327c:	20 00 00
40327f:	83 a6 d4 04 00 00 00 	andl   $0x0,0x4d4(%esi)
403286:	83 a6 d8 04 00 00 00 	andl   $0x0,0x4d8(%esi)
40328d:	6a 65                	push   $0x65
40328f:	b9 e3 00 00 00       	mov    $0xe3,%ecx
403294:	e8 b8 67 00 00       	call   0x409a51
403299:	8d 8e 04 02 00 00    	lea    0x204(%esi),%ecx
40329f:	8b d0                	mov    %eax,%edx
4032a1:	e8 50 71 00 00       	call   0x40a3f6
4032a6:	68 00 01 00 00       	push   $0x100
4032ab:	b9 d2 00 00 00       	mov    $0xd2,%ecx
4032b0:	e8 9c 67 00 00       	call   0x409a51
4032b5:	8d 4e 04             	lea    0x4(%esi),%ecx
4032b8:	8b d0                	mov    %eax,%edx
4032ba:	e8 37 71 00 00       	call   0x40a3f6
4032bf:	68 00 01 00 00       	push   $0x100
4032c4:	8d 8e d4 02 00 00    	lea    0x2d4(%esi),%ecx
4032ca:	ba 30 12 40 00       	mov    $0x401230,%edx
4032cf:	e8 22 71 00 00       	call   0x40a3f6
4032d4:	8b 77 5c             	mov    0x5c(%edi),%esi
4032d7:	81 c6 98 30 00 00    	add    $0x3098,%esi
4032dd:	c7 06 0b 00 00 00    	movl   $0xb,(%esi)
4032e3:	89 9e d0 02 00 00    	mov    %ebx,0x2d0(%esi)
4032e9:	83 a6 d4 04 00 00 00 	andl   $0x0,0x4d4(%esi)
4032f0:	83 a6 d8 04 00 00 00 	andl   $0x0,0x4d8(%esi)
4032f7:	6a 65                	push   $0x65
4032f9:	b9 e3 00 00 00       	mov    $0xe3,%ecx
4032fe:	e8 4e 67 00 00       	call   0x409a51
403303:	8d 8e 04 02 00 00    	lea    0x204(%esi),%ecx
403309:	8b d0                	mov    %eax,%edx
40330b:	e8 e6 70 00 00       	call   0x40a3f6
403310:	bb 00 01 00 00       	mov    $0x100,%ebx
403315:	53                   	push   %ebx
403316:	8d 4b d3             	lea    -0x2d(%ebx),%ecx
403319:	e8 33 67 00 00       	call   0x409a51
40331e:	8d 4e 04             	lea    0x4(%esi),%ecx
403321:	8b d0                	mov    %eax,%edx
403323:	e8 ce 70 00 00       	call   0x40a3f6
403328:	53                   	push   %ebx
403329:	8d 8e d4 02 00 00    	lea    0x2d4(%esi),%ecx
40332f:	ba 30 12 40 00       	mov    $0x401230,%edx
403334:	e8 bd 70 00 00       	call   0x40a3f6
403339:	8d 5f 54             	lea    0x54(%edi),%ebx
40333c:	53                   	push   %ebx
40333d:	ff 77 24             	push   0x24(%edi)
403340:	8b 57 5c             	mov    0x5c(%edi),%edx
403343:	e8 ea a0 00 00       	call   0x40d432
403348:	89 45 c8             	mov    %eax,-0x38(%ebp)
40334b:	85 c0                	test   %eax,%eax
40334d:	75 07                	jne    0x403356
40334f:	33 c0                	xor    %eax,%eax
403351:	e9 f2 02 00 00       	jmp    0x403648
403356:	83 7f 4c 00          	cmpl   $0x0,0x4c(%edi)
40335a:	75 2c                	jne    0x403388
40335c:	b9 d2 00 00 00       	mov    $0xd2,%ecx
403361:	e8 eb 66 00 00       	call   0x409a51
403366:	51                   	push   %ecx
403367:	6a 01                	push   $0x1
403369:	50                   	push   %eax
40336a:	be 00 00 02 00       	mov    $0x20000,%esi
40336f:	56                   	push   %esi
403370:	33 d2                	xor    %edx,%edx
403372:	42                   	inc    %edx
403373:	8b 0b                	mov    (%ebx),%ecx
403375:	e8 66 56 00 00       	call   0x4089e0
40337a:	83 f8 ff             	cmp    $0xffffffff,%eax
40337d:	74 0e                	je     0x40338d
40337f:	c7 47 4c 01 00 00 00 	movl   $0x1,0x4c(%edi)
403386:	eb 05                	jmp    0x40338d
403388:	be 00 00 02 00       	mov    $0x20000,%esi
40338d:	83 7f 4c 00          	cmpl   $0x0,0x4c(%edi)
403391:	75 25                	jne    0x4033b8
403393:	b9 ca 00 00 00       	mov    $0xca,%ecx
403398:	e8 b4 66 00 00       	call   0x409a51
40339d:	51                   	push   %ecx
40339e:	6a 01                	push   $0x1
4033a0:	50                   	push   %eax
4033a1:	56                   	push   %esi
4033a2:	33 d2                	xor    %edx,%edx
4033a4:	42                   	inc    %edx
4033a5:	8b 0b                	mov    (%ebx),%ecx
4033a7:	e8 34 56 00 00       	call   0x4089e0
4033ac:	83 f8 ff             	cmp    $0xffffffff,%eax
4033af:	74 07                	je     0x4033b8
4033b1:	c7 47 4c 01 00 00 00 	movl   $0x1,0x4c(%edi)
4033b8:	83 7f 48 00          	cmpl   $0x0,0x48(%edi)
4033bc:	75 25                	jne    0x4033e3
4033be:	b9 d0 00 00 00       	mov    $0xd0,%ecx
4033c3:	e8 89 66 00 00       	call   0x409a51
4033c8:	51                   	push   %ecx
4033c9:	6a 01                	push   $0x1
4033cb:	50                   	push   %eax
4033cc:	56                   	push   %esi
4033cd:	33 d2                	xor    %edx,%edx
4033cf:	42                   	inc    %edx
4033d0:	8b 0b                	mov    (%ebx),%ecx
4033d2:	e8 09 56 00 00       	call   0x4089e0
4033d7:	83 f8 ff             	cmp    $0xffffffff,%eax
4033da:	74 07                	je     0x4033e3
4033dc:	c7 47 48 01 00 00 00 	movl   $0x1,0x48(%edi)
4033e3:	83 7f 44 00          	cmpl   $0x0,0x44(%edi)
4033e7:	75 25                	jne    0x40340e
4033e9:	b9 d1 00 00 00       	mov    $0xd1,%ecx
4033ee:	e8 5e 66 00 00       	call   0x409a51
4033f3:	51                   	push   %ecx
4033f4:	6a 01                	push   $0x1
4033f6:	50                   	push   %eax
4033f7:	56                   	push   %esi
4033f8:	33 d2                	xor    %edx,%edx
4033fa:	42                   	inc    %edx
4033fb:	8b 0b                	mov    (%ebx),%ecx
4033fd:	e8 de 55 00 00       	call   0x4089e0
403402:	83 f8 ff             	cmp    $0xffffffff,%eax
403405:	74 07                	je     0x40340e
403407:	c7 47 44 01 00 00 00 	movl   $0x1,0x44(%edi)
40340e:	83 7f 40 00          	cmpl   $0x0,0x40(%edi)
403412:	75 25                	jne    0x403439
403414:	b9 d3 00 00 00       	mov    $0xd3,%ecx
403419:	e8 33 66 00 00       	call   0x409a51
40341e:	51                   	push   %ecx
40341f:	6a 01                	push   $0x1
403421:	50                   	push   %eax
403422:	56                   	push   %esi
403423:	33 d2                	xor    %edx,%edx
403425:	42                   	inc    %edx
403426:	8b 0b                	mov    (%ebx),%ecx
403428:	e8 b3 55 00 00       	call   0x4089e0
40342d:	83 f8 ff             	cmp    $0xffffffff,%eax
403430:	74 07                	je     0x403439
403432:	c7 47 40 01 00 00 00 	movl   $0x1,0x40(%edi)
403439:	8d 4d ec             	lea    -0x14(%ebp),%ecx
40343c:	ff 15 f8 21 41 00    	call   *0x4121f8
403442:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
403446:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
40344a:	8d 47 60             	lea    0x60(%edi),%eax
40344d:	89 45 d0             	mov    %eax,-0x30(%ebp)
403450:	68 b0 12 40 00       	push   $0x4012b0
403455:	8b c8                	mov    %eax,%ecx
403457:	ff 15 2c 22 41 00    	call   *0x41222c
40345d:	bf b8 13 40 00       	mov    $0x4013b8,%edi
403462:	89 7d cc             	mov    %edi,-0x34(%ebp)
403465:	8b 0b                	mov    (%ebx),%ecx
403467:	e8 4c 59 00 00       	call   0x408db8
40346c:	89 45 d8             	mov    %eax,-0x28(%ebp)
40346f:	33 f6                	xor    %esi,%esi
403471:	89 75 d4             	mov    %esi,-0x2c(%ebp)
403474:	3b f0                	cmp    %eax,%esi
403476:	0f 8d b6 01 00 00    	jge    0x403632
40347c:	83 65 dc 00          	andl   $0x0,-0x24(%ebp)
403480:	6a 03                	push   $0x3
403482:	8b d6                	mov    %esi,%edx
403484:	8b 0b                	mov    (%ebx),%ecx
403486:	e8 e4 5b 00 00       	call   0x40906f
40348b:	89 45 e8             	mov    %eax,-0x18(%ebp)
40348e:	6a 01                	push   $0x1
403490:	8b d6                	mov    %esi,%edx
403492:	8b 0b                	mov    (%ebx),%ecx
403494:	e8 d6 5b 00 00       	call   0x40906f
403499:	89 45 e4             	mov    %eax,-0x1c(%ebp)
40349c:	6a 02                	push   $0x2
40349e:	8b d6                	mov    %esi,%edx
4034a0:	8b 0b                	mov    (%ebx),%ecx
4034a2:	e8 c8 5b 00 00       	call   0x40906f
4034a7:	83 7d e4 00          	cmpl   $0x0,-0x1c(%ebp)
4034ab:	0f 84 45 01 00 00    	je     0x4035f6
4034b1:	85 c0                	test   %eax,%eax
4034b3:	0f 84 3d 01 00 00    	je     0x4035f6
4034b9:	83 7d e8 00          	cmpl   $0x0,-0x18(%ebp)
4034bd:	0f 84 33 01 00 00    	je     0x4035f6
4034c3:	8b c8                	mov    %eax,%ecx
4034c5:	e8 91 a4 00 00       	call   0x40d95b
4034ca:	89 45 e0             	mov    %eax,-0x20(%ebp)
4034cd:	6a 00                	push   $0x0
4034cf:	6a 01                	push   $0x1
4034d1:	b9 cc 00 00 00       	mov    $0xcc,%ecx
4034d6:	e8 76 65 00 00       	call   0x409a51
4034db:	8b 55 e4             	mov    -0x1c(%ebp),%edx
4034de:	8b c8                	mov    %eax,%ecx
4034e0:	e8 b5 6f 00 00       	call   0x40a49a
4034e5:	85 c0                	test   %eax,%eax
4034e7:	75 1c                	jne    0x403505
4034e9:	8b 4d e8             	mov    -0x18(%ebp),%ecx
4034ec:	e8 44 67 00 00       	call   0x409c35
4034f1:	50                   	push   %eax
4034f2:	ff 75 e0             	push   -0x20(%ebp)
4034f5:	68 c4 13 40 00       	push   $0x4013c4
4034fa:	57                   	push   %edi
4034fb:	68 d8 13 40 00       	push   $0x4013d8
403500:	e9 a9 00 00 00       	jmp    0x4035ae
403505:	6a 00                	push   $0x0
403507:	6a 01                	push   $0x1
403509:	b9 cd 00 00 00       	mov    $0xcd,%ecx
40350e:	e8 3e 65 00 00       	call   0x409a51
403513:	8b 55 e4             	mov    -0x1c(%ebp),%edx
403516:	8b c8                	mov    %eax,%ecx
403518:	e8 7d 6f 00 00       	call   0x40a49a
40351d:	85 c0                	test   %eax,%eax
40351f:	75 13                	jne    0x403534
403521:	8b 4d e8             	mov    -0x18(%ebp),%ecx
403524:	e8 0c 67 00 00       	call   0x409c35
403529:	50                   	push   %eax
40352a:	ff 75 e0             	push   -0x20(%ebp)
40352d:	68 f4 13 40 00       	push   $0x4013f4
403532:	eb c6                	jmp    0x4034fa
403534:	6a 00                	push   $0x0
403536:	6a 01                	push   $0x1
403538:	b9 cb 00 00 00       	mov    $0xcb,%ecx
40353d:	e8 0f 65 00 00       	call   0x409a51
403542:	8b 55 e4             	mov    -0x1c(%ebp),%edx
403545:	8b c8                	mov    %eax,%ecx
403547:	e8 4e 6f 00 00       	call   0x40a49a
40354c:	85 c0                	test   %eax,%eax
40354e:	75 28                	jne    0x403578
403550:	6a 2a                	push   $0x2a
403552:	ff 75 e8             	push   -0x18(%ebp)
403555:	ff 15 58 22 41 00    	call   *0x412258
40355b:	59                   	pop    %ecx
40355c:	59                   	pop    %ecx
40355d:	85 c0                	test   %eax,%eax
40355f:	0f 85 88 00 00 00    	jne    0x4035ed
403565:	ff 75 e8             	push   -0x18(%ebp)
403568:	ff 75 e0             	push   -0x20(%ebp)
40356b:	68 08 14 40 00       	push   $0x401408
403570:	57                   	push   %edi
403571:	68 18 14 40 00       	push   $0x401418
403576:	eb 36                	jmp    0x4035ae
403578:	6a 00                	push   $0x0
40357a:	6a 01                	push   $0x1
40357c:	b9 cf 00 00 00       	mov    $0xcf,%ecx
403581:	e8 cb 64 00 00       	call   0x409a51
403586:	8b 55 e4             	mov    -0x1c(%ebp),%edx
403589:	8b c8                	mov    %eax,%ecx
40358b:	e8 0a 6f 00 00       	call   0x40a49a
403590:	85 c0                	test   %eax,%eax
403592:	75 59                	jne    0x4035ed
403594:	8b 4d e8             	mov    -0x18(%ebp),%ecx
403597:	e8 99 66 00 00       	call   0x409c35
40359c:	c1 e0 0a             	shl    $0xa,%eax
40359f:	50                   	push   %eax
4035a0:	ff 75 e0             	push   -0x20(%ebp)
4035a3:	68 38 14 40 00       	push   $0x401438
4035a8:	57                   	push   %edi
4035a9:	68 58 14 40 00       	push   $0x401458
4035ae:	8d 45 ec             	lea    -0x14(%ebp),%eax
4035b1:	50                   	push   %eax
4035b2:	ff 15 04 22 41 00    	call   *0x412204
4035b8:	c7 45 dc 01 00 00 00 	movl   $0x1,-0x24(%ebp)
4035bf:	83 c4 18             	add    $0x18,%esp
4035c2:	8d 45 ec             	lea    -0x14(%ebp),%eax
4035c5:	50                   	push   %eax
4035c6:	8b 4d d0             	mov    -0x30(%ebp),%ecx
4035c9:	ff 15 fc 21 41 00    	call   *0x4121fc
4035cf:	bf 74 14 40 00       	mov    $0x401474,%edi
4035d4:	89 7d cc             	mov    %edi,-0x34(%ebp)
4035d7:	8b d6                	mov    %esi,%edx
4035d9:	8b 0b                	mov    (%ebx),%ecx
4035db:	e8 88 57 00 00       	call   0x408d68
4035e0:	4e                   	dec    %esi
4035e1:	89 75 d4             	mov    %esi,-0x2c(%ebp)
4035e4:	8b 45 d8             	mov    -0x28(%ebp),%eax
4035e7:	48                   	dec    %eax
4035e8:	89 45 d8             	mov    %eax,-0x28(%ebp)
4035eb:	eb 03                	jmp    0x4035f0
4035ed:	8b 45 d8             	mov    -0x28(%ebp),%eax
4035f0:	46                   	inc    %esi
4035f1:	e9 7b fe ff ff       	jmp    0x403471
4035f6:	68 fd 00 03 80       	push   $0x800300fd
4035fb:	ff 15 74 20 41 00    	call   *0x412074
403601:	e8 ee 61 00 00       	call   0x4097f4
403606:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
40360a:	8d 4d ec             	lea    -0x14(%ebp),%ecx
40360d:	ff 15 30 22 41 00    	call   *0x412230
403613:	e9 37 fd ff ff       	jmp    0x40334f
403618:	68 0e 00 07 80       	push   $0x8007000e
40361d:	ff 15 74 20 41 00    	call   *0x412074
403623:	e8 cc 61 00 00       	call   0x4097f4
403628:	83 65 c8 00          	andl   $0x0,-0x38(%ebp)
40362c:	b8 32 36 40 00       	mov    $0x403632,%eax
403631:	c3                   	ret
403632:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
403636:	8b 75 c8             	mov    -0x38(%ebp),%esi
403639:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
40363d:	8d 4d ec             	lea    -0x14(%ebp),%ecx
403640:	ff 15 30 22 41 00    	call   *0x412230
403646:	8b c6                	mov    %esi,%eax
403648:	e8 ac bc 00 00       	call   0x40f2f9
40364d:	c3                   	ret
40364e:	8b ff                	mov    %edi,%edi
403650:	55                   	push   %ebp
403651:	8b ec                	mov    %esp,%ebp
403653:	81 ec 94 00 00 00    	sub    $0x94,%esp
403659:	a1 44 10 41 00       	mov    0x411044,%eax
40365e:	33 c5                	xor    %ebp,%eax
403660:	89 45 fc             	mov    %eax,-0x4(%ebp)
403663:	8b 45 08             	mov    0x8(%ebp),%eax
403666:	53                   	push   %ebx
403667:	56                   	push   %esi
403668:	57                   	push   %edi
403669:	68 80 00 00 00       	push   $0x80
40366e:	89 85 70 ff ff ff    	mov    %eax,-0x90(%ebp)
403674:	8b da                	mov    %edx,%ebx
403676:	8d 85 7c ff ff ff    	lea    -0x84(%ebp),%eax
40367c:	89 9d 6c ff ff ff    	mov    %ebx,-0x94(%ebp)
403682:	6a 00                	push   $0x0
403684:	50                   	push   %eax
403685:	8b f1                	mov    %ecx,%esi
403687:	e8 38 bd 00 00       	call   0x40f3c4
40368c:	83 c4 0c             	add    $0xc,%esp
40368f:	85 f6                	test   %esi,%esi
403691:	0f 84 46 01 00 00    	je     0x4037dd
403697:	85 db                	test   %ebx,%ebx
403699:	0f 84 3e 01 00 00    	je     0x4037dd
40369f:	8b 85 70 ff ff ff    	mov    -0x90(%ebp),%eax
4036a5:	33 db                	xor    %ebx,%ebx
4036a7:	33 ff                	xor    %edi,%edi
4036a9:	21 18                	and    %ebx,(%eax)
4036ab:	8b 95 6c ff ff ff    	mov    -0x94(%ebp),%edx
4036b1:	8b ce                	mov    %esi,%ecx
4036b3:	53                   	push   %ebx
4036b4:	6a 01                	push   $0x1
4036b6:	e8 85 68 00 00       	call   0x409f40
4036bb:	83 f8 ff             	cmp    $0xffffffff,%eax
4036be:	75 09                	jne    0x4036c9
4036c0:	83 a5 74 ff ff ff 00 	andl   $0x0,-0x8c(%ebp)
4036c7:	eb 0d                	jmp    0x4036d6
4036c9:	8d 04 46             	lea    (%esi,%eax,2),%eax
4036cc:	89 85 74 ff ff ff    	mov    %eax,-0x8c(%ebp)
4036d2:	85 c0                	test   %eax,%eax
4036d4:	75 34                	jne    0x40370a
4036d6:	8b ce                	mov    %esi,%ecx