565060:	e8 cb 17 00 00       	call   0x566830
565065:	83 c4 0c             	add    $0xc,%esp
565068:	85 c0                	test   %eax,%eax
56506a:	0f 84 cc 00 00 00    	je     0x56513c
565070:	8b 06                	mov    (%esi),%eax
565072:	53                   	push   %ebx
565073:	55                   	push   %ebp
565074:	57                   	push   %edi
565075:	8b 80 8c 00 00 00    	mov    0x8c(%eax),%eax
56507b:	56                   	push   %esi
56507c:	ff d0                	call   *%eax
56507e:	83 c4 10             	add    $0x10,%esp
565081:	85 c0                	test   %eax,%eax
565083:	0f 84 b3 00 00 00    	je     0x56513c
565089:	55                   	push   %ebp
56508a:	57                   	push   %edi
56508b:	57                   	push   %edi
56508c:	e8 9f 17 00 00       	call   0x566830
565091:	83 c4 0c             	add    $0xc,%esp
565094:	85 c0                	test   %eax,%eax
565096:	0f 84 a0 00 00 00    	je     0x56513c
56509c:	ff 76 44             	push   0x44(%esi)
56509f:	57                   	push   %edi
5650a0:	57                   	push   %edi
5650a1:	e8 8a 17 00 00       	call   0x566830
5650a6:	83 c4 0c             	add    $0xc,%esp
5650a9:	85 c0                	test   %eax,%eax
5650ab:	0f 84 8b 00 00 00    	je     0x56513c
5650b1:	57                   	push   %edi
5650b2:	ff 74 24 14          	push   0x14(%esp)
5650b6:	ff 74 24 30          	push   0x30(%esp)
5650ba:	e8 71 17 00 00       	call   0x566830
5650bf:	83 c4 0c             	add    $0xc,%esp
5650c2:	85 c0                	test   %eax,%eax
5650c4:	74 76                	je     0x56513c
5650c6:	8b 06                	mov    (%esi),%eax
5650c8:	53                   	push   %ebx
5650c9:	55                   	push   %ebp
5650ca:	8b 6c 24 30          	mov    0x30(%esp),%ebp
5650ce:	8b 80 88 00 00 00    	mov    0x88(%eax),%eax
5650d4:	55                   	push   %ebp
5650d5:	55                   	push   %ebp
5650d6:	56                   	push   %esi
5650d7:	ff d0                	call   *%eax
5650d9:	83 c4 14             	add    $0x14,%esp
5650dc:	85 c0                	test   %eax,%eax
5650de:	74 5c                	je     0x56513c
5650e0:	57                   	push   %edi
5650e1:	55                   	push   %ebp
5650e2:	55                   	push   %ebp
5650e3:	e8 48 17 00 00       	call   0x566830
5650e8:	83 c4 0c             	add    $0xc,%esp
5650eb:	85 c0                	test   %eax,%eax
5650ed:	74 4d                	je     0x56513c
5650ef:	ff 74 24 14          	push   0x14(%esp)
5650f3:	55                   	push   %ebp
5650f4:	55                   	push   %ebp
5650f5:	e8 36 17 00 00       	call   0x566830
5650fa:	83 c4 0c             	add    $0xc,%esp
5650fd:	85 c0                	test   %eax,%eax
5650ff:	74 3b                	je     0x56513c
565101:	53                   	push   %ebx
565102:	55                   	push   %ebp
565103:	57                   	push   %edi
565104:	ff 74 24 44          	push   0x44(%esp)
565108:	56                   	push   %esi
565109:	e8 32 97 fa ff       	call   0x50e840
56510e:	83 c4 14             	add    $0x14,%esp
565111:	85 c0                	test   %eax,%eax
565113:	74 27                	je     0x56513c
565115:	c7 44 24 24 01 00 00 	movl   $0x1,0x24(%esp)
56511c:	00
56511d:	eb 1d                	jmp    0x56513c
56511f:	ff 74 24 38          	push   0x38(%esp)
565123:	56                   	push   %esi
565124:	e8 27 98 fa ff       	call   0x50e950
565129:	33 c9                	xor    %ecx,%ecx
56512b:	83 c4 08             	add    $0x8,%esp
56512e:	85 c0                	test   %eax,%eax
565130:	ba 01 00 00 00       	mov    $0x1,%edx
565135:	0f 45 ca             	cmovne %edx,%ecx
565138:	89 4c 24 24          	mov    %ecx,0x24(%esp)
56513c:	53                   	push   %ebx
56513d:	e8 8e 29 f8 ff       	call   0x4e7ad0
565142:	ff 74 24 30          	push   0x30(%esp)
565146:	e8 f5 29 f8 ff       	call   0x4e7b40
56514b:	8b 44 24 2c          	mov    0x2c(%esp),%eax
56514f:	83 c4 08             	add    $0x8,%esp
565152:	5f                   	pop    %edi
565153:	5d                   	pop    %ebp
565154:	5e                   	pop    %esi
565155:	5b                   	pop    %ebx
565156:	83 c4 20             	add    $0x20,%esp
565159:	c3                   	ret
56515a:	cc                   	int3
56515b:	cc                   	int3
56515c:	cc                   	int3
56515d:	cc                   	int3
56515e:	cc                   	int3
56515f:	cc                   	int3
565160:	ff 74 24 10          	push   0x10(%esp)
565164:	8b 44 24 10          	mov    0x10(%esp),%eax
565168:	50                   	push   %eax
565169:	50                   	push   %eax
56516a:	ff 74 24 14          	push   0x14(%esp)
56516e:	ff 74 24 14          	push   0x14(%esp)
565172:	e8 49 fc ff ff       	call   0x564dc0
565177:	83 c4 14             	add    $0x14,%esp
56517a:	c3                   	ret
56517b:	cc                   	int3
56517c:	cc                   	int3
56517d:	cc                   	int3
56517e:	cc                   	int3
56517f:	cc                   	int3
565180:	56                   	push   %esi
565181:	8b 74 24 0c          	mov    0xc(%esp),%esi
565185:	56                   	push   %esi
565186:	ff 74 24 0c          	push   0xc(%esp)
56518a:	e8 d1 93 fa ff       	call   0x50e560
56518f:	83 c4 08             	add    $0x8,%esp
565192:	85 c0                	test   %eax,%eax
565194:	75 38                	jne    0x5651ce
565196:	ff 76 0c             	push   0xc(%esi)
565199:	e8 c2 4b f7 ff       	call   0x4d9d60
56519e:	83 c4 04             	add    $0x4,%esp
5651a1:	85 c0                	test   %eax,%eax
5651a3:	75 29                	jne    0x5651ce
5651a5:	ff 74 24 10          	push   0x10(%esp)
5651a9:	56                   	push   %esi
5651aa:	ff 74 24 10          	push   0x10(%esp)
5651ae:	e8 8d 94 fa ff       	call   0x50e640
5651b3:	83 c4 0c             	add    $0xc,%esp
5651b6:	85 c0                	test   %eax,%eax
5651b8:	75 02                	jne    0x5651bc
5651ba:	5e                   	pop    %esi
5651bb:	c3                   	ret
5651bc:	8b 46 0c             	mov    0xc(%esi),%eax
5651bf:	50                   	push   %eax
5651c0:	ff 76 08             	push   0x8(%esi)
5651c3:	50                   	push   %eax
5651c4:	e8 67 16 00 00       	call   0x566830
5651c9:	83 c4 0c             	add    $0xc,%esp
5651cc:	5e                   	pop    %esi
5651cd:	c3                   	ret
5651ce:	b8 01 00 00 00       	mov    $0x1,%eax
5651d3:	5e                   	pop    %esi
5651d4:	c3                   	ret
5651d5:	cc                   	int3
5651d6:	cc                   	int3
5651d7:	cc                   	int3
5651d8:	cc                   	int3
5651d9:	cc                   	int3
5651da:	cc                   	int3
5651db:	cc                   	int3
5651dc:	cc                   	int3
5651dd:	cc                   	int3
5651de:	cc                   	int3
5651df:	cc                   	int3
5651e0:	b8 14 00 00 00       	mov    $0x14,%eax
5651e5:	e8 c6 c5 06 00       	call   0x5d17b0
5651ea:	53                   	push   %ebx
5651eb:	8b 5c 24 1c          	mov    0x1c(%esp),%ebx
5651ef:	55                   	push   %ebp
5651f0:	8b 6c 24 24          	mov    0x24(%esp),%ebp
5651f4:	55                   	push   %ebp
5651f5:	53                   	push   %ebx
5651f6:	c7 44 24 18 ff ff ff 	movl   $0xffffffff,0x18(%esp)
5651fd:	ff
5651fe:	c7 44 24 14 00 00 00 	movl   $0x0,0x14(%esp)
565205:	00
565206:	e8 55 93 fa ff       	call   0x50e560
56520b:	83 c4 08             	add    $0x8,%esp
56520e:	85 c0                	test   %eax,%eax
565210:	74 0b                	je     0x56521d
565212:	5d                   	pop    %ebp
565213:	b8 01 00 00 00       	mov    $0x1,%eax
565218:	5b                   	pop    %ebx
565219:	83 c4 14             	add    $0x14,%esp
56521c:	c3                   	ret
56521d:	83 7d 14 00          	cmpl   $0x0,0x14(%ebp)
565221:	8b 03                	mov    (%ebx),%eax
565223:	57                   	push   %edi
565224:	8b 88 88 00 00 00    	mov    0x88(%eax),%ecx
56522a:	8b 80 8c 00 00 00    	mov    0x8c(%eax),%eax
565230:	89 4c 24 0c          	mov    %ecx,0xc(%esp)
565234:	89 44 24 1c          	mov    %eax,0x1c(%esp)
565238:	0f 84 e7 00 00 00    	je     0x565325
56523e:	8b 7c 24 2c          	mov    0x2c(%esp),%edi
565242:	85 ff                	test   %edi,%edi
565244:	75 13                	jne    0x565259
565246:	e8 d5 2a f8 ff       	call   0x4e7d20
56524b:	89 44 24 10          	mov    %eax,0x10(%esp)
56524f:	8b f8                	mov    %eax,%edi
565251:	85 c0                	test   %eax,%eax
565253:	0f 84 cc 00 00 00    	je     0x565325
565259:	56                   	push   %esi
56525a:	57                   	push   %edi
56525b:	e8 b0 2b f8 ff       	call   0x4e7e10
565260:	57                   	push   %edi
565261:	e8 6a 29 f8 ff       	call   0x4e7bd0
565266:	57                   	push   %edi
565267:	89 44 24 28          	mov    %eax,0x28(%esp)
56526b:	e8 60 29 f8 ff       	call   0x4e7bd0
565270:	8b f0                	mov    %eax,%esi
565272:	83 c4 0c             	add    $0xc,%esp
565275:	85 f6                	test   %esi,%esi
565277:	0f 84 8a 00 00 00    	je     0x565307
56527d:	ff 73 44             	push   0x44(%ebx)
565280:	ff 75 08             	push   0x8(%ebp)
565283:	56                   	push   %esi
565284:	e8 a7 15 00 00       	call   0x566830
565289:	83 c4 0c             	add    $0xc,%esp
56528c:	85 c0                	test   %eax,%eax
56528e:	74 77                	je     0x565307
565290:	57                   	push   %edi
565291:	ff 75 08             	push   0x8(%ebp)
565294:	56                   	push   %esi
565295:	56                   	push   %esi
565296:	53                   	push   %ebx
565297:	ff 54 24 24          	call   *0x24(%esp)
56529b:	83 c4 14             	add    $0x14,%esp
56529e:	85 c0                	test   %eax,%eax
5652a0:	74 65                	je     0x565307
5652a2:	ff 75 0c             	push   0xc(%ebp)
5652a5:	56                   	push   %esi
5652a6:	56                   	push   %esi
5652a7:	e8 84 15 00 00       	call   0x566830
5652ac:	83 c4 0c             	add    $0xc,%esp
5652af:	85 c0                	test   %eax,%eax
5652b1:	74 54                	je     0x565307
5652b3:	57                   	push   %edi
5652b4:	ff 75 08             	push   0x8(%ebp)
5652b7:	56                   	push   %esi
5652b8:	56                   	push   %esi
5652b9:	53                   	push   %ebx
5652ba:	ff 54 24 24          	call   *0x24(%esp)
5652be:	83 c4 14             	add    $0x14,%esp
5652c1:	85 c0                	test   %eax,%eax
5652c3:	74 42                	je     0x565307
5652c5:	ff 73 48             	push   0x48(%ebx)
5652c8:	56                   	push   %esi
5652c9:	56                   	push   %esi
5652ca:	e8 61 15 00 00       	call   0x566830
5652cf:	83 c4 0c             	add    $0xc,%esp
5652d2:	85 c0                	test   %eax,%eax
5652d4:	74 31                	je     0x565307
5652d6:	57                   	push   %edi
5652d7:	ff 75 0c             	push   0xc(%ebp)
5652da:	8b 6c 24 24          	mov    0x24(%esp),%ebp
5652de:	55                   	push   %ebp
5652df:	53                   	push   %ebx
5652e0:	ff 54 24 30          	call   *0x30(%esp)
5652e4:	83 c4 10             	add    $0x10,%esp
5652e7:	85 c0                	test   %eax,%eax
5652e9:	74 1c                	je     0x565307
5652eb:	55                   	push   %ebp
5652ec:	56                   	push   %esi
5652ed:	56                   	push   %esi
5652ee:	e8 3d 15 00 00       	call   0x566830
5652f3:	83 c4 0c             	add    $0xc,%esp
5652f6:	85 c0                	test   %eax,%eax
5652f8:	74 0d                	je     0x565307
5652fa:	56                   	push   %esi
5652fb:	e8 60 4a f7 ff       	call   0x4d9d60
565300:	83 c4 04             	add    $0x4,%esp
565303:	89 44 24 18          	mov    %eax,0x18(%esp)
565307:	57                   	push   %edi
565308:	e8 c3 27 f8 ff       	call   0x4e7ad0
56530d:	ff 74 24 18          	push   0x18(%esp)
565311:	e8 2a 28 f8 ff       	call   0x4e7b40
565316:	8b 44 24 20          	mov    0x20(%esp),%eax
56531a:	83 c4 08             	add    $0x8,%esp
56531d:	5e                   	pop    %esi
56531e:	5f                   	pop    %edi
56531f:	5d                   	pop    %ebp
565320:	5b                   	pop    %ebx
565321:	83 c4 14             	add    $0x14,%esp
565324:	c3                   	ret
565325:	5f                   	pop    %edi
565326:	5d                   	pop    %ebp
565327:	83 c8 ff             	or     $0xffffffff,%eax
56532a:	5b                   	pop    %ebx
56532b:	83 c4 14             	add    $0x14,%esp
56532e:	c3                   	ret
56532f:	cc                   	int3
565330:	b8 18 00 00 00       	mov    $0x18,%eax
565335:	e8 76 c4 06 00       	call   0x5d17b0
56533a:	55                   	push   %ebp
56533b:	8b 6c 24 20          	mov    0x20(%esp),%ebp
56533f:	57                   	push   %edi
565340:	8b 7c 24 28          	mov    0x28(%esp),%edi
565344:	57                   	push   %edi
565345:	55                   	push   %ebp
565346:	c7 44 24 20 00 00 00 	movl   $0x0,0x20(%esp)
56534d:	00
56534e:	c7 44 24 10 ff ff ff 	movl   $0xffffffff,0x10(%esp)
565355:	ff
565356:	e8 05 92 fa ff       	call   0x50e560
56535b:	83 c4 08             	add    $0x8,%esp
56535e:	85 c0                	test   %eax,%eax
565360:	74 18                	je     0x56537a
565362:	ff 74 24 2c          	push   0x2c(%esp)
565366:	55                   	push   %ebp
565367:	e8 f4 91 fa ff       	call   0x50e560
56536c:	83 c4 08             	add    $0x8,%esp
56536f:	f7 d8                	neg    %eax
565371:	1b c0                	sbb    %eax,%eax
565373:	40                   	inc    %eax
565374:	5f                   	pop    %edi
565375:	5d                   	pop    %ebp
565376:	83 c4 18             	add    $0x18,%esp
565379:	c3                   	ret
56537a:	53                   	push   %ebx
56537b:	8b 5c 24 30          	mov    0x30(%esp),%ebx
56537f:	53                   	push   %ebx
565380:	55                   	push   %ebp
565381:	e8 da 91 fa ff       	call   0x50e560
565386:	83 c4 08             	add    $0x8,%esp
565389:	85 c0                	test   %eax,%eax
56538b:	75 35                	jne    0x5653c2
56538d:	39 47 14             	cmp    %eax,0x14(%edi)
565390:	74 3c                	je     0x5653ce
565392:	39 43 14             	cmp    %eax,0x14(%ebx)
565395:	74 37                	je     0x5653ce
565397:	ff 73 08             	push   0x8(%ebx)
56539a:	ff 77 08             	push   0x8(%edi)
56539d:	e8 6e 45 f7 ff       	call   0x4d9910
5653a2:	83 c4 08             	add    $0x8,%esp
5653a5:	85 c0                	test   %eax,%eax
5653a7:	75 19                	jne    0x5653c2
5653a9:	ff 73 0c             	push   0xc(%ebx)
5653ac:	ff 77 0c             	push   0xc(%edi)
5653af:	e8 5c 45 f7 ff       	call   0x4d9910
5653b4:	83 c4 08             	add    $0x8,%esp
5653b7:	85 c0                	test   %eax,%eax
5653b9:	75 07                	jne    0x5653c2
5653bb:	5b                   	pop    %ebx
5653bc:	5f                   	pop    %edi
5653bd:	5d                   	pop    %ebp
5653be:	83 c4 18             	add    $0x18,%esp
5653c1:	c3                   	ret
5653c2:	5b                   	pop    %ebx
5653c3:	5f                   	pop    %edi
5653c4:	b8 01 00 00 00       	mov    $0x1,%eax
5653c9:	5d                   	pop    %ebp
5653ca:	83 c4 18             	add    $0x18,%esp
5653cd:	c3                   	ret
5653ce:	56                   	push   %esi
5653cf:	8b 74 24 38          	mov    0x38(%esp),%esi
5653d3:	85 f6                	test   %esi,%esi