45e081:	8b 07                	mov    (%edi),%eax
45e083:	85 c0                	test   %eax,%eax
45e085:	0f 84 41 01 00 00    	je     0x45e1cc
45e08b:	50                   	push   %eax
45e08c:	8d 04 cd 01 00 00 00 	lea    0x1(,%ecx,8),%eax
45e093:	6a 00                	push   $0x0
45e095:	50                   	push   %eax
45e096:	e8 d5 1a 00 00       	call   0x45fb70
45e09b:	8b 45 c0             	mov    -0x40(%ebp),%eax
45e09e:	83 c4 0c             	add    $0xc,%esp
45e0a1:	8b 0f                	mov    (%edi),%ecx
45e0a3:	89 45 ec             	mov    %eax,-0x14(%ebp)
45e0a6:	8d 45 e8             	lea    -0x18(%ebp),%eax
45e0a9:	89 5d e8             	mov    %ebx,-0x18(%ebp)
45e0ac:	6a 08                	push   $0x8
45e0ae:	50                   	push   %eax
45e0af:	e8 cc ad ff ff       	call   0x458e80
45e0b4:	8b c6                	mov    %esi,%eax
45e0b6:	eb 16                	jmp    0x45e0ce
45e0b8:	53                   	push   %ebx
45e0b9:	56                   	push   %esi
45e0ba:	51                   	push   %ecx
45e0bb:	8b cf                	mov    %edi,%ecx
45e0bd:	e8 9e 14 00 00       	call   0x45f560
45e0c2:	8b f0                	mov    %eax,%esi
45e0c4:	85 f6                	test   %esi,%esi
45e0c6:	0f 85 00 01 00 00    	jne    0x45e1cc
45e0cc:	33 c0                	xor    %eax,%eax
45e0ce:	8b 4d f4             	mov    -0xc(%ebp),%ecx
45e0d1:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
45e0d8:	59                   	pop    %ecx
45e0d9:	5f                   	pop    %edi
45e0da:	5e                   	pop    %esi
45e0db:	5b                   	pop    %ebx
45e0dc:	8b 4d f0             	mov    -0x10(%ebp),%ecx
45e0df:	33 cd                	xor    %ebp,%ecx
45e0e1:	e8 40 39 17 00       	call   0x5d1a26
45e0e6:	8b e5                	mov    %ebp,%esp
45e0e8:	5d                   	pop    %ebp
45e0e9:	c3                   	ret
45e0ea:	8b 07                	mov    (%edi),%eax
45e0ec:	85 c0                	test   %eax,%eax
45e0ee:	74 13                	je     0x45e103
45e0f0:	50                   	push   %eax
45e0f1:	8d 04 cd 03 00 00 00 	lea    0x3(,%ecx,8),%eax
45e0f8:	6a 00                	push   $0x0
45e0fa:	50                   	push   %eax
45e0fb:	e8 70 1a 00 00       	call   0x45fb70
45e100:	83 c4 0c             	add    $0xc,%esp
45e103:	83 43 44 ff          	addl   $0xffffffff,0x44(%ebx)
45e107:	78 c3                	js     0x45e0cc
45e109:	ff 43 48             	incl   0x48(%ebx)
45e10c:	53                   	push   %ebx
45e10d:	56                   	push   %esi
45e10e:	57                   	push   %edi
45e10f:	e8 2c 0d 00 00       	call   0x45ee40
45e114:	8b 55 c0             	mov    -0x40(%ebp),%edx
45e117:	8b f0                	mov    %eax,%esi
45e119:	8b 4b 3c             	mov    0x3c(%ebx),%ecx
45e11c:	83 c4 0c             	add    $0xc,%esp
45e11f:	ff 4b 48             	decl   0x48(%ebx)
45e122:	ff 43 44             	incl   0x44(%ebx)
45e125:	8d 04 d5 03 00 00 00 	lea    0x3(,%edx,8),%eax
45e12c:	c7 43 3c 00 00 00 00 	movl   $0x0,0x3c(%ebx)
45e133:	3b c8                	cmp    %eax,%ecx
45e135:	75 95                	jne    0x45e0cc
45e137:	85 f6                	test   %esi,%esi
45e139:	74 91                	je     0x45e0cc
45e13b:	8b 07                	mov    (%edi),%eax
45e13d:	85 c0                	test   %eax,%eax
45e13f:	0f 84 87 00 00 00    	je     0x45e1cc
45e145:	50                   	push   %eax
45e146:	8d 04 d5 04 00 00 00 	lea    0x4(,%edx,8),%eax
45e14d:	6a 00                	push   $0x0
45e14f:	50                   	push   %eax
45e150:	e8 1b 1a 00 00       	call   0x45fb70
45e155:	83 c4 0c             	add    $0xc,%esp
45e158:	8b c6                	mov    %esi,%eax
45e15a:	e9 6f ff ff ff       	jmp    0x45e0ce
45e15f:	68 f6 02 00 00       	push   $0x2f6
45e164:	68 40 69 60 00       	push   $0x606940
45e169:	6a 03                	push   $0x3
45e16b:	8d 4d c4             	lea    -0x3c(%ebp),%ecx
45e16e:	e8 6d 71 01 00       	call   0x4752e0
45e173:	68 b0 69 60 00       	push   $0x6069b0
45e178:	8b c8                	mov    %eax,%ecx
45e17a:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
45e181:	e8 6a 77 01 00       	call   0x4758f0
45e186:	50                   	push   %eax
45e187:	8d 4d bf             	lea    -0x41(%ebp),%ecx
45e18a:	e8 f1 74 01 00       	call   0x475680
45e18f:	8d 4d c4             	lea    -0x3c(%ebp),%ecx
45e192:	e8 79 74 01 00       	call   0x475610
45e197:	8b c6                	mov    %esi,%eax
45e199:	e9 30 ff ff ff       	jmp    0x45e0ce
45e19e:	8b 1e                	mov    (%esi),%ebx
45e1a0:	83 c6 04             	add    $0x4,%esi
45e1a3:	8b 07                	mov    (%edi),%eax
45e1a5:	85 c0                	test   %eax,%eax
45e1a7:	74 23                	je     0x45e1cc
45e1a9:	50                   	push   %eax
45e1aa:	8d 04 cd 05 00 00 00 	lea    0x5(,%ecx,8),%eax
45e1b1:	6a 00                	push   $0x0
45e1b3:	50                   	push   %eax
45e1b4:	e8 b7 19 00 00       	call   0x45fb70
45e1b9:	8b 0f                	mov    (%edi),%ecx
45e1bb:	8d 45 c0             	lea    -0x40(%ebp),%eax
45e1be:	83 c4 0c             	add    $0xc,%esp
45e1c1:	89 5d c0             	mov    %ebx,-0x40(%ebp)
45e1c4:	6a 04                	push   $0x4
45e1c6:	50                   	push   %eax
45e1c7:	e8 b4 ac ff ff       	call   0x458e80
45e1cc:	8b c6                	mov    %esi,%eax
45e1ce:	e9 fb fe ff ff       	jmp    0x45e0ce
45e1d3:	90                   	nop
45e1d4:	2e e0 45             	loopne,pn 0x45e21c
45e1d7:	00 76 e0             	add    %dh,-0x20(%esi)
45e1da:	45                   	inc    %ebp
45e1db:	00 b8 e0 45 00 ea    	add    %bh,-0x15ffba20(%eax)
45e1e1:	e0 45                	loopne 0x45e228
45e1e3:	00 5f e1             	add    %bl,-0x1f(%edi)
45e1e6:	45                   	inc    %ebp
45e1e7:	00 9e e1 45 00 cc    	add    %bl,-0x33ffba1f(%esi)
45e1ed:	cc                   	int3
45e1ee:	cc                   	int3
45e1ef:	cc                   	int3
45e1f0:	55                   	push   %ebp
45e1f1:	8b ec                	mov    %esp,%ebp
45e1f3:	83 ec 10             	sub    $0x10,%esp
45e1f6:	8b 45 08             	mov    0x8(%ebp),%eax
45e1f9:	89 45 f8             	mov    %eax,-0x8(%ebp)
45e1fc:	8b 45 0c             	mov    0xc(%ebp),%eax
45e1ff:	89 45 fc             	mov    %eax,-0x4(%ebp)
45e202:	8d 45 fc             	lea    -0x4(%ebp),%eax
45e205:	57                   	push   %edi
45e206:	8b 7d 10             	mov    0x10(%ebp),%edi
45e209:	50                   	push   %eax
45e20a:	e8 d1 15 00 00       	call   0x45f7e0
45e20f:	8b c8                	mov    %eax,%ecx
45e211:	83 c4 04             	add    $0x4,%esp
45e214:	8b 45 fc             	mov    -0x4(%ebp),%eax
45e217:	89 4d f4             	mov    %ecx,-0xc(%ebp)
45e21a:	89 45 fc             	mov    %eax,-0x4(%ebp)
45e21d:	85 c0                	test   %eax,%eax
45e21f:	75 05                	jne    0x45e226
45e221:	5f                   	pop    %edi
45e222:	8b e5                	mov    %ebp,%esp
45e224:	5d                   	pop    %ebp
45e225:	c3                   	ret
45e226:	53                   	push   %ebx
45e227:	8b 5f 04             	mov    0x4(%edi),%ebx
45e22a:	2b d8                	sub    %eax,%ebx
45e22c:	83 c3 10             	add    $0x10,%ebx
45e22f:	56                   	push   %esi
45e230:	3b cb                	cmp    %ebx,%ecx
45e232:	0f 8e 97 00 00 00    	jle    0x45e2cf
45e238:	8b 4d f8             	mov    -0x8(%ebp),%ecx
45e23b:	8b f3                	mov    %ebx,%esi
45e23d:	c1 ee 02             	shr    $0x2,%esi
45e240:	e8 6b fd ff ff       	call   0x45dfb0
45e245:	8b 4d f8             	mov    -0x8(%ebp),%ecx
45e248:	03 c6                	add    %esi,%eax
45e24a:	50                   	push   %eax
45e24b:	e8 d0 f3 ff ff       	call   0x45d620
45e250:	8b 4d f8             	mov    -0x8(%ebp),%ecx
45e253:	8d 04 b5 00 00 00 00 	lea    0x0(,%esi,4),%eax
45e25a:	56                   	push   %esi
45e25b:	89 45 f0             	mov    %eax,-0x10(%ebp)
45e25e:	e8 bd ef ff ff       	call   0x45d220
45e263:	8d 0c b5 00 00 00 00 	lea    0x0(,%esi,4),%ecx
45e26a:	8b 75 fc             	mov    -0x4(%ebp),%esi
45e26d:	51                   	push   %ecx
45e26e:	56                   	push   %esi
45e26f:	50                   	push   %eax
45e270:	e8 5b 4b 17 00       	call   0x5d2dd0
45e275:	8b 45 f0             	mov    -0x10(%ebp),%eax
45e278:	83 c4 0c             	add    $0xc,%esp
45e27b:	29 45 f4             	sub    %eax,-0xc(%ebp)
45e27e:	83 7f 10 10          	cmpl   $0x10,0x10(%edi)
45e282:	0f 8e 95 00 00 00    	jle    0x45e31d
45e288:	6a ff                	push   $0xffffffff
45e28a:	6a 00                	push   $0x0
45e28c:	8b cf                	mov    %edi,%ecx
45e28e:	e8 cd 0f 00 00       	call   0x45f260
45e293:	8b 77 04             	mov    0x4(%edi),%esi
45e296:	8b d0                	mov    %eax,%edx
45e298:	85 d2                	test   %edx,%edx
45e29a:	74 78                	je     0x45e314
45e29c:	8b ca                	mov    %edx,%ecx
45e29e:	b8 00 00 00 00       	mov    $0x0,%eax
45e2a3:	2b ce                	sub    %esi,%ecx
45e2a5:	01 4f 10             	add    %ecx,0x10(%edi)
45e2a8:	8b 4d f4             	mov    -0xc(%ebp),%ecx
45e2ab:	0f 48 47 10          	cmovs  0x10(%edi),%eax
45e2af:	2b d3                	sub    %ebx,%edx
45e2b1:	03 c6                	add    %esi,%eax
45e2b3:	8b de                	mov    %esi,%ebx
45e2b5:	89 07                	mov    %eax,(%edi)
45e2b7:	8b 45 f0             	mov    -0x10(%ebp),%eax
45e2ba:	83 c0 10             	add    $0x10,%eax
45e2bd:	03 c2                	add    %edx,%eax
45e2bf:	2b d8                	sub    %eax,%ebx
45e2c1:	89 45 fc             	mov    %eax,-0x4(%ebp)
45e2c4:	83 c3 10             	add    $0x10,%ebx
45e2c7:	3b cb                	cmp    %ebx,%ecx
45e2c9:	0f 8f 69 ff ff ff    	jg     0x45e238
45e2cf:	8b 5d f8             	mov    -0x8(%ebp),%ebx
45e2d2:	8b f1                	mov    %ecx,%esi
45e2d4:	8b cb                	mov    %ebx,%ecx
45e2d6:	c1 ee 02             	shr    $0x2,%esi
45e2d9:	e8 d2 fc ff ff       	call   0x45dfb0
45e2de:	03 c6                	add    %esi,%eax
45e2e0:	8b cb                	mov    %ebx,%ecx
45e2e2:	50                   	push   %eax
45e2e3:	e8 38 f3 ff ff       	call   0x45d620
45e2e8:	56                   	push   %esi
45e2e9:	8b cb                	mov    %ebx,%ecx
45e2eb:	8d 3c b5 00 00 00 00 	lea    0x0(,%esi,4),%edi
45e2f2:	e8 29 ef ff ff       	call   0x45d220
45e2f7:	8b 75 fc             	mov    -0x4(%ebp),%esi
45e2fa:	57                   	push   %edi
45e2fb:	56                   	push   %esi
45e2fc:	50                   	push   %eax
45e2fd:	e8 ce 4a 17 00       	call   0x5d2dd0
45e302:	83 c4 0c             	add    $0xc,%esp
45e305:	39 7d f4             	cmp    %edi,-0xc(%ebp)
45e308:	75 13                	jne    0x45e31d
45e30a:	8d 04 37             	lea    (%edi,%esi,1),%eax
45e30d:	5e                   	pop    %esi
45e30e:	5b                   	pop    %ebx
45e30f:	5f                   	pop    %edi
45e310:	8b e5                	mov    %ebp,%esp
45e312:	5d                   	pop    %ebp
45e313:	c3                   	ret
45e314:	c7 47 3c 01 00 00 00 	movl   $0x1,0x3c(%edi)
45e31b:	89 37                	mov    %esi,(%edi)
45e31d:	5e                   	pop    %esi
45e31e:	5b                   	pop    %ebx
45e31f:	33 c0                	xor    %eax,%eax
45e321:	5f                   	pop    %edi
45e322:	8b e5                	mov    %ebp,%esp
45e324:	5d                   	pop    %ebp
45e325:	c3                   	ret
45e326:	cc                   	int3
45e327:	cc                   	int3
45e328:	cc                   	int3
45e329:	cc                   	int3
45e32a:	cc                   	int3
45e32b:	cc                   	int3
45e32c:	cc                   	int3
45e32d:	cc                   	int3
45e32e:	cc                   	int3
45e32f:	cc                   	int3
45e330:	55                   	push   %ebp
45e331:	8b ec                	mov    %esp,%ebp
45e333:	83 ec 10             	sub    $0x10,%esp
45e336:	8b 45 08             	mov    0x8(%ebp),%eax
45e339:	89 45 f8             	mov    %eax,-0x8(%ebp)
45e33c:	8b 45 0c             	mov    0xc(%ebp),%eax
45e33f:	89 45 fc             	mov    %eax,-0x4(%ebp)
45e342:	8d 45 fc             	lea    -0x4(%ebp),%eax
45e345:	57                   	push   %edi
45e346:	8b 7d 10             	mov    0x10(%ebp),%edi
45e349:	50                   	push   %eax
45e34a:	e8 91 14 00 00       	call   0x45f7e0
45e34f:	8b c8                	mov    %eax,%ecx
45e351:	83 c4 04             	add    $0x4,%esp
45e354:	8b 45 fc             	mov    -0x4(%ebp),%eax
45e357:	89 4d f4             	mov    %ecx,-0xc(%ebp)
45e35a:	89 45 fc             	mov    %eax,-0x4(%ebp)
45e35d:	85 c0                	test   %eax,%eax
45e35f:	75 05                	jne    0x45e366
45e361:	5f                   	pop    %edi
45e362:	8b e5                	mov    %ebp,%esp
45e364:	5d                   	pop    %ebp
45e365:	c3                   	ret
45e366:	53                   	push   %ebx
45e367:	8b 5f 04             	mov    0x4(%edi),%ebx
45e36a:	2b d8                	sub    %eax,%ebx
45e36c:	83 c3 10             	add    $0x10,%ebx
45e36f:	56                   	push   %esi
45e370:	3b cb                	cmp    %ebx,%ecx
45e372:	0f 8e 97 00 00 00    	jle    0x45e40f
45e378:	8b 4d f8             	mov    -0x8(%ebp),%ecx
45e37b:	8b f3                	mov    %ebx,%esi
45e37d:	c1 ee 03             	shr    $0x3,%esi
45e380:	e8 2b fc ff ff       	call   0x45dfb0
45e385:	8b 4d f8             	mov    -0x8(%ebp),%ecx
45e388:	03 c6                	add    %esi,%eax
45e38a:	50                   	push   %eax
45e38b:	e8 60 f3 ff ff       	call   0x45d6f0
45e390:	8b 4d f8             	mov    -0x8(%ebp),%ecx
45e393:	8d 04 f5 00 00 00 00 	lea    0x0(,%esi,8),%eax
45e39a:	56                   	push   %esi
45e39b:	89 45 f0             	mov    %eax,-0x10(%ebp)
45e39e:	e8 9d ee ff ff       	call   0x45d240
45e3a3:	8d 0c f5 00 00 00 00 	lea    0x0(,%esi,8),%ecx
45e3aa:	8b 75 fc             	mov    -0x4(%ebp),%esi
45e3ad:	51                   	push   %ecx
45e3ae:	56                   	push   %esi
45e3af:	50                   	push   %eax
45e3b0:	e8 1b 4a 17 00       	call   0x5d2dd0
45e3b5:	8b 45 f0             	mov    -0x10(%ebp),%eax
45e3b8:	83 c4 0c             	add    $0xc,%esp
45e3bb:	29 45 f4             	sub    %eax,-0xc(%ebp)
45e3be:	83 7f 10 10          	cmpl   $0x10,0x10(%edi)
45e3c2:	0f 8e 95 00 00 00    	jle    0x45e45d
45e3c8:	6a ff                	push   $0xffffffff
45e3ca:	6a 00                	push   $0x0
45e3cc:	8b cf                	mov    %edi,%ecx
45e3ce:	e8 8d 0e 00 00       	call   0x45f260
45e3d3:	8b 77 04             	mov    0x4(%edi),%esi
45e3d6:	8b d0                	mov    %eax,%edx
45e3d8:	85 d2                	test   %edx,%edx
45e3da:	74 78                	je     0x45e454
45e3dc:	8b ca                	mov    %edx,%ecx
45e3de:	b8 00 00 00 00       	mov    $0x0,%eax
45e3e3:	2b ce                	sub    %esi,%ecx
45e3e5:	01 4f 10             	add    %ecx,0x10(%edi)
45e3e8:	8b 4d f4             	mov    -0xc(%ebp),%ecx
45e3eb:	0f 48 47 10          	cmovs  0x10(%edi),%eax
45e3ef:	2b d3                	sub    %ebx,%edx
45e3f1:	03 c6                	add    %esi,%eax
45e3f3:	8b de                	mov    %esi,%ebx
45e3f5:	89 07                	mov    %eax,(%edi)
45e3f7:	8b 45 f0             	mov    -0x10(%ebp),%eax
45e3fa:	83 c0 10             	add    $0x10,%eax
45e3fd:	03 c2                	add    %edx,%eax
45e3ff:	2b d8                	sub    %eax,%ebx
45e401:	89 45 fc             	mov    %eax,-0x4(%ebp)
45e404:	83 c3 10             	add    $0x10,%ebx
45e407:	3b cb                	cmp    %ebx,%ecx
45e409:	0f 8f 69 ff ff ff    	jg     0x45e378
45e40f:	8b 5d f8             	mov    -0x8(%ebp),%ebx
45e412:	8b f1                	mov    %ecx,%esi
45e414:	8b cb                	mov    %ebx,%ecx
45e416:	c1 ee 03             	shr    $0x3,%esi
45e419:	e8 92 fb ff ff       	call   0x45dfb0
45e41e:	03 c6                	add    %esi,%eax
45e420:	8b cb                	mov    %ebx,%ecx
45e422:	50                   	push   %eax
45e423:	e8 c8 f2 ff ff       	call   0x45d6f0
45e428:	56                   	push   %esi
45e429:	8b cb                	mov    %ebx,%ecx
45e42b:	8d 3c f5 00 00 00 00 	lea    0x0(,%esi,8),%edi
45e432:	e8 09 ee ff ff       	call   0x45d240
45e437:	8b 75 fc             	mov    -0x4(%ebp),%esi
45e43a:	57                   	push   %edi
45e43b:	56                   	push   %esi
45e43c:	50                   	push   %eax