403220:	83 c4 0c             	add    $0xc,%esp
403223:	33 c9                	xor    %ecx,%ecx
403225:	81 7c 24 1c 82 00 00 	cmpl   $0x82,0x1c(%esp)
40322c:	00
40322d:	b8 05 00 00 00       	mov    $0x5,%eax
403232:	0f 95 c1             	setne  %cl
403235:	89 44 24 50          	mov    %eax,0x50(%esp)
403239:	89 54 24 54          	mov    %edx,0x54(%esp)
40323d:	8b 54 24 14          	mov    0x14(%esp),%edx
403241:	89 44 24 70          	mov    %eax,0x70(%esp)
403245:	8d 44 24 18          	lea    0x18(%esp),%eax
403249:	50                   	push   %eax
40324a:	8d 0c cd 03 00 00 00 	lea    0x3(,%ecx,8),%ecx
403251:	89 4c 24 64          	mov    %ecx,0x64(%esp)
403255:	8b 4c 24 24          	mov    0x24(%esp),%ecx
403259:	89 54 24 78          	mov    %edx,0x78(%esp)
40325d:	51                   	push   %ecx
40325e:	8d 54 24 40          	lea    0x40(%esp),%edx
403262:	52                   	push   %edx
403263:	6a 02                	push   $0x2
403265:	c7 44 24 48 04 00 00 	movl   $0x4,0x48(%esp)
40326c:	00
40326d:	c7 44 24 4c 01 00 00 	movl   $0x1,0x4c(%esp)
403274:	00
403275:	89 5c 24 50          	mov    %ebx,0x50(%esp)
403279:	89 5c 24 5c          	mov    %ebx,0x5c(%esp)
40327d:	c7 44 24 68 00 00 00 	movl   $0x10000000,0x68(%esp)
403284:	10
403285:	c7 44 24 6c 02 00 00 	movl   $0x2,0x6c(%esp)
40328c:	00
40328d:	89 5c 24 7c          	mov    %ebx,0x7c(%esp)
403291:	ff 15 74 33 47 00    	call   *0x473374
403297:	85 c0                	test   %eax,%eax
403299:	75 18                	jne    0x4032b3
40329b:	8b 44 24 18          	mov    0x18(%esp),%eax
40329f:	53                   	push   %ebx
4032a0:	50                   	push   %eax
4032a1:	53                   	push   %ebx
4032a2:	53                   	push   %ebx
4032a3:	68 04 00 00 80       	push   $0x80000004
4032a8:	6a 01                	push   $0x1
4032aa:	57                   	push   %edi
4032ab:	ff 15 5c 33 47 00    	call   *0x47335c
4032b1:	8b e8                	mov    %eax,%ebp
4032b3:	8b 44 24 10          	mov    0x10(%esp),%eax
4032b7:	8b 35 70 33 47 00    	mov    0x473370,%esi
4032bd:	3b c3                	cmp    %ebx,%eax
4032bf:	74 03                	je     0x4032c4
4032c1:	50                   	push   %eax
4032c2:	ff d6                	call   *%esi
4032c4:	8b 44 24 14          	mov    0x14(%esp),%eax
4032c8:	3b c3                	cmp    %ebx,%eax
4032ca:	74 03                	je     0x4032cf
4032cc:	50                   	push   %eax
4032cd:	ff d6                	call   *%esi
4032cf:	8b 44 24 18          	mov    0x18(%esp),%eax
4032d3:	8b 35 60 34 47 00    	mov    0x473460,%esi
4032d9:	3b c3                	cmp    %ebx,%eax
4032db:	74 03                	je     0x4032e0
4032dd:	50                   	push   %eax
4032de:	ff d6                	call   *%esi
4032e0:	8b 44 24 24          	mov    0x24(%esp),%eax
4032e4:	3b c3                	cmp    %ebx,%eax
4032e6:	74 03                	je     0x4032eb
4032e8:	50                   	push   %eax
4032e9:	ff d6                	call   *%esi
4032eb:	8b c5                	mov    %ebp,%eax
4032ed:	5e                   	pop    %esi
4032ee:	5f                   	pop    %edi
4032ef:	5d                   	pop    %ebp
4032f0:	5b                   	pop    %ebx
4032f1:	83 c4 68             	add    $0x68,%esp
4032f4:	c3                   	ret
4032f5:	cc                   	int3
4032f6:	cc                   	int3
4032f7:	cc                   	int3
4032f8:	cc                   	int3
4032f9:	cc                   	int3
4032fa:	cc                   	int3
4032fb:	cc                   	int3
4032fc:	cc                   	int3
4032fd:	cc                   	int3
4032fe:	cc                   	int3
4032ff:	cc                   	int3
403300:	81 ec 08 02 00 00    	sub    $0x208,%esp
403306:	56                   	push   %esi
403307:	8b b4 24 10 02 00 00 	mov    0x210(%esp),%esi
40330e:	57                   	push   %edi
40330f:	56                   	push   %esi
403310:	68 c8 c1 45 00       	push   $0x45c1c8
403315:	8d 44 24 10          	lea    0x10(%esp),%eax
403319:	68 04 01 00 00       	push   $0x104
40331e:	50                   	push   %eax
40331f:	e8 3b d3 02 00       	call   0x43065f
403324:	8b bc 24 28 02 00 00 	mov    0x228(%esp),%edi
40332b:	8d 54 24 18          	lea    0x18(%esp),%edx
40332f:	52                   	push   %edx
403330:	33 c9                	xor    %ecx,%ecx
403332:	68 9c c1 45 00       	push   $0x45c19c
403337:	57                   	push   %edi
403338:	66 89 8c 24 2a 02 00 	mov    %cx,0x22a(%esp)
40333f:	00
403340:	e8 fb 2e 00 00       	call   0x406240
403345:	56                   	push   %esi
403346:	68 7c c1 45 00       	push   $0x45c17c
40334b:	8d 44 24 2c          	lea    0x2c(%esp),%eax
40334f:	68 04 01 00 00       	push   $0x104
403354:	50                   	push   %eax
403355:	e8 05 d3 02 00       	call   0x43065f
40335a:	8d 54 24 34          	lea    0x34(%esp),%edx
40335e:	52                   	push   %edx
40335f:	33 c9                	xor    %ecx,%ecx
403361:	68 4c c1 45 00       	push   $0x45c14c
403366:	57                   	push   %edi
403367:	66 89 8c 24 46 02 00 	mov    %cx,0x246(%esp)
40336e:	00
40336f:	e8 cc 2e 00 00       	call   0x406240
403374:	83 c4 38             	add    $0x38,%esp
403377:	5f                   	pop    %edi
403378:	33 c0                	xor    %eax,%eax
40337a:	5e                   	pop    %esi
40337b:	81 c4 08 02 00 00    	add    $0x208,%esp
403381:	c3                   	ret
403382:	cc                   	int3
403383:	cc                   	int3
403384:	cc                   	int3
403385:	cc                   	int3
403386:	cc                   	int3
403387:	cc                   	int3
403388:	cc                   	int3
403389:	cc                   	int3
40338a:	cc                   	int3
40338b:	cc                   	int3
40338c:	cc                   	int3
40338d:	cc                   	int3
40338e:	cc                   	int3
40338f:	cc                   	int3
403390:	b8 00 91 00 00       	mov    $0x9100,%eax
403395:	e8 f6 da 02 00       	call   0x430e90
40339a:	53                   	push   %ebx
40339b:	8b 9c 24 08 91 00 00 	mov    0x9108(%esp),%ebx
4033a2:	56                   	push   %esi
4033a3:	8b c3                	mov    %ebx,%eax
4033a5:	57                   	push   %edi
4033a6:	8d 50 02             	lea    0x2(%eax),%edx
4033a9:	8d a4 24 00 00 00 00 	lea    0x0(%esp),%esp
4033b0:	66 8b 08             	mov    (%eax),%cx
4033b3:	83 c0 02             	add    $0x2,%eax
4033b6:	66 85 c9             	test   %cx,%cx
4033b9:	75 f5                	jne    0x4033b0
4033bb:	2b c2                	sub    %edx,%eax
4033bd:	d1 f8                	sar    $1,%eax
4033bf:	8d 78 01             	lea    0x1(%eax),%edi
4033c2:	57                   	push   %edi
4033c3:	e8 4e d6 02 00       	call   0x430a16
4033c8:	53                   	push   %ebx
4033c9:	68 dc c1 45 00       	push   $0x45c1dc
4033ce:	8b f0                	mov    %eax,%esi
4033d0:	57                   	push   %edi
4033d1:	56                   	push   %esi
4033d2:	e8 ec d9 02 00       	call   0x430dc3
4033d7:	8d 44 24 20          	lea    0x20(%esp),%eax
4033db:	56                   	push   %esi
4033dc:	50                   	push   %eax
4033dd:	c6 44 3e ff 00       	movb   $0x0,-0x1(%esi,%edi,1)
4033e2:	e8 39 3e 01 00       	call   0x417220
4033e7:	56                   	push   %esi
4033e8:	8b f8                	mov    %eax,%edi
4033ea:	e8 ae d5 02 00       	call   0x43099d
4033ef:	83 c4 20             	add    $0x20,%esp
4033f2:	33 c0                	xor    %eax,%eax
4033f4:	85 ff                	test   %edi,%edi
4033f6:	5f                   	pop    %edi
4033f7:	5e                   	pop    %esi
4033f8:	0f 94 c0             	sete   %al
4033fb:	5b                   	pop    %ebx
4033fc:	81 c4 00 91 00 00    	add    $0x9100,%esp
403402:	c3                   	ret
403403:	cc                   	int3
403404:	cc                   	int3
403405:	cc                   	int3
403406:	cc                   	int3
403407:	cc                   	int3
403408:	cc                   	int3
403409:	cc                   	int3
40340a:	cc                   	int3
40340b:	cc                   	int3
40340c:	cc                   	int3
40340d:	cc                   	int3
40340e:	cc                   	int3
40340f:	cc                   	int3
403410:	83 3d 44 07 47 00 00 	cmpl   $0x0,0x470744
403417:	74 06                	je     0x40341f
403419:	b8 df 04 00 00       	mov    $0x4df,%eax
40341e:	c3                   	ret
40341f:	68 44 07 47 00       	push   $0x470744
403424:	6a 00                	push   $0x0
403426:	6a 28                	push   $0x28
403428:	ff 15 48 34 47 00    	call   *0x473448
40342e:	50                   	push   %eax
40342f:	ff 15 54 33 47 00    	call   *0x473354
403435:	85 c0                	test   %eax,%eax
403437:	75 1e                	jne    0x403457
403439:	68 44 07 47 00       	push   $0x470744
40343e:	6a 28                	push   $0x28
403440:	ff 15 44 34 47 00    	call   *0x473444
403446:	50                   	push   %eax
403447:	ff 15 50 33 47 00    	call   *0x473350
40344d:	85 c0                	test   %eax,%eax
40344f:	75 06                	jne    0x403457
403451:	ff 25 24 34 47 00    	jmp    *0x473424
403457:	68 d4 16 47 00       	push   $0x4716d4
40345c:	68 e0 c1 45 00       	push   $0x45c1e0
403461:	6a 00                	push   $0x0
403463:	c7 05 d0 16 47 00 01 	movl   $0x1,0x4716d0
40346a:	00 00 00
40346d:	c7 05 dc 16 47 00 02 	movl   $0x2,0x4716dc
403474:	00 00 00
403477:	ff 15 4c 33 47 00    	call   *0x47334c
40347d:	a1 44 07 47 00       	mov    0x470744,%eax
403482:	68 00 f0 46 00       	push   $0x46f000
403487:	68 f0 16 47 00       	push   $0x4716f0
40348c:	6a 10                	push   $0x10
40348e:	68 d0 16 47 00       	push   $0x4716d0
403493:	6a 00                	push   $0x0
403495:	50                   	push   %eax
403496:	ff 15 48 33 47 00    	call   *0x473348
40349c:	85 c0                	test   %eax,%eax
40349e:	75 06                	jne    0x4034a6
4034a0:	ff 25 24 34 47 00    	jmp    *0x473424
4034a6:	ff 15 24 34 47 00    	call   *0x473424
4034ac:	33 c9                	xor    %ecx,%ecx
4034ae:	3d 14 05 00 00       	cmp    $0x514,%eax
4034b3:	0f 95 c1             	setne  %cl
4034b6:	8d 41 ff             	lea    -0x1(%ecx),%eax
4034b9:	25 14 05 00 00       	and    $0x514,%eax
4034be:	c3                   	ret
4034bf:	cc                   	int3
4034c0:	a1 44 07 47 00       	mov    0x470744,%eax
4034c5:	85 c0                	test   %eax,%eax
4034c7:	75 06                	jne    0x4034cf
4034c9:	b8 21 05 00 00       	mov    $0x521,%eax
4034ce:	c3                   	ret
4034cf:	6a 00                	push   $0x0
4034d1:	6a 00                	push   $0x0
4034d3:	6a 10                	push   $0x10
4034d5:	68 f0 16 47 00       	push   $0x4716f0
4034da:	6a 00                	push   $0x0
4034dc:	50                   	push   %eax
4034dd:	ff 15 48 33 47 00    	call   *0x473348
4034e3:	a1 44 07 47 00       	mov    0x470744,%eax
4034e8:	50                   	push   %eax
4034e9:	ff 15 2c 34 47 00    	call   *0x47342c
4034ef:	c7 05 44 07 47 00 00 	movl   $0x0,0x470744
4034f6:	00 00 00
4034f9:	33 c0                	xor    %eax,%eax
4034fb:	c3                   	ret
4034fc:	cc                   	int3
4034fd:	cc                   	int3
4034fe:	cc                   	int3
4034ff:	cc                   	int3
403500:	51                   	push   %ecx
403501:	56                   	push   %esi
403502:	57                   	push   %edi
403503:	8b 7c 24 10          	mov    0x10(%esp),%edi
403507:	8b c7                	mov    %edi,%eax
403509:	33 d2                	xor    %edx,%edx
40350b:	8d 70 02             	lea    0x2(%eax),%esi
40350e:	8b ff                	mov    %edi,%edi
403510:	66 8b 08             	mov    (%eax),%cx
403513:	83 c0 02             	add    $0x2,%eax
403516:	66 85 c9             	test   %cx,%cx
403519:	75 f5                	jne    0x403510
40351b:	2b c6                	sub    %esi,%eax
40351d:	d1 f8                	sar    $1,%eax
40351f:	74 34                	je     0x403555
403521:	53                   	push   %ebx
403522:	66 8b 5c 24 1c       	mov    0x1c(%esp),%bx
403527:	55                   	push   %ebp
403528:	66 8b 6c 24 1c       	mov    0x1c(%esp),%bp
40352d:	8d 49 00             	lea    0x0(%ecx),%ecx
403530:	66 39 2c 57          	cmp    %bp,(%edi,%edx,2)
403534:	75 04                	jne    0x40353a
403536:	66 89 1c 57          	mov    %bx,(%edi,%edx,2)
40353a:	8b c7                	mov    %edi,%eax
40353c:	42                   	inc    %edx
40353d:	8d 70 02             	lea    0x2(%eax),%esi
403540:	66 8b 08             	mov    (%eax),%cx
403543:	83 c0 02             	add    $0x2,%eax
403546:	66 85 c9             	test   %cx,%cx
403549:	75 f5                	jne    0x403540
40354b:	2b c6                	sub    %esi,%eax
40354d:	d1 f8                	sar    $1,%eax
40354f:	3b d0                	cmp    %eax,%edx
403551:	72 dd                	jb     0x403530
403553:	5d                   	pop    %ebp
403554:	5b                   	pop    %ebx
403555:	5f                   	pop    %edi
403556:	5e                   	pop    %esi
403557:	59                   	pop    %ecx
403558:	c3                   	ret
403559:	cc                   	int3
40355a:	cc                   	int3
40355b:	cc                   	int3
40355c:	cc                   	int3
40355d:	cc                   	int3
40355e:	cc                   	int3
40355f:	cc                   	int3
403560:	81 ec 08 02 00 00    	sub    $0x208,%esp
403566:	8b 84 24 0c 02 00 00 	mov    0x20c(%esp),%eax
40356d:	56                   	push   %esi
40356e:	57                   	push   %edi
40356f:	68 04 01 00 00       	push   $0x104
403574:	50                   	push   %eax
403575:	8d 4c 24 10          	lea    0x10(%esp),%ecx
403579:	51                   	push   %ecx
40357a:	e8 2b d5 02 00       	call   0x430aaa
40357f:	6a 5c                	push   $0x5c
403581:	8d 44 24 18          	lea    0x18(%esp),%eax
403585:	33 d2                	xor    %edx,%edx
403587:	6a 2f                	push   $0x2f
403589:	50                   	push   %eax
40358a:	66 89 94 24 26 02 00 	mov    %dx,0x226(%esp)
403591:	00
403592:	e8 69 ff ff ff       	call   0x403500
403597:	8b 3d 6c 34 47 00    	mov    0x47346c,%edi
40359d:	83 c4 18             	add    $0x18,%esp
4035a0:	8d 74 24 08          	lea    0x8(%esp),%esi
4035a4:	6a 5c                	push   $0x5c
4035a6:	56                   	push   %esi
4035a7:	e8 0f d9 02 00       	call   0x430ebb
4035ac:	8b f0                	mov    %eax,%esi
4035ae:	83 c4 08             	add    $0x8,%esp
4035b1:	85 f6                	test   %esi,%esi
4035b3:	74 05                	je     0x4035ba
4035b5:	33 c9                	xor    %ecx,%ecx
4035b7:	66 89 0e             	mov    %cx,(%esi)
4035ba:	6a 00                	push   $0x0
4035bc:	8d 54 24 0c          	lea    0xc(%esp),%edx
4035c0:	52                   	push   %edx
4035c1:	ff d7                	call   *%edi
4035c3:	85 f6                	test   %esi,%esi
4035c5:	74 0e                	je     0x4035d5
4035c7:	83 c6 02             	add    $0x2,%esi
4035ca:	b8 5c 00 00 00       	mov    $0x5c,%eax
4035cf:	66 89 46 fe          	mov    %ax,-0x2(%esi)
4035d3:	75 cf                	jne    0x4035a4
4035d5:	5f                   	pop    %edi
4035d6:	5e                   	pop    %esi
4035d7:	81 c4 08 02 00 00    	add    $0x208,%esp