59a134:	e8 c7 d5 ff ff       	call   0x597700
59a139:	83 c4 0c             	add    $0xc,%esp
59a13c:	8b e8                	mov    %eax,%ebp
59a13e:	80 3f 40             	cmpb   $0x40,(%edi)
59a141:	75 11                	jne    0x59a154
59a143:	56                   	push   %esi
59a144:	53                   	push   %ebx
59a145:	e8 b6 1b 00 00       	call   0x59bd00
59a14a:	83 c4 08             	add    $0x8,%esp
59a14d:	8b c5                	mov    %ebp,%eax
59a14f:	5d                   	pop    %ebp
59a150:	5f                   	pop    %edi
59a151:	5e                   	pop    %esi
59a152:	5b                   	pop    %ebx
59a153:	c3                   	ret
59a154:	68 60 82 57 00       	push   $0x578260
59a159:	56                   	push   %esi
59a15a:	e8 e1 44 f1 ff       	call   0x4ae640
59a15f:	83 c4 08             	add    $0x8,%esp
59a162:	8b c5                	mov    %ebp,%eax
59a164:	5d                   	pop    %ebp
59a165:	5f                   	pop    %edi
59a166:	5e                   	pop    %esi
59a167:	5b                   	pop    %ebx
59a168:	c3                   	ret
59a169:	cc                   	int3
59a16a:	cc                   	int3
59a16b:	cc                   	int3
59a16c:	cc                   	int3
59a16d:	cc                   	int3
59a16e:	cc                   	int3
59a16f:	cc                   	int3
59a170:	b8 14 00 00 00       	mov    $0x14,%eax
59a175:	e8 76 73 04 00       	call   0x5e14f0
59a17a:	53                   	push   %ebx
59a17b:	8b 5c 24 20          	mov    0x20(%esp),%ebx
59a17f:	56                   	push   %esi
59a180:	68 ad 57 6e 00       	push   $0x6e57ad
59a185:	83 3b 00             	cmpl   $0x0,(%ebx)
59a188:	75 2e                	jne    0x59a1b8
59a18a:	8b 74 24 2c          	mov    0x2c(%esp),%esi
59a18e:	56                   	push   %esi
59a18f:	68 34 9f 6c 00       	push   $0x6c9f34
59a194:	ff 74 24 2c          	push   0x2c(%esp)
59a198:	e8 33 4d f1 ff       	call   0x4aeed0
59a19d:	56                   	push   %esi
59a19e:	ff 73 04             	push   0x4(%ebx)
59a1a1:	ff 74 24 38          	push   0x38(%esp)
59a1a5:	e8 66 00 00 00       	call   0x59a210
59a1aa:	83 c4 1c             	add    $0x1c,%esp
59a1ad:	b8 01 00 00 00       	mov    $0x1,%eax
59a1b2:	5e                   	pop    %esi
59a1b3:	5b                   	pop    %ebx
59a1b4:	83 c4 14             	add    $0x14,%esp
59a1b7:	c3                   	ret
59a1b8:	8b 4c 24 2c          	mov    0x2c(%esp),%ecx
59a1bc:	8b 43 04             	mov    0x4(%ebx),%eax
59a1bf:	8b 74 24 24          	mov    0x24(%esp),%esi
59a1c3:	89 44 24 0c          	mov    %eax,0xc(%esp)
59a1c7:	8d 41 02             	lea    0x2(%ecx),%eax
59a1ca:	50                   	push   %eax
59a1cb:	68 ad 57 6e 00       	push   $0x6e57ad
59a1d0:	51                   	push   %ecx
59a1d1:	68 44 9f 6c 00       	push   $0x6c9f44
59a1d6:	56                   	push   %esi
59a1d7:	e8 f4 4c f1 ff       	call   0x4aeed0
59a1dc:	68 1f 03 82 00       	push   $0x82031f
59a1e1:	6a 00                	push   $0x0
59a1e3:	8d 44 24 28          	lea    0x28(%esp),%eax
59a1e7:	50                   	push   %eax
59a1e8:	56                   	push   %esi
59a1e9:	e8 32 2a ff ff       	call   0x58cc20
59a1ee:	68 b8 82 6b 00       	push   $0x6b82b8
59a1f3:	56                   	push   %esi
59a1f4:	e8 17 87 f1 ff       	call   0x4b2910
59a1f9:	83 c4 30             	add    $0x30,%esp
59a1fc:	b8 01 00 00 00       	mov    $0x1,%eax
59a201:	5e                   	pop    %esi
59a202:	5b                   	pop    %ebx
59a203:	83 c4 14             	add    $0x14,%esp
59a206:	c3                   	ret
59a207:	cc                   	int3
59a208:	cc                   	int3
59a209:	cc                   	int3
59a20a:	cc                   	int3
59a20b:	cc                   	int3
59a20c:	cc                   	int3
59a20d:	cc                   	int3
59a20e:	cc                   	int3
59a20f:	cc                   	int3
59a210:	53                   	push   %ebx
59a211:	8b 5c 24 0c          	mov    0xc(%esp),%ebx
59a215:	56                   	push   %esi
59a216:	53                   	push   %ebx
59a217:	33 f6                	xor    %esi,%esi
59a219:	e8 f2 43 f1 ff       	call   0x4ae610
59a21e:	83 c4 04             	add    $0x4,%esp
59a221:	85 c0                	test   %eax,%eax
59a223:	7e 47                	jle    0x59a26c
59a225:	55                   	push   %ebp
59a226:	8b 6c 24 18          	mov    0x18(%esp),%ebp
59a22a:	57                   	push   %edi
59a22b:	8b 7c 24 14          	mov    0x14(%esp),%edi
59a22f:	83 c5 02             	add    $0x2,%ebp
59a232:	68 ad 57 6e 00       	push   $0x6e57ad
59a237:	55                   	push   %ebp
59a238:	68 9c 80 6c 00       	push   $0x6c809c
59a23d:	57                   	push   %edi
59a23e:	e8 8d 4c f1 ff       	call   0x4aeed0
59a243:	56                   	push   %esi
59a244:	53                   	push   %ebx
59a245:	e8 e6 44 f1 ff       	call   0x4ae730
59a24a:	50                   	push   %eax
59a24b:	57                   	push   %edi
59a24c:	e8 8f ca ff ff       	call   0x596ce0
59a251:	68 b8 82 6b 00       	push   $0x6b82b8
59a256:	57                   	push   %edi
59a257:	e8 b4 86 f1 ff       	call   0x4b2910
59a25c:	53                   	push   %ebx
59a25d:	46                   	inc    %esi
59a25e:	e8 ad 43 f1 ff       	call   0x4ae610
59a263:	83 c4 2c             	add    $0x2c,%esp
59a266:	3b f0                	cmp    %eax,%esi
59a268:	7c c8                	jl     0x59a232
59a26a:	5f                   	pop    %edi
59a26b:	5d                   	pop    %ebp
59a26c:	5e                   	pop    %esi
59a26d:	b8 01 00 00 00       	mov    $0x1,%eax
59a272:	5b                   	pop    %ebx
59a273:	c3                   	ret
59a274:	cc                   	int3
59a275:	cc                   	int3
59a276:	cc                   	int3
59a277:	cc                   	int3
59a278:	cc                   	int3
59a279:	cc                   	int3
59a27a:	cc                   	int3
59a27b:	cc                   	int3
59a27c:	cc                   	int3
59a27d:	cc                   	int3
59a27e:	cc                   	int3
59a27f:	cc                   	int3
59a280:	8b 4c 24 10          	mov    0x10(%esp),%ecx
59a284:	53                   	push   %ebx
59a285:	57                   	push   %edi
59a286:	8b 7c 24 0c          	mov    0xc(%esp),%edi
59a28a:	bb 01 00 00 00       	mov    $0x1,%ebx
59a28f:	68 ad 57 6e 00       	push   $0x6e57ad
59a294:	8d 41 02             	lea    0x2(%ecx),%eax
59a297:	50                   	push   %eax
59a298:	ff 74 24 18          	push   0x18(%esp)
59a29c:	68 ad 57 6e 00       	push   $0x6e57ad
59a2a1:	51                   	push   %ecx
59a2a2:	68 20 9f 6c 00       	push   $0x6c9f20
59a2a7:	57                   	push   %edi
59a2a8:	e8 23 4c f1 ff       	call   0x4aeed0
59a2ad:	83 c4 1c             	add    $0x1c,%esp
59a2b0:	83 3d 74 9b 6c 00 00 	cmpl   $0x0,0x6c9b74
59a2b7:	74 60                	je     0x59a319
59a2b9:	55                   	push   %ebp
59a2ba:	8b 6c 24 18          	mov    0x18(%esp),%ebp
59a2be:	56                   	push   %esi
59a2bf:	be 74 9b 6c 00       	mov    $0x6c9b74,%esi
59a2c4:	ff 76 fc             	push   -0x4(%esi)
59a2c7:	55                   	push   %ebp
59a2c8:	e8 83 2c f4 ff       	call   0x4dcf50
59a2cd:	83 c4 08             	add    $0x8,%esp
59a2d0:	85 c0                	test   %eax,%eax
59a2d2:	74 21                	je     0x59a2f5
59a2d4:	85 db                	test   %ebx,%ebx
59a2d6:	74 04                	je     0x59a2dc
59a2d8:	33 db                	xor    %ebx,%ebx
59a2da:	eb 0e                	jmp    0x59a2ea
59a2dc:	68 04 a7 6b 00       	push   $0x6ba704
59a2e1:	57                   	push   %edi
59a2e2:	e8 29 86 f1 ff       	call   0x4b2910
59a2e7:	83 c4 08             	add    $0x8,%esp
59a2ea:	ff 36                	push   (%esi)
59a2ec:	57                   	push   %edi
59a2ed:	e8 1e 86 f1 ff       	call   0x4b2910
59a2f2:	83 c4 08             	add    $0x8,%esp
59a2f5:	83 c6 0c             	add    $0xc,%esi
59a2f8:	83 3e 00             	cmpl   $0x0,(%esi)
59a2fb:	75 c7                	jne    0x59a2c4
59a2fd:	5e                   	pop    %esi
59a2fe:	5d                   	pop    %ebp
59a2ff:	85 db                	test   %ebx,%ebx
59a301:	75 16                	jne    0x59a319
59a303:	68 b8 82 6b 00       	push   $0x6b82b8
59a308:	57                   	push   %edi
59a309:	e8 02 86 f1 ff       	call   0x4b2910
59a30e:	83 c4 08             	add    $0x8,%esp
59a311:	b8 01 00 00 00       	mov    $0x1,%eax
59a316:	5f                   	pop    %edi
59a317:	5b                   	pop    %ebx
59a318:	c3                   	ret
59a319:	68 a0 80 6c 00       	push   $0x6c80a0
59a31e:	57                   	push   %edi
59a31f:	e8 ec 85 f1 ff       	call   0x4b2910
59a324:	83 c4 08             	add    $0x8,%esp
59a327:	b8 01 00 00 00       	mov    $0x1,%eax
59a32c:	5f                   	pop    %edi
59a32d:	5b                   	pop    %ebx
59a32e:	c3                   	ret
59a32f:	cc                   	int3
59a330:	53                   	push   %ebx
59a331:	55                   	push   %ebp
59a332:	56                   	push   %esi
59a333:	8b 74 24 18          	mov    0x18(%esp),%esi
59a337:	33 ed                	xor    %ebp,%ebp
59a339:	57                   	push   %edi
59a33a:	6a 09                	push   $0x9
59a33c:	68 04 9f 6c 00       	push   $0x6c9f04
59a341:	ff 76 04             	push   0x4(%esi)
59a344:	33 ff                	xor    %edi,%edi
59a346:	e8 15 f8 05 00       	call   0x5f9b60
59a34b:	83 c4 0c             	add    $0xc,%esp
59a34e:	85 c0                	test   %eax,%eax
59a350:	75 6c                	jne    0x59a3be
59a352:	ff 76 08             	push   0x8(%esi)
59a355:	ff 74 24 1c          	push   0x1c(%esp)
59a359:	e8 82 fd ff ff       	call   0x59a0e0
59a35e:	8b e8                	mov    %eax,%ebp
59a360:	83 c4 08             	add    $0x8,%esp
59a363:	85 ed                	test   %ebp,%ebp
59a365:	74 4f                	je     0x59a3b6
59a367:	8b 74 24 14          	mov    0x14(%esp),%esi
59a36b:	83 3e 00             	cmpl   $0x0,(%esi)
59a36e:	0f 84 40 01 00 00    	je     0x59a4b4
59a374:	68 9c 00 00 00       	push   $0x9c
59a379:	68 e8 9e 6c 00       	push   $0x6c9ee8
59a37e:	68 a0 00 00 00       	push   $0xa0
59a383:	68 9e 00 00 00       	push   $0x9e
59a388:	6a 22                	push   $0x22
59a38a:	e8 11 71 f0 ff       	call   0x4a14a0
59a38f:	83 c4 14             	add    $0x14,%esp
59a392:	85 ed                	test   %ebp,%ebp
59a394:	74 0e                	je     0x59a3a4
59a396:	68 00 de 58 00       	push   $0x58de00
59a39b:	55                   	push   %ebp
59a39c:	e8 9f 42 f1 ff       	call   0x4ae640
59a3a1:	83 c4 08             	add    $0x8,%esp
59a3a4:	85 ff                	test   %edi,%edi
59a3a6:	74 0e                	je     0x59a3b6
59a3a8:	68 d0 20 59 00       	push   $0x5920d0
59a3ad:	57                   	push   %edi
59a3ae:	e8 8d 42 f1 ff       	call   0x4ae640
59a3b3:	83 c4 08             	add    $0x8,%esp
59a3b6:	5f                   	pop    %edi
59a3b7:	5e                   	pop    %esi
59a3b8:	5d                   	pop    %ebp
59a3b9:	83 c8 ff             	or     $0xffffffff,%eax
59a3bc:	5b                   	pop    %ebx
59a3bd:	c3                   	ret
59a3be:	8b 46 04             	mov    0x4(%esi),%eax
59a3c1:	b9 10 9f 6c 00       	mov    $0x6c9f10,%ecx
59a3c6:	8a 10                	mov    (%eax),%dl
59a3c8:	3a 11                	cmp    (%ecx),%dl
59a3ca:	75 1a                	jne    0x59a3e6
59a3cc:	84 d2                	test   %dl,%dl
59a3ce:	74 12                	je     0x59a3e2
59a3d0:	8a 50 01             	mov    0x1(%eax),%dl
59a3d3:	3a 51 01             	cmp    0x1(%ecx),%dl
59a3d6:	75 0e                	jne    0x59a3e6
59a3d8:	83 c0 02             	add    $0x2,%eax
59a3db:	83 c1 02             	add    $0x2,%ecx
59a3de:	84 d2                	test   %dl,%dl
59a3e0:	75 e4                	jne    0x59a3c6
59a3e2:	33 c0                	xor    %eax,%eax
59a3e4:	eb 05                	jmp    0x59a3eb
59a3e6:	1b c0                	sbb    %eax,%eax
59a3e8:	83 c8 01             	or     $0x1,%eax
59a3eb:	85 c0                	test   %eax,%eax
59a3ed:	0f 85 06 01 00 00    	jne    0x59a4f9
59a3f3:	e8 58 7d ff ff       	call   0x592150
59a3f8:	8b d8                	mov    %eax,%ebx
59a3fa:	85 db                	test   %ebx,%ebx
59a3fc:	74 33                	je     0x59a431
59a3fe:	ff 76 08             	push   0x8(%esi)
59a401:	ff 74 24 1c          	push   0x1c(%esp)
59a405:	e8 b6 18 00 00       	call   0x59bcc0
59a40a:	8b f8                	mov    %eax,%edi
59a40c:	83 c4 08             	add    $0x8,%esp
59a40f:	85 ff                	test   %edi,%edi
59a411:	75 26                	jne    0x59a439
59a413:	68 84 00 00 00       	push   $0x84
59a418:	68 e8 9e 6c 00       	push   $0x6c9ee8
59a41d:	68 96 00 00 00       	push   $0x96
59a422:	68 9e 00 00 00       	push   $0x9e
59a427:	6a 22                	push   $0x22
59a429:	e8 72 70 f0 ff       	call   0x4a14a0
59a42e:	83 c4 14             	add    $0x14,%esp
59a431:	5f                   	pop    %edi
59a432:	5e                   	pop    %esi
59a433:	5d                   	pop    %ebp
59a434:	83 c8 ff             	or     $0xffffffff,%eax
59a437:	5b                   	pop    %ebx
59a438:	c3                   	ret
59a439:	68 01 10 00 00       	push   $0x1001
59a43e:	57                   	push   %edi
59a43f:	53                   	push   %ebx
59a440:	e8 db db fd ff       	call   0x578020
59a445:	57                   	push   %edi
59a446:	ff 74 24 28          	push   0x28(%esp)
59a44a:	8b f0                	mov    %eax,%esi
59a44c:	e8 af 18 00 00       	call   0x59bd00
59a451:	8b 3b                	mov    (%ebx),%edi
59a453:	53                   	push   %ebx
59a454:	89 2b                	mov    %ebp,(%ebx)
59a456:	e8 c5 7c ff ff       	call   0x592120
59a45b:	83 c4 18             	add    $0x18,%esp
59a45e:	85 f6                	test   %esi,%esi
59a460:	0f 84 3e ff ff ff    	je     0x59a3a4
59a466:	57                   	push   %edi
59a467:	e8 a4 41 f1 ff       	call   0x4ae610
59a46c:	83 c4 04             	add    $0x4,%esp
59a46f:	85 c0                	test   %eax,%eax
59a471:	0f 8e 2d ff ff ff    	jle    0x59a3a4
59a477:	57                   	push   %edi
59a478:	e8 93 41 f1 ff       	call   0x4ae610
59a47d:	48                   	dec    %eax
59a47e:	50                   	push   %eax
59a47f:	57                   	push   %edi
59a480:	e8 ab 42 f1 ff       	call   0x4ae730
59a485:	83 c4 0c             	add    $0xc,%esp
59a488:	39 68 08             	cmp    %ebp,0x8(%eax)
59a48b:	0f 84 d6 fe ff ff    	je     0x59a367
59a491:	68 94 00 00 00       	push   $0x94
59a496:	68 e8 9e 6c 00       	push   $0x6c9ee8
59a49b:	68 a1 00 00 00       	push   $0xa1
59a4a0:	68 9e 00 00 00       	push   $0x9e
59a4a5:	6a 22                	push   $0x22
59a4a7:	e8 f4 6f f0 ff       	call   0x4a14a0
59a4ac:	83 c4 14             	add    $0x14,%esp
59a4af:	e9 f0 fe ff ff       	jmp    0x59a3a4
59a4b4:	68 28 9c 6c 00       	push   $0x6c9c28
59a4b9:	e8 92 16 f3 ff       	call   0x4cbb50
59a4be:	83 c4 04             	add    $0x4,%esp
59a4c1:	89 06                	mov    %eax,(%esi)
59a4c3:	85 c0                	test   %eax,%eax
59a4c5:	0f 84 c7 fe ff ff    	je     0x59a392
59a4cb:	85 ed                	test   %ebp,%ebp
59a4cd:	74 15                	je     0x59a4e4
59a4cf:	c7 00 00 00 00 00    	movl   $0x0,(%eax)
59a4d5:	8b 06                	mov    (%esi),%eax
59a4d7:	5f                   	pop    %edi
59a4d8:	5e                   	pop    %esi
59a4d9:	89 68 04             	mov    %ebp,0x4(%eax)
59a4dc:	b8 01 00 00 00       	mov    $0x1,%eax
59a4e1:	5d                   	pop    %ebp