403240:	e8 fb 3c 00 00       	call   0x406f40
403245:	83 c4 0c             	add    $0xc,%esp
403248:	5d                   	pop    %ebp
403249:	c2 0c 00             	ret    $0xc
40324c:	8d 41 04             	lea    0x4(%ecx),%eax
40324f:	89 41 0c             	mov    %eax,0xc(%ecx)
403252:	8d 41 14             	lea    0x14(%ecx),%eax
403255:	89 41 1c             	mov    %eax,0x1c(%ecx)
403258:	8d 41 18             	lea    0x18(%ecx),%eax
40325b:	89 41 20             	mov    %eax,0x20(%ecx)
40325e:	8d 41 24             	lea    0x24(%ecx),%eax
403261:	89 41 2c             	mov    %eax,0x2c(%ecx)
403264:	56                   	push   %esi
403265:	33 f6                	xor    %esi,%esi
403267:	8d 51 08             	lea    0x8(%ecx),%edx
40326a:	89 51 10             	mov    %edx,0x10(%ecx)
40326d:	8d 41 28             	lea    0x28(%ecx),%eax
403270:	89 41 30             	mov    %eax,0x30(%ecx)
403273:	89 32                	mov    %esi,(%edx)
403275:	8b 41 20             	mov    0x20(%ecx),%eax
403278:	89 30                	mov    %esi,(%eax)
40327a:	8b 41 30             	mov    0x30(%ecx),%eax
40327d:	89 30                	mov    %esi,(%eax)
40327f:	8b 41 0c             	mov    0xc(%ecx),%eax
403282:	89 30                	mov    %esi,(%eax)
403284:	8b 41 1c             	mov    0x1c(%ecx),%eax
403287:	89 30                	mov    %esi,(%eax)
403289:	8b 41 2c             	mov    0x2c(%ecx),%eax
40328c:	89 30                	mov    %esi,(%eax)
40328e:	5e                   	pop    %esi
40328f:	c3                   	ret
403290:	6a 14                	push   $0x14
403292:	b8 a4 7d 41 00       	mov    $0x417da4,%eax
403297:	e8 5d 2b 00 00       	call   0x405df9
40329c:	6a 00                	push   $0x0
40329e:	8d 4d ec             	lea    -0x14(%ebp),%ecx
4032a1:	e8 17 11 00 00       	call   0x4043bd
4032a6:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
4032aa:	8b 3d f8 29 42 00    	mov    0x4229f8,%edi
4032b0:	b9 94 1a 42 00       	mov    $0x421a94,%ecx
4032b5:	89 7d f0             	mov    %edi,-0x10(%ebp)
4032b8:	e8 bd f1 ff ff       	call   0x40247a
4032bd:	8b 4d 08             	mov    0x8(%ebp),%ecx
4032c0:	50                   	push   %eax
4032c1:	e8 34 f2 ff ff       	call   0x4024fa
4032c6:	8b f0                	mov    %eax,%esi
4032c8:	85 f6                	test   %esi,%esi
4032ca:	75 4d                	jne    0x403319
4032cc:	85 ff                	test   %edi,%edi
4032ce:	74 04                	je     0x4032d4
4032d0:	8b f7                	mov    %edi,%esi
4032d2:	eb 45                	jmp    0x403319
4032d4:	ff 75 08             	push   0x8(%ebp)
4032d7:	8d 45 f0             	lea    -0x10(%ebp),%eax
4032da:	50                   	push   %eax
4032db:	e8 89 f2 ff ff       	call   0x402569
4032e0:	59                   	pop    %ecx
4032e1:	59                   	pop    %ecx
4032e2:	83 f8 ff             	cmp    $0xffffffff,%eax
4032e5:	75 1b                	jne    0x403302
4032e7:	68 00 d6 41 00       	push   $0x41d600
4032ec:	8d 4d e0             	lea    -0x20(%ebp),%ecx
4032ef:	e8 be 1c 00 00       	call   0x404fb2
4032f4:	68 48 e8 41 00       	push   $0x41e848
4032f9:	8d 45 e0             	lea    -0x20(%ebp),%eax
4032fc:	50                   	push   %eax
4032fd:	e8 79 2a 00 00       	call   0x405d7b
403302:	8b 75 f0             	mov    -0x10(%ebp),%esi
403305:	89 35 f8 29 42 00    	mov    %esi,0x4229f8
40330b:	8b 06                	mov    (%esi),%eax
40330d:	8b ce                	mov    %esi,%ecx
40330f:	ff 50 04             	call   *0x4(%eax)
403312:	56                   	push   %esi
403313:	e8 88 0d 00 00       	call   0x4040a0
403318:	59                   	pop    %ecx
403319:	8d 4d ec             	lea    -0x14(%ebp),%ecx
40331c:	e8 f8 10 00 00       	call   0x404419
403321:	8b c6                	mov    %esi,%eax
403323:	e8 ae 2a 00 00       	call   0x405dd6
403328:	c3                   	ret
403329:	2b 49 fc             	sub    -0x4(%ecx),%ecx
40332c:	e9 0f f6 ff ff       	jmp    0x402940
403331:	2b 49 fc             	sub    -0x4(%ecx),%ecx
403334:	e9 e7 f8 ff ff       	jmp    0x402c20
403339:	55                   	push   %ebp
40333a:	8b ec                	mov    %esp,%ebp
40333c:	83 3d 54 94 41 00 00 	cmpl   $0x0,0x419454
403343:	b8 50 94 41 00       	mov    $0x419450,%eax
403348:	74 10                	je     0x40335a
40334a:	8b 4d 08             	mov    0x8(%ebp),%ecx
40334d:	39 08                	cmp    %ecx,(%eax)
40334f:	74 0d                	je     0x40335e
403351:	83 c0 08             	add    $0x8,%eax
403354:	83 78 04 00          	cmpl   $0x0,0x4(%eax)
403358:	75 f3                	jne    0x40334d
40335a:	33 c0                	xor    %eax,%eax
40335c:	5d                   	pop    %ebp
40335d:	c3                   	ret
40335e:	8b 40 04             	mov    0x4(%eax),%eax
403361:	5d                   	pop    %ebp
403362:	c3                   	ret
403363:	55                   	push   %ebp
403364:	8b ec                	mov    %esp,%ebp
403366:	83 3d fc 91 41 00 00 	cmpl   $0x0,0x4191fc
40336d:	b8 f8 91 41 00       	mov    $0x4191f8,%eax
403372:	74 10                	je     0x403384
403374:	8b 4d 08             	mov    0x8(%ebp),%ecx
403377:	39 08                	cmp    %ecx,(%eax)
403379:	74 0d                	je     0x403388
40337b:	83 c0 08             	add    $0x8,%eax
40337e:	83 78 04 00          	cmpl   $0x0,0x4(%eax)
403382:	75 f3                	jne    0x403377
403384:	33 c0                	xor    %eax,%eax
403386:	5d                   	pop    %ebp
403387:	c3                   	ret
403388:	8b 40 04             	mov    0x4(%eax),%eax
40338b:	5d                   	pop    %ebp
40338c:	c3                   	ret
40338d:	55                   	push   %ebp
40338e:	8b ec                	mov    %esp,%ebp
403390:	56                   	push   %esi
403391:	ff 75 08             	push   0x8(%ebp)
403394:	8b f1                	mov    %ecx,%esi
403396:	e8 73 1c 00 00       	call   0x40500e
40339b:	c7 06 c4 9f 41 00    	movl   $0x419fc4,(%esi)
4033a1:	8b c6                	mov    %esi,%eax
4033a3:	5e                   	pop    %esi
4033a4:	5d                   	pop    %ebp
4033a5:	c2 04 00             	ret    $0x4
4033a8:	55                   	push   %ebp
4033a9:	8b ec                	mov    %esp,%ebp
4033ab:	56                   	push   %esi
4033ac:	ff 75 08             	push   0x8(%ebp)
4033af:	8b f1                	mov    %ecx,%esi
4033b1:	e8 58 1c 00 00       	call   0x40500e
4033b6:	c7 06 ec 9f 41 00    	movl   $0x419fec,(%esi)
4033bc:	8b c6                	mov    %esi,%eax
4033be:	5e                   	pop    %esi
4033bf:	5d                   	pop    %ebp
4033c0:	c2 04 00             	ret    $0x4
4033c3:	55                   	push   %ebp
4033c4:	8b ec                	mov    %esp,%ebp
4033c6:	56                   	push   %esi
4033c7:	ff 75 08             	push   0x8(%ebp)
4033ca:	8b f1                	mov    %ecx,%esi
4033cc:	e8 3d 1c 00 00       	call   0x40500e
4033d1:	c7 06 e0 9f 41 00    	movl   $0x419fe0,(%esi)
4033d7:	8b c6                	mov    %esi,%eax
4033d9:	5e                   	pop    %esi
4033da:	5d                   	pop    %ebp
4033db:	c2 04 00             	ret    $0x4
4033de:	55                   	push   %ebp
4033df:	8b ec                	mov    %esp,%ebp
4033e1:	56                   	push   %esi
4033e2:	ff 75 08             	push   0x8(%ebp)
4033e5:	8b f1                	mov    %ecx,%esi
4033e7:	e8 22 1c 00 00       	call   0x40500e
4033ec:	c7 06 f8 9f 41 00    	movl   $0x419ff8,(%esi)
4033f2:	8b c6                	mov    %esi,%eax
4033f4:	5e                   	pop    %esi
4033f5:	5d                   	pop    %ebp
4033f6:	c2 04 00             	ret    $0x4
4033f9:	c7 01 c4 9f 41 00    	movl   $0x419fc4,(%ecx)
4033ff:	e9 2d 1c 00 00       	jmp    0x405031
403404:	55                   	push   %ebp
403405:	8b ec                	mov    %esp,%ebp
403407:	56                   	push   %esi
403408:	8b f1                	mov    %ecx,%esi
40340a:	c7 06 c4 9f 41 00    	movl   $0x419fc4,(%esi)
403410:	e8 1c 1c 00 00       	call   0x405031
403415:	f6 45 08 01          	testb  $0x1,0x8(%ebp)
403419:	74 07                	je     0x403422
40341b:	56                   	push   %esi
40341c:	e8 d7 1a 00 00       	call   0x404ef8
403421:	59                   	pop    %ecx
403422:	8b c6                	mov    %esi,%eax
403424:	5e                   	pop    %esi
403425:	5d                   	pop    %ebp
403426:	c2 04 00             	ret    $0x4
403429:	55                   	push   %ebp
40342a:	8b ec                	mov    %esp,%ebp
40342c:	83 ec 10             	sub    $0x10,%esp
40342f:	6a 01                	push   $0x1
403431:	8d 45 fc             	lea    -0x4(%ebp),%eax
403434:	50                   	push   %eax
403435:	8d 4d f0             	lea    -0x10(%ebp),%ecx
403438:	c7 45 fc cc 9f 41 00 	movl   $0x419fcc,-0x4(%ebp)
40343f:	e8 af 1b 00 00       	call   0x404ff3
403444:	68 f0 df 41 00       	push   $0x41dff0
403449:	8d 45 f0             	lea    -0x10(%ebp),%eax
40344c:	50                   	push   %eax
40344d:	c7 45 f0 c4 9f 41 00 	movl   $0x419fc4,-0x10(%ebp)
403454:	e8 22 29 00 00       	call   0x405d7b
403459:	cc                   	int3
40345a:	55                   	push   %ebp
40345b:	8b ec                	mov    %esp,%ebp
40345d:	83 ec 0c             	sub    $0xc,%esp
403460:	8b 45 08             	mov    0x8(%ebp),%eax
403463:	89 45 08             	mov    %eax,0x8(%ebp)
403466:	8d 45 08             	lea    0x8(%ebp),%eax
403469:	50                   	push   %eax
40346a:	8d 4d f4             	lea    -0xc(%ebp),%ecx
40346d:	e8 5c 1b 00 00       	call   0x404fce
403472:	68 44 e0 41 00       	push   $0x41e044
403477:	8d 45 f4             	lea    -0xc(%ebp),%eax
40347a:	50                   	push   %eax
40347b:	c7 45 f4 ec 9f 41 00 	movl   $0x419fec,-0xc(%ebp)
403482:	e8 f4 28 00 00       	call   0x405d7b
403487:	cc                   	int3
403488:	55                   	push   %ebp
403489:	8b ec                	mov    %esp,%ebp
40348b:	83 ec 0c             	sub    $0xc,%esp
40348e:	8b 45 08             	mov    0x8(%ebp),%eax
403491:	89 45 08             	mov    %eax,0x8(%ebp)
403494:	8d 45 08             	lea    0x8(%ebp),%eax
403497:	50                   	push   %eax
403498:	8d 4d f4             	lea    -0xc(%ebp),%ecx
40349b:	e8 2e 1b 00 00       	call   0x404fce
4034a0:	68 80 e0 41 00       	push   $0x41e080
4034a5:	8d 45 f4             	lea    -0xc(%ebp),%eax
4034a8:	50                   	push   %eax
4034a9:	c7 45 f4 f8 9f 41 00 	movl   $0x419ff8,-0xc(%ebp)
4034b0:	e8 c6 28 00 00       	call   0x405d7b
4034b5:	cc                   	int3
4034b6:	55                   	push   %ebp
4034b7:	8b ec                	mov    %esp,%ebp
4034b9:	ff 75 0c             	push   0xc(%ebp)
4034bc:	e8 ff 31 00 00       	call   0x4066c0
4034c1:	59                   	pop    %ecx
4034c2:	8b c8                	mov    %eax,%ecx
4034c4:	83 f9 ff             	cmp    $0xffffffff,%ecx
4034c7:	75 04                	jne    0x4034cd
4034c9:	32 c0                	xor    %al,%al
4034cb:	5d                   	pop    %ebp
4034cc:	c3                   	ret
4034cd:	8b 45 08             	mov    0x8(%ebp),%eax
4034d0:	88 08                	mov    %cl,(%eax)
4034d2:	b0 01                	mov    $0x1,%al
4034d4:	5d                   	pop    %ebp
4034d5:	c3                   	ret
4034d6:	55                   	push   %ebp
4034d7:	8b ec                	mov    %esp,%ebp
4034d9:	0f be 45 08          	movsbl 0x8(%ebp),%eax
4034dd:	ff 75 0c             	push   0xc(%ebp)
4034e0:	50                   	push   %eax
4034e1:	e8 31 33 00 00       	call   0x406817
4034e6:	59                   	pop    %ecx
4034e7:	59                   	pop    %ecx
4034e8:	33 c9                	xor    %ecx,%ecx
4034ea:	83 f8 ff             	cmp    $0xffffffff,%eax
4034ed:	0f 95 c0             	setne  %al
4034f0:	5d                   	pop    %ebp
4034f1:	c3                   	ret
4034f2:	55                   	push   %ebp
4034f3:	8b ec                	mov    %esp,%ebp
4034f5:	8b 45 08             	mov    0x8(%ebp),%eax
4034f8:	ff 75 0c             	push   0xc(%ebp)
4034fb:	0f b6 00             	movzbl (%eax),%eax
4034fe:	50                   	push   %eax
4034ff:	e8 44 39 00 00       	call   0x406e48
403504:	59                   	pop    %ecx
403505:	59                   	pop    %ecx
403506:	33 c9                	xor    %ecx,%ecx
403508:	83 f8 ff             	cmp    $0xffffffff,%eax
40350b:	0f 95 c0             	setne  %al
40350e:	5d                   	pop    %ebp
40350f:	c3                   	ret
403510:	6a 14                	push   $0x14
403512:	b8 33 7b 41 00       	mov    $0x417b33,%eax
403517:	e8 dd 28 00 00       	call   0x405df9
40351c:	6a 00                	push   $0x0
40351e:	8d 4d ec             	lea    -0x14(%ebp),%ecx
403521:	e8 97 0e 00 00       	call   0x4043bd
403526:	8b 3d 80 1a 42 00    	mov    0x421a80,%edi
40352c:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
403530:	b9 78 1a 42 00       	mov    $0x421a78,%ecx
403535:	89 7d f0             	mov    %edi,-0x10(%ebp)
403538:	e8 3d ef ff ff       	call   0x40247a
40353d:	8b 4d 08             	mov    0x8(%ebp),%ecx
403540:	50                   	push   %eax
403541:	e8 b4 ef ff ff       	call   0x4024fa
403546:	8b f0                	mov    %eax,%esi
403548:	85 f6                	test   %esi,%esi
40354a:	75 4d                	jne    0x403599
40354c:	85 ff                	test   %edi,%edi
40354e:	74 04                	je     0x403554
403550:	8b f7                	mov    %edi,%esi
403552:	eb 45                	jmp    0x403599
403554:	ff 75 08             	push   0x8(%ebp)
403557:	8d 45 f0             	lea    -0x10(%ebp),%eax
40355a:	50                   	push   %eax
40355b:	e8 f7 01 00 00       	call   0x403757
403560:	59                   	pop    %ecx
403561:	59                   	pop    %ecx
403562:	83 f8 ff             	cmp    $0xffffffff,%eax
403565:	75 1b                	jne    0x403582
403567:	68 00 d6 41 00       	push   $0x41d600
40356c:	8d 4d e0             	lea    -0x20(%ebp),%ecx
40356f:	e8 3e 1a 00 00       	call   0x404fb2
403574:	68 48 e8 41 00       	push   $0x41e848
403579:	8d 45 e0             	lea    -0x20(%ebp),%eax
40357c:	50                   	push   %eax
40357d:	e8 f9 27 00 00       	call   0x405d7b
403582:	8b 75 f0             	mov    -0x10(%ebp),%esi
403585:	89 35 80 1a 42 00    	mov    %esi,0x421a80
40358b:	8b 06                	mov    (%esi),%eax
40358d:	8b ce                	mov    %esi,%ecx
40358f:	ff 50 04             	call   *0x4(%eax)
403592:	56                   	push   %esi
403593:	e8 08 0b 00 00       	call   0x4040a0
403598:	59                   	pop    %ecx
403599:	8d 4d ec             	lea    -0x14(%ebp),%ecx
40359c:	e8 78 0e 00 00       	call   0x404419
4035a1:	8b c6                	mov    %esi,%eax
4035a3:	e8 2e 28 00 00       	call   0x405dd6
4035a8:	c3                   	ret
4035a9:	56                   	push   %esi
4035aa:	8b 35 58 1b 42 00    	mov    0x421b58,%esi
4035b0:	ba 28 1a 42 00       	mov    $0x421a28,%edx
4035b5:	57                   	push   %edi
4035b6:	8b f9                	mov    %ecx,%edi
4035b8:	89 15 5c 1b 42 00    	mov    %edx,0x421b5c
4035be:	85 f6                	test   %esi,%esi
4035c0:	74 0f                	je     0x4035d1
4035c2:	8b 06                	mov    (%esi),%eax
4035c4:	8b 40 04             	mov    0x4(%eax),%eax
4035c7:	89 54 30 3c          	mov    %edx,0x3c(%eax,%esi,1)
4035cb:	8b 15 5c 1b 42 00    	mov    0x421b5c,%edx
4035d1:	8b 0d 60 1b 42 00    	mov    0x421b60,%ecx
4035d7:	85 c9                	test   %ecx,%ecx
4035d9:	74 0f                	je     0x4035ea
4035db:	8b 01                	mov    (%ecx),%eax
4035dd:	8b 40 04             	mov    0x4(%eax),%eax
4035e0:	89 54 08 3c          	mov    %edx,0x3c(%eax,%ecx,1)
4035e4:	8b 15 5c 1b 42 00    	mov    0x421b5c,%edx
4035ea:	8b 0d 64 1b 42 00    	mov    0x421b64,%ecx
4035f0:	85 c9                	test   %ecx,%ecx
4035f2:	74 09                	je     0x4035fd
4035f4:	8b 01                	mov    (%ecx),%eax
4035f6:	8b 40 04             	mov    0x4(%eax),%eax
4035f9:	89 54 08 3c          	mov    %edx,0x3c(%eax,%ecx,1)
4035fd:	8b c7                	mov    %edi,%eax
4035ff:	5f                   	pop    %edi
403600:	5e                   	pop    %esi
403601:	c3                   	ret
403602:	56                   	push   %esi
403603:	8b f1                	mov    %ecx,%esi
403605:	83 7e 50 00          	cmpl   $0x0,0x50(%esi)
403609:	c7 06 d4 a0 41 00    	movl   $0x41a0d4,(%esi)
40360f:	74 05                	je     0x403616