5a80ce:	85 ff                	test   %edi,%edi
5a80d0:	74 09                	je     0x5a80db
5a80d2:	57                   	push   %edi
5a80d3:	e8 b8 fc f2 ff       	call   0x4d7d90
5a80d8:	83 c4 04             	add    $0x4,%esp
5a80db:	5e                   	pop    %esi
5a80dc:	5f                   	pop    %edi
5a80dd:	8b c5                	mov    %ebp,%eax
5a80df:	5d                   	pop    %ebp
5a80e0:	5b                   	pop    %ebx
5a80e1:	59                   	pop    %ecx
5a80e2:	c3                   	ret
5a80e3:	5f                   	pop    %edi
5a80e4:	5d                   	pop    %ebp
5a80e5:	b8 01 00 00 00       	mov    $0x1,%eax
5a80ea:	5b                   	pop    %ebx
5a80eb:	59                   	pop    %ecx
5a80ec:	c3                   	ret
5a80ed:	cc                   	int3
5a80ee:	cc                   	int3
5a80ef:	cc                   	int3
5a80f0:	b8 14 00 00 00       	mov    $0x14,%eax
5a80f5:	e8 f6 93 03 00       	call   0x5e14f0
5a80fa:	55                   	push   %ebp
5a80fb:	8b 6c 24 20          	mov    0x20(%esp),%ebp
5a80ff:	c7 44 24 10 00 00 00 	movl   $0x0,0x10(%esp)
5a8106:	00
5a8107:	c7 44 24 04 00 00 00 	movl   $0x0,0x4(%esp)
5a810e:	00
5a810f:	85 ed                	test   %ebp,%ebp
5a8111:	75 08                	jne    0x5a811b
5a8113:	8d 45 01             	lea    0x1(%ebp),%eax
5a8116:	5d                   	pop    %ebp
5a8117:	83 c4 14             	add    $0x14,%esp
5a811a:	c3                   	ret
5a811b:	56                   	push   %esi
5a811c:	57                   	push   %edi
5a811d:	8b 7c 24 30          	mov    0x30(%esp),%edi
5a8121:	85 ff                	test   %edi,%edi
5a8123:	75 18                	jne    0x5a813d
5a8125:	e8 f6 fc f2 ff       	call   0x4d7e20
5a812a:	8b f0                	mov    %eax,%esi
5a812c:	89 74 24 18          	mov    %esi,0x18(%esp)
5a8130:	8b fe                	mov    %esi,%edi
5a8132:	85 f6                	test   %esi,%esi
5a8134:	75 07                	jne    0x5a813d
5a8136:	5f                   	pop    %edi
5a8137:	5e                   	pop    %esi
5a8138:	5d                   	pop    %ebp
5a8139:	83 c4 14             	add    $0x14,%esp
5a813c:	c3                   	ret
5a813d:	53                   	push   %ebx
5a813e:	57                   	push   %edi
5a813f:	e8 5c fd f2 ff       	call   0x4d7ea0
5a8144:	57                   	push   %edi
5a8145:	e8 76 fc f2 ff       	call   0x4d7dc0
5a814a:	57                   	push   %edi
5a814b:	8b d8                	mov    %eax,%ebx
5a814d:	e8 6e fc f2 ff       	call   0x4d7dc0
5a8152:	83 c4 0c             	add    $0xc,%esp
5a8155:	89 44 24 18          	mov    %eax,0x18(%esp)
5a8159:	85 db                	test   %ebx,%ebx
5a815b:	0f 84 3e 01 00 00    	je     0x5a829f
5a8161:	85 c0                	test   %eax,%eax
5a8163:	0f 84 36 01 00 00    	je     0x5a829f
5a8169:	68 f9 04 00 00       	push   $0x4f9
5a816e:	8d 04 ad 00 00 00 00 	lea    0x0(,%ebp,4),%eax
5a8175:	68 ac cf 6c 00       	push   $0x6ccfac
5a817a:	50                   	push   %eax
5a817b:	e8 30 80 ef ff       	call   0x4a01b0
5a8180:	8b c8                	mov    %eax,%ecx
5a8182:	83 c4 0c             	add    $0xc,%esp
5a8185:	89 4c 24 10          	mov    %ecx,0x10(%esp)
5a8189:	85 c9                	test   %ecx,%ecx
5a818b:	0f 84 0e 01 00 00    	je     0x5a829f
5a8191:	33 f6                	xor    %esi,%esi
5a8193:	85 ed                	test   %ebp,%ebp
5a8195:	74 19                	je     0x5a81b0
5a8197:	e8 74 b1 f0 ff       	call   0x4b3310
5a819c:	8b 4c 24 10          	mov    0x10(%esp),%ecx
5a81a0:	89 04 b1             	mov    %eax,(%ecx,%esi,4)
5a81a3:	85 c0                	test   %eax,%eax
5a81a5:	0f 84 f4 00 00 00    	je     0x5a829f
5a81ab:	46                   	inc    %esi
5a81ac:	3b f5                	cmp    %ebp,%esi
5a81ae:	72 e7                	jb     0x5a8197
5a81b0:	8b 44 24 30          	mov    0x30(%esp),%eax
5a81b4:	8b 74 24 28          	mov    0x28(%esp),%esi
5a81b8:	8b 00                	mov    (%eax),%eax
5a81ba:	83 78 30 00          	cmpl   $0x0,0x30(%eax)
5a81be:	74 0d                	je     0x5a81cd
5a81c0:	83 c0 2c             	add    $0x2c,%eax
5a81c3:	50                   	push   %eax
5a81c4:	ff 31                	push   (%ecx)
5a81c6:	e8 05 af f0 ff       	call   0x4b30d0
5a81cb:	eb 20                	jmp    0x5a81ed
5a81cd:	8b 06                	mov    (%esi),%eax
5a81cf:	8b 80 98 00 00 00    	mov    0x98(%eax),%eax
5a81d5:	85 c0                	test   %eax,%eax
5a81d7:	74 0b                	je     0x5a81e4
5a81d9:	57                   	push   %edi
5a81da:	ff 31                	push   (%ecx)
5a81dc:	56                   	push   %esi
5a81dd:	ff d0                	call   *%eax
5a81df:	83 c4 0c             	add    $0xc,%esp
5a81e2:	eb 0c                	jmp    0x5a81f0
5a81e4:	6a 01                	push   $0x1
5a81e6:	ff 31                	push   (%ecx)
5a81e8:	e8 03 b3 f0 ff       	call   0x4b34f0
5a81ed:	83 c4 08             	add    $0x8,%esp
5a81f0:	85 c0                	test   %eax,%eax
5a81f2:	0f 84 a7 00 00 00    	je     0x5a829f
5a81f8:	c7 44 24 14 01 00 00 	movl   $0x1,0x14(%esp)
5a81ff:	00
5a8200:	83 fd 01             	cmp    $0x1,%ebp
5a8203:	76 61                	jbe    0x5a8266
5a8205:	8b 44 24 10          	mov    0x10(%esp),%eax
5a8209:	8b 4c 24 30          	mov    0x30(%esp),%ecx
5a820d:	2b c8                	sub    %eax,%ecx
5a820f:	89 4c 24 20          	mov    %ecx,0x20(%esp)
5a8213:	8d 68 04             	lea    0x4(%eax),%ebp
5a8216:	8b 04 29             	mov    (%ecx,%ebp,1),%eax
5a8219:	83 78 30 00          	cmpl   $0x0,0x30(%eax)
5a821d:	74 1b                	je     0x5a823a
5a821f:	8b 0e                	mov    (%esi),%ecx
5a8221:	83 c0 2c             	add    $0x2c,%eax
5a8224:	57                   	push   %edi
5a8225:	50                   	push   %eax
5a8226:	ff 75 fc             	push   -0x4(%ebp)
5a8229:	8b 81 84 00 00 00    	mov    0x84(%ecx),%eax
5a822f:	ff 75 00             	push   0x0(%ebp)
5a8232:	56                   	push   %esi
5a8233:	ff d0                	call   *%eax
5a8235:	83 c4 14             	add    $0x14,%esp
5a8238:	eb 0e                	jmp    0x5a8248
5a823a:	ff 75 fc             	push   -0x4(%ebp)
5a823d:	ff 75 00             	push   0x0(%ebp)
5a8240:	e8 8b ae f0 ff       	call   0x4b30d0
5a8245:	83 c4 08             	add    $0x8,%esp
5a8248:	85 c0                	test   %eax,%eax
5a824a:	74 53                	je     0x5a829f
5a824c:	8b 4c 24 14          	mov    0x14(%esp),%ecx
5a8250:	83 c5 04             	add    $0x4,%ebp
5a8253:	41                   	inc    %ecx
5a8254:	3b 4c 24 2c          	cmp    0x2c(%esp),%ecx
5a8258:	89 4c 24 14          	mov    %ecx,0x14(%esp)
5a825c:	8b 4c 24 20          	mov    0x20(%esp),%ecx
5a8260:	72 b4                	jb     0x5a8216
5a8262:	8b 6c 24 2c          	mov    0x2c(%esp),%ebp
5a8266:	57                   	push   %edi
5a8267:	8d 46 48             	lea    0x48(%esi),%eax
5a826a:	50                   	push   %eax
5a826b:	8b 44 24 18          	mov    0x18(%esp),%eax
5a826f:	ff 74 a8 fc          	push   -0x4(%eax,%ebp,4)
5a8273:	53                   	push   %ebx
5a8274:	e8 17 10 f3 ff       	call   0x4d9290
5a8279:	83 c4 10             	add    $0x10,%esp
5a827c:	85 c0                	test   %eax,%eax
5a827e:	0f 85 78 00 00 00    	jne    0x5a82fc
5a8284:	68 25 05 00 00       	push   $0x525
5a8289:	68 ac cf 6c 00       	push   $0x6ccfac
5a828e:	6a 03                	push   $0x3
5a8290:	68 89 00 00 00       	push   $0x89
5a8295:	6a 10                	push   $0x10
5a8297:	e8 04 92 ef ff       	call   0x4a14a0
5a829c:	83 c4 14             	add    $0x14,%esp
5a829f:	33 ed                	xor    %ebp,%ebp
5a82a1:	57                   	push   %edi
5a82a2:	e8 a9 fa f2 ff       	call   0x4d7d50
5a82a7:	8b 44 24 20          	mov    0x20(%esp),%eax
5a82ab:	83 c4 04             	add    $0x4,%esp
5a82ae:	85 c0                	test   %eax,%eax
5a82b0:	74 09                	je     0x5a82bb
5a82b2:	50                   	push   %eax
5a82b3:	e8 d8 fa f2 ff       	call   0x4d7d90
5a82b8:	83 c4 04             	add    $0x4,%esp
5a82bb:	8b 4c 24 10          	mov    0x10(%esp),%ecx
5a82bf:	85 c9                	test   %ecx,%ecx
5a82c1:	74 2f                	je     0x5a82f2
5a82c3:	8b 5c 24 2c          	mov    0x2c(%esp),%ebx
5a82c7:	33 f6                	xor    %esi,%esi
5a82c9:	85 db                	test   %ebx,%ebx
5a82cb:	74 1c                	je     0x5a82e9
5a82cd:	0f 1f 00             	nopl   (%eax)
5a82d0:	8b 04 b1             	mov    (%ecx,%esi,4),%eax
5a82d3:	85 c0                	test   %eax,%eax
5a82d5:	74 12                	je     0x5a82e9
5a82d7:	50                   	push   %eax
5a82d8:	e8 93 aa f0 ff       	call   0x4b2d70
5a82dd:	8b 4c 24 14          	mov    0x14(%esp),%ecx
5a82e1:	46                   	inc    %esi
5a82e2:	83 c4 04             	add    $0x4,%esp
5a82e5:	3b f3                	cmp    %ebx,%esi
5a82e7:	72 e7                	jb     0x5a82d0
5a82e9:	51                   	push   %ecx
5a82ea:	e8 41 7e ef ff       	call   0x4a0130
5a82ef:	83 c4 04             	add    $0x4,%esp
5a82f2:	5b                   	pop    %ebx
5a82f3:	5f                   	pop    %edi
5a82f4:	5e                   	pop    %esi
5a82f5:	8b c5                	mov    %ebp,%eax
5a82f7:	5d                   	pop    %ebp
5a82f8:	83 c4 14             	add    $0x14,%esp
5a82fb:	c3                   	ret
5a82fc:	8b 06                	mov    (%esi),%eax
5a82fe:	8b 80 90 00 00 00    	mov    0x90(%eax),%eax
5a8304:	85 c0                	test   %eax,%eax
5a8306:	74 26                	je     0x5a832e
5a8308:	57                   	push   %edi
5a8309:	53                   	push   %ebx
5a830a:	53                   	push   %ebx
5a830b:	56                   	push   %esi
5a830c:	ff d0                	call   *%eax
5a830e:	83 c4 10             	add    $0x10,%esp
5a8311:	85 c0                	test   %eax,%eax
5a8313:	74 8a                	je     0x5a829f
5a8315:	8b 06                	mov    (%esi),%eax
5a8317:	57                   	push   %edi
5a8318:	53                   	push   %ebx
5a8319:	53                   	push   %ebx
5a831a:	8b 80 90 00 00 00    	mov    0x90(%eax),%eax
5a8320:	56                   	push   %esi
5a8321:	ff d0                	call   *%eax
5a8323:	83 c4 10             	add    $0x10,%esp
5a8326:	85 c0                	test   %eax,%eax
5a8328:	0f 84 71 ff ff ff    	je     0x5a829f
5a832e:	83 c5 ff             	add    $0xffffffff,%ebp
5a8331:	0f 84 8c 00 00 00    	je     0x5a83c3
5a8337:	8b 4c 24 10          	mov    0x10(%esp),%ecx
5a833b:	83 c1 fc             	add    $0xfffffffc,%ecx
5a833e:	8d 0c a9             	lea    (%ecx,%ebp,4),%ecx
5a8341:	89 4c 24 14          	mov    %ecx,0x14(%esp)
5a8345:	8b 44 24 30          	mov    0x30(%esp),%eax
5a8349:	8b 04 a8             	mov    (%eax,%ebp,4),%eax
5a834c:	83 78 30 00          	cmpl   $0x0,0x30(%eax)
5a8350:	74 65                	je     0x5a83b7
5a8352:	8b 06                	mov    (%esi),%eax
5a8354:	57                   	push   %edi
5a8355:	53                   	push   %ebx
5a8356:	ff 31                	push   (%ecx)
5a8358:	8b 80 84 00 00 00    	mov    0x84(%eax),%eax
5a835e:	ff 74 24 24          	push   0x24(%esp)
5a8362:	56                   	push   %esi
5a8363:	ff d0                	call   *%eax
5a8365:	83 c4 14             	add    $0x14,%esp
5a8368:	85 c0                	test   %eax,%eax
5a836a:	0f 84 2f ff ff ff    	je     0x5a829f
5a8370:	8b 44 24 30          	mov    0x30(%esp),%eax
5a8374:	8b 0e                	mov    (%esi),%ecx
5a8376:	57                   	push   %edi
5a8377:	8b 04 a8             	mov    (%eax,%ebp,4),%eax
5a837a:	83 c0 2c             	add    $0x2c,%eax
5a837d:	50                   	push   %eax
5a837e:	8b 81 84 00 00 00    	mov    0x84(%ecx),%eax
5a8384:	53                   	push   %ebx
5a8385:	53                   	push   %ebx
5a8386:	56                   	push   %esi
5a8387:	ff d0                	call   *%eax
5a8389:	83 c4 14             	add    $0x14,%esp
5a838c:	85 c0                	test   %eax,%eax
5a838e:	0f 84 0b ff ff ff    	je     0x5a829f
5a8394:	8b 44 24 30          	mov    0x30(%esp),%eax
5a8398:	ff 74 24 18          	push   0x18(%esp)
5a839c:	8b 04 a8             	mov    (%eax,%ebp,4),%eax
5a839f:	83 c0 2c             	add    $0x2c,%eax
5a83a2:	50                   	push   %eax
5a83a3:	e8 28 ad f0 ff       	call   0x4b30d0
5a83a8:	83 c4 08             	add    $0x8,%esp
5a83ab:	85 c0                	test   %eax,%eax
5a83ad:	0f 84 ec fe ff ff    	je     0x5a829f
5a83b3:	8b 4c 24 14          	mov    0x14(%esp),%ecx
5a83b7:	83 e9 04             	sub    $0x4,%ecx
5a83ba:	89 4c 24 14          	mov    %ecx,0x14(%esp)
5a83be:	83 ed 01             	sub    $0x1,%ebp
5a83c1:	75 82                	jne    0x5a8345
5a83c3:	8b 54 24 30          	mov    0x30(%esp),%edx
5a83c7:	8b 02                	mov    (%edx),%eax
5a83c9:	83 78 30 00          	cmpl   $0x0,0x30(%eax)
5a83cd:	74 19                	je     0x5a83e8
5a83cf:	83 c0 2c             	add    $0x2c,%eax
5a83d2:	53                   	push   %ebx
5a83d3:	50                   	push   %eax
5a83d4:	e8 f7 ac f0 ff       	call   0x4b30d0
5a83d9:	83 c4 08             	add    $0x8,%esp
5a83dc:	85 c0                	test   %eax,%eax
5a83de:	0f 84 bb fe ff ff    	je     0x5a829f
5a83e4:	8b 54 24 30          	mov    0x30(%esp),%edx
5a83e8:	8b 44 24 2c          	mov    0x2c(%esp),%eax
5a83ec:	33 c9                	xor    %ecx,%ecx
5a83ee:	89 4c 24 18          	mov    %ecx,0x18(%esp)
5a83f2:	85 c0                	test   %eax,%eax
5a83f4:	0f 84 d2 00 00 00    	je     0x5a84cc
5a83fa:	66 0f 1f 44 00 00    	nopw   0x0(%eax,%eax,1)
5a8400:	8b 2c 8a             	mov    (%edx,%ecx,4),%ebp
5a8403:	83 7d 30 00          	cmpl   $0x0,0x30(%ebp)
5a8407:	0f 84 b2 00 00 00    	je     0x5a84bf
5a840d:	8b 06                	mov    (%esi),%eax
5a840f:	8d 4d 2c             	lea    0x2c(%ebp),%ecx
5a8412:	57                   	push   %edi
5a8413:	51                   	push   %ecx
5a8414:	53                   	push   %ebx
5a8415:	8b 80 88 00 00 00    	mov    0x88(%eax),%eax
5a841b:	56                   	push   %esi
5a841c:	ff d0                	call   *%eax
5a841e:	83 c4 10             	add    $0x10,%esp
5a8421:	85 c0                	test   %eax,%eax
5a8423:	0f 84 76 fe ff ff    	je     0x5a829f
5a8429:	8b 0e                	mov    (%esi),%ecx
5a842b:	8d 45 04             	lea    0x4(%ebp),%eax
5a842e:	57                   	push   %edi
5a842f:	53                   	push   %ebx
5a8430:	50                   	push   %eax
5a8431:	50                   	push   %eax
5a8432:	8b 81 84 00 00 00    	mov    0x84(%ecx),%eax
5a8438:	56                   	push   %esi
5a8439:	ff d0                	call   *%eax
5a843b:	83 c4 14             	add    $0x14,%esp
5a843e:	85 c0                	test   %eax,%eax
5a8440:	0f 84 59 fe ff ff    	je     0x5a829f
5a8446:	8b 06                	mov    (%esi),%eax
5a8448:	8d 4d 2c             	lea    0x2c(%ebp),%ecx
5a844b:	57                   	push   %edi
5a844c:	51                   	push   %ecx
5a844d:	53                   	push   %ebx
5a844e:	8b 80 84 00 00 00    	mov    0x84(%eax),%eax
5a8454:	53                   	push   %ebx
5a8455:	56                   	push   %esi
5a8456:	ff d0                	call   *%eax
5a8458:	83 c4 14             	add    $0x14,%esp
5a845b:	85 c0                	test   %eax,%eax
5a845d:	0f 84 3c fe ff ff    	je     0x5a829f
5a8463:	8b 0e                	mov    (%esi),%ecx
5a8465:	8d 45 18             	lea    0x18(%ebp),%eax
5a8468:	57                   	push   %edi
5a8469:	53                   	push   %ebx
5a846a:	50                   	push   %eax
5a846b:	50                   	push   %eax
5a846c:	8b 81 84 00 00 00    	mov    0x84(%ecx),%eax
5a8472:	56                   	push   %esi
5a8473:	ff d0                	call   *%eax
5a8475:	83 c4 14             	add    $0x14,%esp
5a8478:	85 c0                	test   %eax,%eax
5a847a:	0f 84 1f fe ff ff    	je     0x5a829f
5a8480:	8b 06                	mov    (%esi),%eax
5a8482:	8b 88 98 00 00 00    	mov    0x98(%eax),%ecx
5a8488:	8d 45 2c             	lea    0x2c(%ebp),%eax
5a848b:	85 c9                	test   %ecx,%ecx
5a848d:	74 0a                	je     0x5a8499
5a848f:	57                   	push   %edi
5a8490:	50                   	push   %eax