57d253:	50                   	push   %eax
57d254:	8d 7e 04             	lea    0x4(%esi),%edi
57d257:	57                   	push   %edi
57d258:	e8 c3 3f f3 ff       	call   0x4b1220
57d25d:	83 c4 0c             	add    $0xc,%esp
57d260:	85 c0                	test   %eax,%eax
57d262:	74 4e                	je     0x57d2b2
57d264:	8d 46 34             	lea    0x34(%esi),%eax
57d267:	50                   	push   %eax
57d268:	57                   	push   %edi
57d269:	e8 b2 42 f3 ff       	call   0x4b1520
57d26e:	83 c4 08             	add    $0x8,%esp
57d271:	85 c0                	test   %eax,%eax
57d273:	74 3d                	je     0x57d2b2
57d275:	ff 74 24 10          	push   0x10(%esp)
57d279:	8d 44 24 18          	lea    0x18(%esp),%eax
57d27d:	50                   	push   %eax
57d27e:	57                   	push   %edi
57d27f:	e8 cc 41 f3 ff       	call   0x4b1450
57d284:	83 c4 0c             	add    $0xc,%esp
57d287:	85 c0                	test   %eax,%eax
57d289:	74 27                	je     0x57d2b2
57d28b:	55                   	push   %ebp
57d28c:	53                   	push   %ebx
57d28d:	57                   	push   %edi
57d28e:	e8 8d 3f f3 ff       	call   0x4b1220
57d293:	83 c4 0c             	add    $0xc,%esp
57d296:	85 c0                	test   %eax,%eax
57d298:	74 18                	je     0x57d2b2
57d29a:	5f                   	pop    %edi
57d29b:	5e                   	pop    %esi
57d29c:	5d                   	pop    %ebp
57d29d:	b8 01 00 00 00       	mov    $0x1,%eax
57d2a2:	5b                   	pop    %ebx
57d2a3:	8b 4c 24 44          	mov    0x44(%esp),%ecx
57d2a7:	33 cc                	xor    %esp,%ecx
57d2a9:	e8 2c 42 06 00       	call   0x5e14da
57d2ae:	83 c4 48             	add    $0x48,%esp
57d2b1:	c3                   	ret
57d2b2:	8b 4c 24 54          	mov    0x54(%esp),%ecx
57d2b6:	33 c0                	xor    %eax,%eax
57d2b8:	5f                   	pop    %edi
57d2b9:	5e                   	pop    %esi
57d2ba:	5d                   	pop    %ebp
57d2bb:	5b                   	pop    %ebx
57d2bc:	33 cc                	xor    %esp,%ecx
57d2be:	e8 17 42 06 00       	call   0x5e14da
57d2c3:	83 c4 48             	add    $0x48,%esp
57d2c6:	c3                   	ret
57d2c7:	cc                   	int3
57d2c8:	cc                   	int3
57d2c9:	cc                   	int3
57d2ca:	cc                   	int3
57d2cb:	cc                   	int3
57d2cc:	cc                   	int3
57d2cd:	cc                   	int3
57d2ce:	cc                   	int3
57d2cf:	cc                   	int3
57d2d0:	b8 8c 00 00 00       	mov    $0x8c,%eax
57d2d5:	e8 16 42 06 00       	call   0x5e14f0
57d2da:	a1 d4 89 72 00       	mov    0x7289d4,%eax
57d2df:	33 c4                	xor    %esp,%eax
57d2e1:	89 84 24 88 00 00 00 	mov    %eax,0x88(%esp)
57d2e8:	8b 94 24 a0 00 00 00 	mov    0xa0(%esp),%edx
57d2ef:	33 c0                	xor    %eax,%eax
57d2f1:	53                   	push   %ebx
57d2f2:	8b 9c 24 9c 00 00 00 	mov    0x9c(%esp),%ebx
57d2f9:	55                   	push   %ebp
57d2fa:	8b ac 24 9c 00 00 00 	mov    0x9c(%esp),%ebp
57d301:	56                   	push   %esi
57d302:	8b b4 24 9c 00 00 00 	mov    0x9c(%esp),%esi
57d309:	57                   	push   %edi
57d30a:	8b bc 24 ac 00 00 00 	mov    0xac(%esp),%edi
57d311:	89 54 24 10          	mov    %edx,0x10(%esp)
57d315:	85 ff                	test   %edi,%edi
57d317:	74 1d                	je     0x57d336
57d319:	3b 3e                	cmp    (%esi),%edi
57d31b:	74 10                	je     0x57d32d
57d31d:	85 ed                	test   %ebp,%ebp
57d31f:	0f 84 8b 00 00 00    	je     0x57d3b0
57d325:	85 db                	test   %ebx,%ebx
57d327:	0f 88 83 00 00 00    	js     0x57d3b0
57d32d:	b8 01 00 00 00       	mov    $0x1,%eax
57d332:	89 3e                	mov    %edi,(%esi)
57d334:	eb 06                	jmp    0x57d33c
57d336:	8b 3e                	mov    (%esi),%edi
57d338:	85 ff                	test   %edi,%edi
57d33a:	74 74                	je     0x57d3b0
57d33c:	85 ed                	test   %ebp,%ebp
57d33e:	0f 84 87 01 00 00    	je     0x57d4cb
57d344:	57                   	push   %edi
57d345:	e8 86 41 f1 ff       	call   0x4914d0
57d34a:	83 c4 04             	add    $0x4,%esp
57d34d:	89 44 24 14          	mov    %eax,0x14(%esp)
57d351:	3d 80 00 00 00       	cmp    $0x80,%eax
57d356:	7e 18                	jle    0x57d370
57d358:	68 40 29 6c 00       	push   $0x6c2940
57d35d:	6a 74                	push   $0x74
57d35f:	68 5c 29 6c 00       	push   $0x6c295c
57d364:	e8 97 35 f2 ff       	call   0x4a0900
57d369:	8b 44 24 20          	mov    0x20(%esp),%eax
57d36d:	83 c4 0c             	add    $0xc,%esp
57d370:	3b c3                	cmp    %ebx,%eax
57d372:	7d 57                	jge    0x57d3cb
57d374:	ff 74 24 10          	push   0x10(%esp)
57d378:	8d 46 04             	lea    0x4(%esi),%eax
57d37b:	57                   	push   %edi
57d37c:	50                   	push   %eax
57d37d:	e8 1e 3f f3 ff       	call   0x4b12a0
57d382:	83 c4 0c             	add    $0xc,%esp
57d385:	85 c0                	test   %eax,%eax
57d387:	74 27                	je     0x57d3b0
57d389:	53                   	push   %ebx
57d38a:	55                   	push   %ebp
57d38b:	8d 5e 04             	lea    0x4(%esi),%ebx
57d38e:	53                   	push   %ebx
57d38f:	e8 bc 40 f3 ff       	call   0x4b1450
57d394:	83 c4 0c             	add    $0xc,%esp
57d397:	85 c0                	test   %eax,%eax
57d399:	74 15                	je     0x57d3b0
57d39b:	8d 6e 4c             	lea    0x4c(%esi),%ebp
57d39e:	55                   	push   %ebp
57d39f:	8d 46 50             	lea    0x50(%esi),%eax
57d3a2:	50                   	push   %eax
57d3a3:	53                   	push   %ebx
57d3a4:	e8 77 3e f3 ff       	call   0x4b1220
57d3a9:	83 c4 0c             	add    $0xc,%esp
57d3ac:	85 c0                	test   %eax,%eax
57d3ae:	75 37                	jne    0x57d3e7
57d3b0:	33 c0                	xor    %eax,%eax
57d3b2:	8b 8c 24 98 00 00 00 	mov    0x98(%esp),%ecx
57d3b9:	5f                   	pop    %edi
57d3ba:	5e                   	pop    %esi
57d3bb:	5d                   	pop    %ebp
57d3bc:	5b                   	pop    %ebx
57d3bd:	33 cc                	xor    %esp,%ecx
57d3bf:	e8 16 41 06 00       	call   0x5e14da
57d3c4:	81 c4 8c 00 00 00    	add    $0x8c,%esp
57d3ca:	c3                   	ret
57d3cb:	81 fb 80 00 00 00    	cmp    $0x80,%ebx
57d3d1:	77 dd                	ja     0x57d3b0
57d3d3:	53                   	push   %ebx
57d3d4:	8d 46 50             	lea    0x50(%esi),%eax
57d3d7:	55                   	push   %ebp
57d3d8:	50                   	push   %eax
57d3d9:	e8 22 5b 06 00       	call   0x5e2f00
57d3de:	8d 6e 4c             	lea    0x4c(%esi),%ebp
57d3e1:	83 c4 0c             	add    $0xc,%esp
57d3e4:	89 5d 00             	mov    %ebx,0x0(%ebp)
57d3e7:	8b 4d 00             	mov    0x0(%ebp),%ecx
57d3ea:	81 f9 80 00 00 00    	cmp    $0x80,%ecx
57d3f0:	74 18                	je     0x57d40a
57d3f2:	b8 80 00 00 00       	mov    $0x80,%eax
57d3f7:	2b c1                	sub    %ecx,%eax
57d3f9:	50                   	push   %eax
57d3fa:	8d 46 50             	lea    0x50(%esi),%eax
57d3fd:	03 c1                	add    %ecx,%eax
57d3ff:	6a 00                	push   $0x0
57d401:	50                   	push   %eax
57d402:	e8 f9 65 06 00       	call   0x5e3a00
57d407:	83 c4 0c             	add    $0xc,%esp
57d40a:	8b 54 24 10          	mov    0x10(%esp),%edx
57d40e:	33 c9                	xor    %ecx,%ecx
57d410:	8a 44 0e 50          	mov    0x50(%esi,%ecx,1),%al
57d414:	34 36                	xor    $0x36,%al
57d416:	88 44 0c 18          	mov    %al,0x18(%esp,%ecx,1)
57d41a:	41                   	inc    %ecx
57d41b:	81 f9 80 00 00 00    	cmp    $0x80,%ecx
57d421:	7c ed                	jl     0x57d410
57d423:	52                   	push   %edx
57d424:	8d 5e 1c             	lea    0x1c(%esi),%ebx
57d427:	57                   	push   %edi
57d428:	53                   	push   %ebx
57d429:	e8 72 3e f3 ff       	call   0x4b12a0
57d42e:	83 c4 0c             	add    $0xc,%esp
57d431:	85 c0                	test   %eax,%eax
57d433:	0f 84 77 ff ff ff    	je     0x57d3b0
57d439:	57                   	push   %edi
57d43a:	e8 91 40 f1 ff       	call   0x4914d0
57d43f:	50                   	push   %eax
57d440:	8d 44 24 20          	lea    0x20(%esp),%eax
57d444:	50                   	push   %eax
57d445:	53                   	push   %ebx
57d446:	e8 05 40 f3 ff       	call   0x4b1450
57d44b:	83 c4 10             	add    $0x10,%esp
57d44e:	85 c0                	test   %eax,%eax
57d450:	0f 84 5a ff ff ff    	je     0x57d3b0
57d456:	33 c9                	xor    %ecx,%ecx
57d458:	0f 1f 84 00 00 00 00 	nopl   0x0(%eax,%eax,1)
57d45f:	00
57d460:	8a 44 0e 50          	mov    0x50(%esi,%ecx,1),%al
57d464:	34 5c                	xor    $0x5c,%al
57d466:	88 44 0c 18          	mov    %al,0x18(%esp,%ecx,1)
57d46a:	41                   	inc    %ecx
57d46b:	81 f9 80 00 00 00    	cmp    $0x80,%ecx
57d471:	7c ed                	jl     0x57d460
57d473:	ff 74 24 10          	push   0x10(%esp)
57d477:	8d 5e 34             	lea    0x34(%esi),%ebx
57d47a:	57                   	push   %edi
57d47b:	53                   	push   %ebx
57d47c:	e8 1f 3e f3 ff       	call   0x4b12a0
57d481:	83 c4 0c             	add    $0xc,%esp
57d484:	85 c0                	test   %eax,%eax
57d486:	0f 84 24 ff ff ff    	je     0x57d3b0
57d48c:	57                   	push   %edi
57d48d:	e8 3e 40 f1 ff       	call   0x4914d0
57d492:	50                   	push   %eax
57d493:	8d 44 24 20          	lea    0x20(%esp),%eax
57d497:	50                   	push   %eax
57d498:	53                   	push   %ebx
57d499:	e8 b2 3f f3 ff       	call   0x4b1450
57d49e:	83 c4 10             	add    $0x10,%esp
57d4a1:	85 c0                	test   %eax,%eax
57d4a3:	0f 84 07 ff ff ff    	je     0x57d3b0
57d4a9:	8d 46 1c             	lea    0x1c(%esi),%eax
57d4ac:	50                   	push   %eax
57d4ad:	8d 46 04             	lea    0x4(%esi),%eax
57d4b0:	50                   	push   %eax
57d4b1:	e8 6a 40 f3 ff       	call   0x4b1520
57d4b6:	83 c4 08             	add    $0x8,%esp
57d4b9:	85 c0                	test   %eax,%eax
57d4bb:	0f 84 ef fe ff ff    	je     0x57d3b0
57d4c1:	b8 01 00 00 00       	mov    $0x1,%eax
57d4c6:	e9 e7 fe ff ff       	jmp    0x57d3b2
57d4cb:	85 c0                	test   %eax,%eax
57d4cd:	74 da                	je     0x57d4a9
57d4cf:	e9 3a ff ff ff       	jmp    0x57d40e
57d4d4:	cc                   	int3
57d4d5:	cc                   	int3
57d4d6:	cc                   	int3
57d4d7:	cc                   	int3
57d4d8:	cc                   	int3
57d4d9:	cc                   	int3
57d4da:	cc                   	int3
57d4db:	cc                   	int3
57d4dc:	cc                   	int3
57d4dd:	cc                   	int3
57d4de:	cc                   	int3
57d4df:	cc                   	int3
57d4e0:	8b 44 24 04          	mov    0x4(%esp),%eax
57d4e4:	83 38 00             	cmpl   $0x0,(%eax)
57d4e7:	75 03                	jne    0x57d4ec
57d4e9:	33 c0                	xor    %eax,%eax
57d4eb:	c3                   	ret
57d4ec:	83 c0 04             	add    $0x4,%eax
57d4ef:	89 44 24 04          	mov    %eax,0x4(%esp)
57d4f3:	e9 58 3f f3 ff       	jmp    0x4b1450
57d4f8:	cc                   	int3
57d4f9:	cc                   	int3
57d4fa:	cc                   	int3
57d4fb:	cc                   	int3
57d4fc:	cc                   	int3
57d4fd:	cc                   	int3
57d4fe:	cc                   	int3
57d4ff:	cc                   	int3
57d500:	56                   	push   %esi
57d501:	8b 74 24 08          	mov    0x8(%esp),%esi
57d505:	56                   	push   %esi
57d506:	e8 d5 19 f1 ff       	call   0x48eee0
57d50b:	8d 86 cc 00 00 00    	lea    0xcc(%esi),%eax
57d511:	6a 20                	push   $0x20
57d513:	50                   	push   %eax
57d514:	e8 37 2e f2 ff       	call   0x4a0350
57d519:	8d 86 8c 00 00 00    	lea    0x8c(%esi),%eax
57d51f:	6a 20                	push   $0x20
57d521:	50                   	push   %eax
57d522:	e8 29 2e f2 ff       	call   0x4a0350
57d527:	8d 86 ac 00 00 00    	lea    0xac(%esi),%eax
57d52d:	6a 20                	push   $0x20
57d52f:	50                   	push   %eax
57d530:	e8 1b 2e f2 ff       	call   0x4a0350
57d535:	8d 86 ec 00 00 00    	lea    0xec(%esi),%eax
57d53b:	6a 20                	push   $0x20
57d53d:	50                   	push   %eax
57d53e:	e8 0d 2e f2 ff       	call   0x4a0350
57d543:	83 c4 24             	add    $0x24,%esp
57d546:	c7 86 0c 01 00 00 ff 	movl   $0xffffffff,0x10c(%esi)
57d54d:	ff ff ff
57d550:	5e                   	pop    %esi
57d551:	c3                   	ret
57d552:	cc                   	int3
57d553:	cc                   	int3
57d554:	cc                   	int3
57d555:	cc                   	int3
57d556:	cc                   	int3
57d557:	cc                   	int3
57d558:	cc                   	int3
57d559:	cc                   	int3
57d55a:	cc                   	int3
57d55b:	cc                   	int3
57d55c:	cc                   	int3
57d55d:	cc                   	int3
57d55e:	cc                   	int3
57d55f:	cc                   	int3
57d560:	57                   	push   %edi
57d561:	8b 7c 24 0c          	mov    0xc(%esp),%edi
57d565:	83 bf 0c 01 00 00 ff 	cmpl   $0xffffffff,0x10c(%edi)
57d56c:	75 04                	jne    0x57d572
57d56e:	33 c0                	xor    %eax,%eax
57d570:	5f                   	pop    %edi
57d571:	c3                   	ret
57d572:	53                   	push   %ebx
57d573:	8b 5c 24 0c          	mov    0xc(%esp),%ebx
57d577:	57                   	push   %edi
57d578:	53                   	push   %ebx
57d579:	e8 d2 19 f1 ff       	call   0x48ef50
57d57e:	83 c4 08             	add    $0x8,%esp
57d581:	85 c0                	test   %eax,%eax
57d583:	75 03                	jne    0x57d588
57d585:	5b                   	pop    %ebx
57d586:	5f                   	pop    %edi
57d587:	c3                   	ret
57d588:	56                   	push   %esi
57d589:	57                   	push   %edi
57d58a:	e8 81 3a f1 ff       	call   0x491010
57d58f:	8b f0                	mov    %eax,%esi
57d591:	8d 8f 8c 00 00 00    	lea    0x8c(%edi),%ecx
57d597:	56                   	push   %esi
57d598:	51                   	push   %ecx
57d599:	8d 8b 8c 00 00 00    	lea    0x8c(%ebx),%ecx
57d59f:	51                   	push   %ecx
57d5a0:	e8 5b 59 06 00       	call   0x5e2f00
57d5a5:	56                   	push   %esi
57d5a6:	8d 8f ac 00 00 00    	lea    0xac(%edi),%ecx
57d5ac:	51                   	push   %ecx
57d5ad:	8d 83 ac 00 00 00    	lea    0xac(%ebx),%eax
57d5b3:	50                   	push   %eax
57d5b4:	e8 47 59 06 00       	call   0x5e2f00
57d5b9:	56                   	push   %esi
57d5ba:	8d 87 cc 00 00 00    	lea    0xcc(%edi),%eax
57d5c0:	50                   	push   %eax
57d5c1:	8d 83 cc 00 00 00    	lea    0xcc(%ebx),%eax
57d5c7:	50                   	push   %eax
57d5c8:	e8 33 59 06 00       	call   0x5e2f00
57d5cd:	56                   	push   %esi
57d5ce:	8d 87 ec 00 00 00    	lea    0xec(%edi),%eax
57d5d4:	50                   	push   %eax
57d5d5:	8d 83 ec 00 00 00    	lea    0xec(%ebx),%eax
57d5db:	50                   	push   %eax
57d5dc:	e8 1f 59 06 00       	call   0x5e2f00
57d5e1:	8b 87 0c 01 00 00    	mov    0x10c(%edi),%eax
57d5e7:	83 c4 34             	add    $0x34,%esp
57d5ea:	89 83 0c 01 00 00    	mov    %eax,0x10c(%ebx)
57d5f0:	b8 01 00 00 00       	mov    $0x1,%eax
57d5f5:	5e                   	pop    %esi
57d5f6:	5b                   	pop    %ebx
57d5f7:	5f                   	pop    %edi
57d5f8:	c3                   	ret
57d5f9:	cc                   	int3
57d5fa:	cc                   	int3