40a13c:	5e                   	pop    %esi
40a13d:	5b                   	pop    %ebx
40a13e:	8b e5                	mov    %ebp,%esp
40a140:	5d                   	pop    %ebp
40a141:	c3                   	ret
40a142:	cc                   	int3
40a143:	cc                   	int3
40a144:	cc                   	int3
40a145:	cc                   	int3
40a146:	cc                   	int3
40a147:	cc                   	int3
40a148:	cc                   	int3
40a149:	cc                   	int3
40a14a:	cc                   	int3
40a14b:	cc                   	int3
40a14c:	cc                   	int3
40a14d:	cc                   	int3
40a14e:	cc                   	int3
40a14f:	cc                   	int3
40a150:	55                   	push   %ebp
40a151:	8b ec                	mov    %esp,%ebp
40a153:	6a ff                	push   $0xffffffff
40a155:	68 3c c1 43 00       	push   $0x43c13c
40a15a:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
40a160:	50                   	push   %eax
40a161:	83 ec 48             	sub    $0x48,%esp
40a164:	a1 14 50 45 00       	mov    0x455014,%eax
40a169:	33 c5                	xor    %ebp,%eax
40a16b:	89 45 f0             	mov    %eax,-0x10(%ebp)
40a16e:	53                   	push   %ebx
40a16f:	56                   	push   %esi
40a170:	57                   	push   %edi
40a171:	50                   	push   %eax
40a172:	8d 45 f4             	lea    -0xc(%ebp),%eax
40a175:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
40a17b:	8b 5d 08             	mov    0x8(%ebp),%ebx
40a17e:	8d 4d e8             	lea    -0x18(%ebp),%ecx
40a181:	6a 00                	push   $0x0
40a183:	89 5d ec             	mov    %ebx,-0x14(%ebp)
40a186:	e8 9c ed 00 00       	call   0x418f27
40a18b:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
40a192:	8b 35 a8 7b 45 00    	mov    0x457ba8,%esi
40a198:	a1 8c 7b 45 00       	mov    0x457b8c,%eax
40a19d:	89 45 e0             	mov    %eax,-0x20(%ebp)
40a1a0:	85 f6                	test   %esi,%esi
40a1a2:	75 2f                	jne    0x40a1d3
40a1a4:	56                   	push   %esi
40a1a5:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
40a1a8:	e8 7a ed 00 00       	call   0x418f27
40a1ad:	39 35 a8 7b 45 00    	cmp    %esi,0x457ba8
40a1b3:	75 10                	jne    0x40a1c5
40a1b5:	a1 28 64 45 00       	mov    0x456428,%eax
40a1ba:	40                   	inc    %eax
40a1bb:	a3 28 64 45 00       	mov    %eax,0x456428
40a1c0:	a3 a8 7b 45 00       	mov    %eax,0x457ba8
40a1c5:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
40a1c8:	e8 b2 ed 00 00       	call   0x418f7f
40a1cd:	8b 35 a8 7b 45 00    	mov    0x457ba8,%esi
40a1d3:	8b 4b 04             	mov    0x4(%ebx),%ecx
40a1d6:	8d 1c b5 00 00 00 00 	lea    0x0(,%esi,4),%ebx
40a1dd:	3b 71 0c             	cmp    0xc(%ecx),%esi
40a1e0:	73 30                	jae    0x40a212
40a1e2:	8b 41 08             	mov    0x8(%ecx),%eax
40a1e5:	8b 3c 03             	mov    (%ebx,%eax,1),%edi
40a1e8:	85 ff                	test   %edi,%edi
40a1ea:	74 28                	je     0x40a214
40a1ec:	8d 4d e8             	lea    -0x18(%ebp),%ecx
40a1ef:	e8 8b ed 00 00       	call   0x418f7f
40a1f4:	8b c7                	mov    %edi,%eax
40a1f6:	8b 4d f4             	mov    -0xc(%ebp),%ecx
40a1f9:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
40a200:	59                   	pop    %ecx
40a201:	5f                   	pop    %edi
40a202:	5e                   	pop    %esi
40a203:	5b                   	pop    %ebx
40a204:	8b 4d f0             	mov    -0x10(%ebp),%ecx
40a207:	33 cd                	xor    %ebp,%ecx
40a209:	e8 9c f9 00 00       	call   0x419baa
40a20e:	8b e5                	mov    %ebp,%esp
40a210:	5d                   	pop    %ebp
40a211:	c3                   	ret
40a212:	33 ff                	xor    %edi,%edi
40a214:	80 79 14 00          	cmpb   $0x0,0x14(%ecx)
40a218:	74 10                	je     0x40a22a
40a21a:	e8 ef ee 00 00       	call   0x41910e
40a21f:	3b 70 0c             	cmp    0xc(%eax),%esi
40a222:	73 0a                	jae    0x40a22e
40a224:	8b 40 08             	mov    0x8(%eax),%eax
40a227:	8b 3c 03             	mov    (%ebx,%eax,1),%edi
40a22a:	85 ff                	test   %edi,%edi
40a22c:	75 be                	jne    0x40a1ec
40a22e:	8b 45 e0             	mov    -0x20(%ebp),%eax
40a231:	85 c0                	test   %eax,%eax
40a233:	74 04                	je     0x40a239
40a235:	8b f8                	mov    %eax,%edi
40a237:	eb b3                	jmp    0x40a1ec
40a239:	6a 08                	push   $0x8
40a23b:	e8 86 f9 00 00       	call   0x419bc6
40a240:	8b f8                	mov    %eax,%edi
40a242:	83 c4 04             	add    $0x4,%esp
40a245:	89 7d e0             	mov    %edi,-0x20(%ebp)
40a248:	8b 45 ec             	mov    -0x14(%ebp),%eax
40a24b:	8b 40 04             	mov    0x4(%eax),%eax
40a24e:	85 c0                	test   %eax,%eax
40a250:	74 0c                	je     0x40a25e
40a252:	8b 70 18             	mov    0x18(%eax),%esi
40a255:	85 f6                	test   %esi,%esi
40a257:	75 0a                	jne    0x40a263
40a259:	8d 70 1c             	lea    0x1c(%eax),%esi
40a25c:	eb 05                	jmp    0x40a263
40a25e:	be 67 ed 44 00       	mov    $0x44ed67,%esi
40a263:	6a 00                	push   $0x0
40a265:	8d 4d ac             	lea    -0x54(%ebp),%ecx
40a268:	e8 ba ec 00 00       	call   0x418f27
40a26d:	c7 45 b0 00 00 00 00 	movl   $0x0,-0x50(%ebp)
40a274:	c6 45 b4 00          	movb   $0x0,-0x4c(%ebp)
40a278:	c7 45 b8 00 00 00 00 	movl   $0x0,-0x48(%ebp)
40a27f:	c6 45 bc 00          	movb   $0x0,-0x44(%ebp)
40a283:	33 c0                	xor    %eax,%eax
40a285:	c7 45 c0 00 00 00 00 	movl   $0x0,-0x40(%ebp)
40a28c:	66 89 45 c4          	mov    %ax,-0x3c(%ebp)
40a290:	89 45 c8             	mov    %eax,-0x38(%ebp)
40a293:	66 89 45 cc          	mov    %ax,-0x34(%ebp)
40a297:	89 45 d0             	mov    %eax,-0x30(%ebp)
40a29a:	88 45 d4             	mov    %al,-0x2c(%ebp)
40a29d:	89 45 d8             	mov    %eax,-0x28(%ebp)
40a2a0:	88 45 dc             	mov    %al,-0x24(%ebp)
40a2a3:	c6 45 fc 08          	movb   $0x8,-0x4(%ebp)
40a2a7:	85 f6                	test   %esi,%esi
40a2a9:	0f 84 e5 00 00 00    	je     0x40a394
40a2af:	8d 45 ac             	lea    -0x54(%ebp),%eax
40a2b2:	56                   	push   %esi
40a2b3:	50                   	push   %eax
40a2b4:	e8 5b ef 00 00       	call   0x419214
40a2b9:	c7 47 04 00 00 00 00 	movl   $0x0,0x4(%edi)
40a2c0:	c7 07 c4 f6 43 00    	movl   $0x43f6c4,(%edi)
40a2c6:	8d 45 ac             	lea    -0x54(%ebp),%eax
40a2c9:	c6 45 fc 09          	movb   $0x9,-0x4(%ebp)
40a2cd:	50                   	push   %eax
40a2ce:	e8 8c ef 00 00       	call   0x41925f
40a2d3:	8b 45 d8             	mov    -0x28(%ebp),%eax
40a2d6:	83 c4 0c             	add    $0xc,%esp
40a2d9:	85 c0                	test   %eax,%eax
40a2db:	74 09                	je     0x40a2e6
40a2dd:	50                   	push   %eax
40a2de:	e8 60 97 01 00       	call   0x423a43
40a2e3:	83 c4 04             	add    $0x4,%esp
40a2e6:	8b 45 d0             	mov    -0x30(%ebp),%eax
40a2e9:	c7 45 d8 00 00 00 00 	movl   $0x0,-0x28(%ebp)
40a2f0:	85 c0                	test   %eax,%eax
40a2f2:	74 09                	je     0x40a2fd
40a2f4:	50                   	push   %eax
40a2f5:	e8 49 97 01 00       	call   0x423a43
40a2fa:	83 c4 04             	add    $0x4,%esp
40a2fd:	8b 45 c8             	mov    -0x38(%ebp),%eax
40a300:	c7 45 d0 00 00 00 00 	movl   $0x0,-0x30(%ebp)
40a307:	85 c0                	test   %eax,%eax
40a309:	74 09                	je     0x40a314
40a30b:	50                   	push   %eax
40a30c:	e8 32 97 01 00       	call   0x423a43
40a311:	83 c4 04             	add    $0x4,%esp
40a314:	8b 45 c0             	mov    -0x40(%ebp),%eax
40a317:	c7 45 c8 00 00 00 00 	movl   $0x0,-0x38(%ebp)
40a31e:	85 c0                	test   %eax,%eax
40a320:	74 09                	je     0x40a32b
40a322:	50                   	push   %eax
40a323:	e8 1b 97 01 00       	call   0x423a43
40a328:	83 c4 04             	add    $0x4,%esp
40a32b:	8b 45 b8             	mov    -0x48(%ebp),%eax
40a32e:	c7 45 c0 00 00 00 00 	movl   $0x0,-0x40(%ebp)
40a335:	85 c0                	test   %eax,%eax
40a337:	74 09                	je     0x40a342
40a339:	50                   	push   %eax
40a33a:	e8 04 97 01 00       	call   0x423a43
40a33f:	83 c4 04             	add    $0x4,%esp
40a342:	8b 45 b0             	mov    -0x50(%ebp),%eax
40a345:	c7 45 b8 00 00 00 00 	movl   $0x0,-0x48(%ebp)
40a34c:	85 c0                	test   %eax,%eax
40a34e:	74 09                	je     0x40a359
40a350:	50                   	push   %eax
40a351:	e8 ed 96 01 00       	call   0x423a43
40a356:	83 c4 04             	add    $0x4,%esp
40a359:	8d 4d ac             	lea    -0x54(%ebp),%ecx
40a35c:	c7 45 b0 00 00 00 00 	movl   $0x0,-0x50(%ebp)
40a363:	e8 17 ec 00 00       	call   0x418f7f
40a368:	89 7d ec             	mov    %edi,-0x14(%ebp)
40a36b:	57                   	push   %edi
40a36c:	c6 45 fc 0a          	movb   $0xa,-0x4(%ebp)
40a370:	e8 6d ed 00 00       	call   0x4190e2
40a375:	8b 07                	mov    (%edi),%eax
40a377:	83 c4 04             	add    $0x4,%esp
40a37a:	8b 70 04             	mov    0x4(%eax),%esi
40a37d:	8b ce                	mov    %esi,%ecx
40a37f:	ff 15 5c e2 43 00    	call   *0x43e25c
40a385:	8b cf                	mov    %edi,%ecx
40a387:	ff d6                	call   *%esi
40a389:	89 3d 8c 7b 45 00    	mov    %edi,0x457b8c
40a38f:	e9 58 fe ff ff       	jmp    0x40a1ec
40a394:	68 80 ed 44 00       	push   $0x44ed80
40a399:	e8 3c eb 00 00       	call   0x418eda
40a39e:	cc                   	int3
40a39f:	cc                   	int3
40a3a0:	55                   	push   %ebp
40a3a1:	8b ec                	mov    %esp,%ebp
40a3a3:	6a ff                	push   $0xffffffff
40a3a5:	68 85 c1 43 00       	push   $0x43c185
40a3aa:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
40a3b0:	50                   	push   %eax
40a3b1:	83 ec 18             	sub    $0x18,%esp
40a3b4:	a1 14 50 45 00       	mov    0x455014,%eax
40a3b9:	33 c5                	xor    %ebp,%eax
40a3bb:	89 45 f0             	mov    %eax,-0x10(%ebp)
40a3be:	53                   	push   %ebx
40a3bf:	56                   	push   %esi
40a3c0:	57                   	push   %edi
40a3c1:	50                   	push   %eax
40a3c2:	8d 45 f4             	lea    -0xc(%ebp),%eax
40a3c5:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
40a3cb:	8b 7d 08             	mov    0x8(%ebp),%edi
40a3ce:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
40a3d1:	6a 00                	push   $0x0
40a3d3:	89 7d e8             	mov    %edi,-0x18(%ebp)
40a3d6:	e8 4c eb 00 00       	call   0x418f27
40a3db:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
40a3e2:	8b 35 98 7b 45 00    	mov    0x457b98,%esi
40a3e8:	8b 1d 84 7b 45 00    	mov    0x457b84,%ebx
40a3ee:	89 5d e0             	mov    %ebx,-0x20(%ebp)
40a3f1:	85 f6                	test   %esi,%esi
40a3f3:	75 2f                	jne    0x40a424
40a3f5:	56                   	push   %esi
40a3f6:	8d 4d ec             	lea    -0x14(%ebp),%ecx
40a3f9:	e8 29 eb 00 00       	call   0x418f27
40a3fe:	39 35 98 7b 45 00    	cmp    %esi,0x457b98
40a404:	75 10                	jne    0x40a416
40a406:	a1 28 64 45 00       	mov    0x456428,%eax
40a40b:	40                   	inc    %eax
40a40c:	a3 28 64 45 00       	mov    %eax,0x456428
40a411:	a3 98 7b 45 00       	mov    %eax,0x457b98
40a416:	8d 4d ec             	lea    -0x14(%ebp),%ecx
40a419:	e8 61 eb 00 00       	call   0x418f7f
40a41e:	8b 35 98 7b 45 00    	mov    0x457b98,%esi
40a424:	8b 57 04             	mov    0x4(%edi),%edx
40a427:	8d 0c b5 00 00 00 00 	lea    0x0(,%esi,4),%ecx
40a42e:	89 4d ec             	mov    %ecx,-0x14(%ebp)
40a431:	3b 72 0c             	cmp    0xc(%edx),%esi
40a434:	73 0c                	jae    0x40a442
40a436:	8b 42 08             	mov    0x8(%edx),%eax
40a439:	8b 3c 01             	mov    (%ecx,%eax,1),%edi
40a43c:	85 ff                	test   %edi,%edi
40a43e:	75 6a                	jne    0x40a4aa
40a440:	eb 05                	jmp    0x40a447
40a442:	33 ff                	xor    %edi,%edi
40a444:	89 4d ec             	mov    %ecx,-0x14(%ebp)
40a447:	80 7a 14 00          	cmpb   $0x0,0x14(%edx)
40a44b:	74 13                	je     0x40a460
40a44d:	e8 bc ec 00 00       	call   0x41910e
40a452:	3b 70 0c             	cmp    0xc(%eax),%esi
40a455:	73 0d                	jae    0x40a464
40a457:	8b 40 08             	mov    0x8(%eax),%eax
40a45a:	8b 7d ec             	mov    -0x14(%ebp),%edi
40a45d:	8b 3c 07             	mov    (%edi,%eax,1),%edi
40a460:	85 ff                	test   %edi,%edi
40a462:	75 46                	jne    0x40a4aa
40a464:	85 db                	test   %ebx,%ebx
40a466:	74 04                	je     0x40a46c
40a468:	8b fb                	mov    %ebx,%edi
40a46a:	eb 3e                	jmp    0x40a4aa
40a46c:	ff 75 e8             	push   -0x18(%ebp)
40a46f:	8d 45 e0             	lea    -0x20(%ebp),%eax
40a472:	50                   	push   %eax
40a473:	e8 08 05 00 00       	call   0x40a980
40a478:	83 c4 08             	add    $0x8,%esp
40a47b:	83 f8 ff             	cmp    $0xffffffff,%eax
40a47e:	74 50                	je     0x40a4d0
40a480:	8b 7d e0             	mov    -0x20(%ebp),%edi
40a483:	89 7d e8             	mov    %edi,-0x18(%ebp)
40a486:	57                   	push   %edi
40a487:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
40a48b:	e8 52 ec 00 00       	call   0x4190e2
40a490:	8b 07                	mov    (%edi),%eax
40a492:	83 c4 04             	add    $0x4,%esp
40a495:	8b 70 04             	mov    0x4(%eax),%esi
40a498:	8b ce                	mov    %esi,%ecx
40a49a:	ff 15 5c e2 43 00    	call   *0x43e25c
40a4a0:	8b cf                	mov    %edi,%ecx
40a4a2:	ff d6                	call   *%esi
40a4a4:	89 3d 84 7b 45 00    	mov    %edi,0x457b84
40a4aa:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
40a4ad:	e8 cd ea 00 00       	call   0x418f7f
40a4b2:	8b c7                	mov    %edi,%eax
40a4b4:	8b 4d f4             	mov    -0xc(%ebp),%ecx
40a4b7:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
40a4be:	59                   	pop    %ecx
40a4bf:	5f                   	pop    %edi
40a4c0:	5e                   	pop    %esi
40a4c1:	5b                   	pop    %ebx
40a4c2:	8b 4d f0             	mov    -0x10(%ebp),%ecx
40a4c5:	33 cd                	xor    %ebp,%ecx
40a4c7:	e8 de f6 00 00       	call   0x419baa
40a4cc:	8b e5                	mov    %ebp,%esp
40a4ce:	5d                   	pop    %ebp
40a4cf:	c3                   	ret
40a4d0:	e8 5b b8 ff ff       	call   0x405d30
40a4d5:	cc                   	int3
40a4d6:	cc                   	int3
40a4d7:	cc                   	int3
40a4d8:	cc                   	int3
40a4d9:	cc                   	int3
40a4da:	cc                   	int3
40a4db:	cc                   	int3
40a4dc:	cc                   	int3
40a4dd:	cc                   	int3
40a4de:	cc                   	int3
40a4df:	cc                   	int3
40a4e0:	55                   	push   %ebp
40a4e1:	8b ec                	mov    %esp,%ebp
40a4e3:	6a ff                	push   $0xffffffff
40a4e5:	68 85 c1 43 00       	push   $0x43c185
40a4ea:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
40a4f0:	50                   	push   %eax
40a4f1:	83 ec 18             	sub    $0x18,%esp
40a4f4:	a1 14 50 45 00       	mov    0x455014,%eax
40a4f9:	33 c5                	xor    %ebp,%eax
40a4fb:	89 45 f0             	mov    %eax,-0x10(%ebp)
40a4fe:	53                   	push   %ebx
40a4ff:	56                   	push   %esi
40a500:	57                   	push   %edi
40a501:	50                   	push   %eax
40a502:	8d 45 f4             	lea    -0xc(%ebp),%eax
40a505:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
40a50b:	8b 7d 08             	mov    0x8(%ebp),%edi
40a50e:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
40a511:	6a 00                	push   $0x0
40a513:	89 7d e8             	mov    %edi,-0x18(%ebp)
40a516:	e8 0c ea 00 00       	call   0x418f27
40a51b:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
40a522:	8b 35 3c 64 45 00    	mov    0x45643c,%esi
40a528:	8b 1d 88 7b 45 00    	mov    0x457b88,%ebx
40a52e:	89 5d e0             	mov    %ebx,-0x20(%ebp)
40a531:	85 f6                	test   %esi,%esi
40a533:	75 2f                	jne    0x40a564
40a535:	56                   	push   %esi
40a536:	8d 4d ec             	lea    -0x14(%ebp),%ecx
40a539:	e8 e9 e9 00 00       	call   0x418f27
40a53e:	39 35 3c 64 45 00    	cmp    %esi,0x45643c
40a544:	75 10                	jne    0x40a556
40a546:	a1 28 64 45 00       	mov    0x456428,%eax
40a54b:	40                   	inc    %eax
40a54c:	a3 28 64 45 00       	mov    %eax,0x456428
40a551:	a3 3c 64 45 00       	mov    %eax,0x45643c