56a208:	6a 50                	push   $0x50
56a20a:	ff 37                	push   (%edi)
56a20c:	e8 0f 73 fb ff       	call   0x521520
56a211:	83 c4 0c             	add    $0xc,%esp
56a214:	89 43 10             	mov    %eax,0x10(%ebx)
56a217:	e9 a1 13 00 00       	jmp    0x56b5bd
56a21c:	8b 43 04             	mov    0x4(%ebx),%eax
56a21f:	50                   	push   %eax
56a220:	89 43 f8             	mov    %eax,-0x8(%ebx)
56a223:	e8 c8 31 fd ff       	call   0x53d3f0
56a228:	83 c4 04             	add    $0x4,%esp
56a22b:	e9 8d 13 00 00       	jmp    0x56b5bd
56a230:	8b 53 f8             	mov    -0x8(%ebx),%edx
56a233:	85 d2                	test   %edx,%edx
56a235:	0f 84 82 13 00 00    	je     0x56b5bd
56a23b:	8b 02                	mov    (%edx),%eax
56a23d:	85 c0                	test   %eax,%eax
56a23f:	0f 8e 78 13 00 00    	jle    0x56b5bd
56a245:	8d 0c c0             	lea    (%eax,%eax,8),%ecx
56a248:	8a 43 04             	mov    0x4(%ebx),%al
56a24b:	88 44 ca e4          	mov    %al,-0x1c(%edx,%ecx,8)
56a24f:	e9 69 13 00 00       	jmp    0x56b5bd
56a254:	ff 73 04             	push   0x4(%ebx)
56a257:	8d 43 e0             	lea    -0x20(%ebx),%eax
56a25a:	ff 73 f8             	push   -0x8(%ebx)
56a25d:	6a 00                	push   $0x0
56a25f:	50                   	push   %eax
56a260:	8d 43 d4             	lea    -0x2c(%ebx),%eax
56a263:	50                   	push   %eax
56a264:	8d 43 c8             	lea    -0x38(%ebx),%eax
56a267:	50                   	push   %eax
56a268:	ff 73 bc             	push   -0x44(%ebx)
56a26b:	57                   	push   %edi
56a26c:	e8 9f 29 fd ff       	call   0x53cc10
56a271:	8d 4b ec             	lea    -0x14(%ebx),%ecx
56a274:	89 43 bc             	mov    %eax,-0x44(%ebx)
56a277:	51                   	push   %ecx
56a278:	50                   	push   %eax
56a279:	57                   	push   %edi
56a27a:	e8 b1 30 fd ff       	call   0x53d330
56a27f:	83 c4 2c             	add    $0x2c,%esp
56a282:	e9 36 13 00 00       	jmp    0x56b5bd
56a287:	ff 73 04             	push   0x4(%ebx)
56a28a:	8d 43 ec             	lea    -0x14(%ebx),%eax
56a28d:	ff 73 f8             	push   -0x8(%ebx)
56a290:	6a 00                	push   $0x0
56a292:	50                   	push   %eax
56a293:	8d 43 bc             	lea    -0x44(%ebx),%eax
56a296:	50                   	push   %eax
56a297:	8d 43 b0             	lea    -0x50(%ebx),%eax
56a29a:	50                   	push   %eax
56a29b:	ff 73 a4             	push   -0x5c(%ebx)
56a29e:	57                   	push   %edi
56a29f:	e8 6c 29 fd ff       	call   0x53cc10
56a2a4:	ff 73 d4             	push   -0x2c(%ebx)
56a2a7:	89 43 a4             	mov    %eax,-0x5c(%ebx)
56a2aa:	50                   	push   %eax
56a2ab:	57                   	push   %edi
56a2ac:	e8 3f 30 fd ff       	call   0x53d2f0
56a2b1:	83 c4 2c             	add    $0x2c,%esp
56a2b4:	e9 04 13 00 00       	jmp    0x56b5bd
56a2b9:	ff 73 04             	push   0x4(%ebx)
56a2bc:	8d 43 ec             	lea    -0x14(%ebx),%eax
56a2bf:	ff 73 f8             	push   -0x8(%ebx)
56a2c2:	ff 73 d4             	push   -0x2c(%ebx)
56a2c5:	50                   	push   %eax
56a2c6:	6a 00                	push   $0x0
56a2c8:	6a 00                	push   $0x0
56a2ca:	ff 73 bc             	push   -0x44(%ebx)
56a2cd:	57                   	push   %edi
56a2ce:	e8 3d 29 fd ff       	call   0x53cc10
56a2d3:	83 c4 20             	add    $0x20,%esp
56a2d6:	89 43 bc             	mov    %eax,-0x44(%ebx)
56a2d9:	e9 df 12 00 00       	jmp    0x56b5bd
56a2de:	8b 4b bc             	mov    -0x44(%ebx),%ecx
56a2e1:	85 c9                	test   %ecx,%ecx
56a2e3:	75 1a                	jne    0x56a2ff
56a2e5:	39 4b f0             	cmp    %ecx,-0x10(%ebx)
56a2e8:	75 15                	jne    0x56a2ff
56a2ea:	39 4b f8             	cmp    %ecx,-0x8(%ebx)
56a2ed:	75 10                	jne    0x56a2ff
56a2ef:	39 4b 04             	cmp    %ecx,0x4(%ebx)
56a2f2:	75 0b                	jne    0x56a2ff
56a2f4:	8b 43 d4             	mov    -0x2c(%ebx),%eax
56a2f7:	89 43 bc             	mov    %eax,-0x44(%ebx)
56a2fa:	e9 be 12 00 00       	jmp    0x56b5bd
56a2ff:	8b 43 d4             	mov    -0x2c(%ebx),%eax
56a302:	83 38 01             	cmpl   $0x1,(%eax)
56a305:	75 7f                	jne    0x56a386
56a307:	ff 73 04             	push   0x4(%ebx)
56a30a:	8d 43 ec             	lea    -0x14(%ebx),%eax
56a30d:	ff 73 f8             	push   -0x8(%ebx)
56a310:	6a 00                	push   $0x0
56a312:	50                   	push   %eax
56a313:	6a 00                	push   $0x0
56a315:	6a 00                	push   $0x0
56a317:	51                   	push   %ecx
56a318:	57                   	push   %edi
56a319:	e8 f2 28 fd ff       	call   0x53cc10
56a31e:	83 c4 20             	add    $0x20,%esp
56a321:	89 43 bc             	mov    %eax,-0x44(%ebx)
56a324:	85 c0                	test   %eax,%eax
56a326:	74 4c                	je     0x56a374
56a328:	8b 08                	mov    (%eax),%ecx
56a32a:	8d 0c c9             	lea    (%ecx,%ecx,8),%ecx
56a32d:	8d 14 c8             	lea    (%eax,%ecx,8),%edx
56a330:	8b 4b d4             	mov    -0x2c(%ebx),%ecx
56a333:	8b 41 10             	mov    0x10(%ecx),%eax
56a336:	89 42 c8             	mov    %eax,-0x38(%edx)
56a339:	8b 41 0c             	mov    0xc(%ecx),%eax
56a33c:	89 42 c4             	mov    %eax,-0x3c(%edx)
56a33f:	8b 41 1c             	mov    0x1c(%ecx),%eax
56a342:	89 42 d4             	mov    %eax,-0x2c(%edx)
56a345:	f6 41 30 04          	testb  $0x4,0x30(%ecx)
56a349:	74 14                	je     0x56a35f
56a34b:	8b 41 48             	mov    0x48(%ecx),%eax
56a34e:	89 02                	mov    %eax,(%edx)
56a350:	83 61 30 fb          	andl   $0xfffffffb,0x30(%ecx)
56a354:	c7 41 48 00 00 00 00 	movl   $0x0,0x48(%ecx)
56a35b:	83 4a e8 04          	orl    $0x4,-0x18(%edx)
56a35f:	c7 41 0c 00 00 00 00 	movl   $0x0,0xc(%ecx)
56a366:	c7 41 10 00 00 00 00 	movl   $0x0,0x10(%ecx)
56a36d:	c7 41 1c 00 00 00 00 	movl   $0x0,0x1c(%ecx)
56a374:	ff 73 d4             	push   -0x2c(%ebx)
56a377:	ff 37                	push   (%edi)
56a379:	e8 f2 29 fd ff       	call   0x53cd70
56a37e:	83 c4 08             	add    $0x8,%esp
56a381:	e9 37 12 00 00       	jmp    0x56b5bd
56a386:	50                   	push   %eax
56a387:	e8 64 30 fd ff       	call   0x53d3f0
56a38c:	6a 00                	push   $0x0
56a38e:	68 00 08 00 00       	push   $0x800
56a393:	6a 00                	push   $0x0
56a395:	6a 00                	push   $0x0
56a397:	6a 00                	push   $0x0
56a399:	6a 00                	push   $0x0
56a39b:	ff 73 d4             	push   -0x2c(%ebx)
56a39e:	6a 00                	push   $0x0
56a3a0:	57                   	push   %edi
56a3a1:	e8 ba 20 fd ff       	call   0x53c460
56a3a6:	ff 73 04             	push   0x4(%ebx)
56a3a9:	ff 73 f8             	push   -0x8(%ebx)
56a3ac:	50                   	push   %eax
56a3ad:	8d 43 ec             	lea    -0x14(%ebx),%eax
56a3b0:	50                   	push   %eax
56a3b1:	6a 00                	push   $0x0
56a3b3:	6a 00                	push   $0x0
56a3b5:	ff 73 bc             	push   -0x44(%ebx)
56a3b8:	57                   	push   %edi
56a3b9:	e8 52 28 fd ff       	call   0x53cc10
56a3be:	83 c4 48             	add    $0x48,%esp
56a3c1:	89 43 bc             	mov    %eax,-0x44(%ebx)
56a3c4:	e9 f4 11 00 00       	jmp    0x56b5bd
56a3c9:	c7 43 10 00 00 00 00 	movl   $0x0,0x10(%ebx)
56a3d0:	c7 43 14 00 00 00 00 	movl   $0x0,0x14(%ebx)
56a3d7:	e9 e1 11 00 00       	jmp    0x56b5bd
56a3dc:	6a 00                	push   $0x0
56a3de:	8d 43 04             	lea    0x4(%ebx),%eax
56a3e1:	50                   	push   %eax
56a3e2:	6a 00                	push   $0x0
56a3e4:	57                   	push   %edi
56a3e5:	e8 66 27 fd ff       	call   0x53cb50
56a3ea:	83 c4 10             	add    $0x10,%esp
56a3ed:	8b f0                	mov    %eax,%esi
56a3ef:	80 bf c8 00 00 00 02 	cmpb   $0x2,0xc8(%edi)
56a3f6:	72 14                	jb     0x56a40c
56a3f8:	85 f6                	test   %esi,%esi
56a3fa:	74 10                	je     0x56a40c
56a3fc:	8d 43 04             	lea    0x4(%ebx),%eax
56a3ff:	50                   	push   %eax
56a400:	ff 76 10             	push   0x10(%esi)
56a403:	57                   	push   %edi
56a404:	e8 47 da fc ff       	call   0x537e50
56a409:	83 c4 0c             	add    $0xc,%esp
56a40c:	89 73 04             	mov    %esi,0x4(%ebx)
56a40f:	e9 a9 11 00 00       	jmp    0x56b5bd
56a414:	8d 4b 04             	lea    0x4(%ebx),%ecx
56a417:	51                   	push   %ecx
56a418:	8d 43 ec             	lea    -0x14(%ebx),%eax
56a41b:	50                   	push   %eax
56a41c:	6a 00                	push   $0x0
56a41e:	57                   	push   %edi
56a41f:	e8 2c 27 fd ff       	call   0x53cb50
56a424:	83 c4 10             	add    $0x10,%esp
56a427:	8b f0                	mov    %eax,%esi
56a429:	80 bf c8 00 00 00 02 	cmpb   $0x2,0xc8(%edi)
56a430:	72 14                	jb     0x56a446
56a432:	85 f6                	test   %esi,%esi
56a434:	74 10                	je     0x56a446
56a436:	8d 43 04             	lea    0x4(%ebx),%eax
56a439:	50                   	push   %eax
56a43a:	ff 76 10             	push   0x10(%esi)
56a43d:	57                   	push   %edi
56a43e:	e8 0d da fc ff       	call   0x537e50
56a443:	83 c4 0c             	add    $0xc,%esp
56a446:	89 73 ec             	mov    %esi,-0x14(%ebx)
56a449:	e9 6f 11 00 00       	jmp    0x56b5bd
56a44e:	6a 00                	push   $0x0
56a450:	8d 73 04             	lea    0x4(%ebx),%esi
56a453:	56                   	push   %esi
56a454:	6a 00                	push   $0x0
56a456:	57                   	push   %edi
56a457:	e8 f4 26 fd ff       	call   0x53cb50
56a45c:	83 c4 10             	add    $0x10,%esp
56a45f:	89 06                	mov    %eax,(%esi)
56a461:	e9 57 11 00 00       	jmp    0x56b5bd
56a466:	8d 43 04             	lea    0x4(%ebx),%eax
56a469:	50                   	push   %eax
56a46a:	8d 73 ec             	lea    -0x14(%ebx),%esi
56a46d:	56                   	push   %esi
56a46e:	6a 00                	push   $0x0
56a470:	57                   	push   %edi
56a471:	e8 da 26 fd ff       	call   0x53cb50
56a476:	83 c4 10             	add    $0x10,%esp
56a479:	89 06                	mov    %eax,(%esi)
56a47b:	e9 3d 11 00 00       	jmp    0x56b5bd
56a480:	8d 43 ec             	lea    -0x14(%ebx),%eax
56a483:	8d 73 d4             	lea    -0x2c(%ebx),%esi
56a486:	50                   	push   %eax
56a487:	56                   	push   %esi
56a488:	6a 00                	push   $0x0
56a48a:	57                   	push   %edi
56a48b:	e8 c0 26 fd ff       	call   0x53cb50
56a490:	83 c4 10             	add    $0x10,%esp
56a493:	89 06                	mov    %eax,(%esi)
56a495:	85 c0                	test   %eax,%eax
56a497:	0f 84 20 11 00 00    	je     0x56b5bd
56a49d:	8d 43 04             	lea    0x4(%ebx),%eax
56a4a0:	50                   	push   %eax
56a4a1:	ff 37                	push   (%edi)
56a4a3:	e8 88 71 fc ff       	call   0x531630
56a4a8:	8b 0e                	mov    (%esi),%ecx
56a4aa:	83 c4 08             	add    $0x8,%esp
56a4ad:	89 41 14             	mov    %eax,0x14(%ecx)
56a4b0:	e9 08 11 00 00       	jmp    0x56b5bd
56a4b5:	8d 73 ec             	lea    -0x14(%ebx),%esi
56a4b8:	6a 00                	push   $0x0
56a4ba:	eb cb                	jmp    0x56a487
56a4bc:	6a 00                	push   $0x0
56a4be:	6a 00                	push   $0x0
56a4c0:	8d 73 f8             	lea    -0x8(%ebx),%esi
56a4c3:	56                   	push   %esi
56a4c4:	57                   	push   %edi
56a4c5:	e8 56 55 fc ff       	call   0x52fa20
56a4ca:	83 c4 10             	add    $0x10,%esp
56a4cd:	89 06                	mov    %eax,(%esi)
56a4cf:	e9 e9 10 00 00       	jmp    0x56b5bd
56a4d4:	6a 00                	push   $0x0
56a4d6:	8d 43 f8             	lea    -0x8(%ebx),%eax
56a4d9:	50                   	push   %eax
56a4da:	8d 73 ec             	lea    -0x14(%ebx),%esi
56a4dd:	56                   	push   %esi
56a4de:	57                   	push   %edi
56a4df:	e8 3c 55 fc ff       	call   0x52fa20
56a4e4:	83 c4 10             	add    $0x10,%esp
56a4e7:	89 06                	mov    %eax,(%esi)
56a4e9:	e9 cf 10 00 00       	jmp    0x56b5bd
56a4ee:	8d 43 f8             	lea    -0x8(%ebx),%eax
56a4f1:	50                   	push   %eax
56a4f2:	8d 43 ec             	lea    -0x14(%ebx),%eax
56a4f5:	50                   	push   %eax
56a4f6:	8d 73 e0             	lea    -0x20(%ebx),%esi
56a4f9:	56                   	push   %esi
56a4fa:	57                   	push   %edi
56a4fb:	e8 20 55 fc ff       	call   0x52fa20
56a500:	83 c4 10             	add    $0x10,%esp
56a503:	89 06                	mov    %eax,(%esi)
56a505:	e9 b3 10 00 00       	jmp    0x56b5bd
56a50a:	8b 43 04             	mov    0x4(%ebx),%eax
56a50d:	89 43 ec             	mov    %eax,-0x14(%ebx)
56a510:	8b 43 08             	mov    0x8(%ebx),%eax
56a513:	89 43 f0             	mov    %eax,-0x10(%ebx)
56a516:	e9 a2 10 00 00       	jmp    0x56b5bd
56a51b:	c7 43 f8 00 00 00 00 	movl   $0x0,-0x8(%ebx)
56a522:	c7 43 fc 01 00 00 00 	movl   $0x1,-0x4(%ebx)
56a529:	e9 8f 10 00 00       	jmp    0x56b5bd
56a52e:	8b 43 f8             	mov    -0x8(%ebx),%eax
56a531:	89 43 e0             	mov    %eax,-0x20(%ebx)
56a534:	e9 84 10 00 00       	jmp    0x56b5bd
56a539:	ff 73 ec             	push   -0x14(%ebx)
56a53c:	ff 73 d4             	push   -0x2c(%ebx)
56a53f:	57                   	push   %edi
56a540:	e8 3b d0 fb ff       	call   0x527580
56a545:	ff 73 04             	push   0x4(%ebx)
56a548:	89 43 d4             	mov    %eax,-0x2c(%ebx)
56a54b:	ff 73 f8             	push   -0x8(%ebx)
56a54e:	50                   	push   %eax
56a54f:	e8 ac d5 fb ff       	call   0x527b00
56a554:	83 c4 18             	add    $0x18,%esp
56a557:	e9 61 10 00 00       	jmp    0x56b5bd
56a55c:	ff 73 ec             	push   -0x14(%ebx)
56a55f:	6a 00                	push   $0x0
56a561:	57                   	push   %edi
56a562:	e8 19 d0 fb ff       	call   0x527580
56a567:	ff 73 04             	push   0x4(%ebx)
56a56a:	89 43 ec             	mov    %eax,-0x14(%ebx)
56a56d:	ff 73 f8             	push   -0x8(%ebx)
56a570:	50                   	push   %eax
56a571:	e8 8a d5 fb ff       	call   0x527b00
56a576:	83 c4 18             	add    $0x18,%esp
56a579:	e9 3f 10 00 00       	jmp    0x56b5bd
56a57e:	c7 43 10 ff ff ff ff 	movl   $0xffffffff,0x10(%ebx)
56a585:	e9 33 10 00 00       	jmp    0x56b5bd
56a58a:	6a 00                	push   $0x0
56a58c:	ff 73 04             	push   0x4(%ebx)
56a58f:	68 92 00 00 00       	push   $0x92
56a594:	57                   	push   %edi
56a595:	e8 76 7a fc ff       	call   0x532010
56a59a:	83 c4 10             	add    $0x10,%esp
56a59d:	89 43 f8             	mov    %eax,-0x8(%ebx)
56a5a0:	e9 18 10 00 00       	jmp    0x56b5bd
56a5a5:	ff 73 04             	push   0x4(%ebx)
56a5a8:	ff 73 ec             	push   -0x14(%ebx)
56a5ab:	68 92 00 00 00       	push   $0x92
56a5b0:	57                   	push   %edi
56a5b1:	e8 5a 7a fc ff       	call   0x532010
56a5b6:	83 c4 10             	add    $0x10,%esp
56a5b9:	89 43 e0             	mov    %eax,-0x20(%ebx)
56a5bc:	e9 fc 0f 00 00       	jmp    0x56b5bd
56a5c1:	ff 73 ec             	push   -0x14(%ebx)
56a5c4:	ff 73 04             	push   0x4(%ebx)
56a5c7:	eb e2                	jmp    0x56a5ab
56a5c9:	8d 43 f8             	lea    -0x8(%ebx),%eax
56a5cc:	50                   	push   %eax
56a5cd:	ff 73 ec             	push   -0x14(%ebx)
56a5d0:	57                   	push   %edi
56a5d1:	e8 5a 2d fd ff       	call   0x53d330
56a5d6:	6a 00                	push   $0x0
56a5d8:	6a 00                	push   $0x0
56a5da:	ff 73 04             	push   0x4(%ebx)
56a5dd:	ff 73 ec             	push   -0x14(%ebx)
56a5e0:	57                   	push   %edi
56a5e1:	e8 da 73 fb ff       	call   0x5219c0
56a5e6:	83 c4 20             	add    $0x20,%esp
56a5e9:	e9 cf 0f 00 00       	jmp    0x56b5bd
56a5ee:	8d 43 e0             	lea    -0x20(%ebx),%eax
56a5f1:	50                   	push   %eax
56a5f2:	ff 73 d4             	push   -0x2c(%ebx)
56a5f5:	57                   	push   %edi
56a5f6:	e8 35 2d fd ff       	call   0x53d330
56a5fb:	68 f0 be 6b 00       	push   $0x6bbef0
56a600:	ff 73 f8             	push   -0x8(%ebx)
56a603:	57                   	push   %edi
56a604:	e8 f7 d1 fb ff       	call   0x527800
56a609:	6a 00                	push   $0x0
56a60b:	6a 00                	push   $0x0
56a60d:	6a 00                	push   $0x0
56a60f:	ff 73 c8             	push   -0x38(%ebx)
56a612:	ff 73 04             	push   0x4(%ebx)
56a615:	ff 73 f8             	push   -0x8(%ebx)