89b022:	74 03                	je     0x89b027
89b024:	8b 45 e0             	mov    -0x20(%ebp),%eax
89b027:	40                   	inc    %eax
89b028:	89 45 a8             	mov    %eax,-0x58(%ebp)
89b02b:	89 45 c8             	mov    %eax,-0x38(%ebp)
89b02e:	8b 03                	mov    (%ebx),%eax
89b030:	8b b0 54 03 00 00    	mov    0x354(%eax),%esi
89b036:	8b ce                	mov    %esi,%ecx
89b038:	e8 28 16 b9 ff       	call   0x42c665
89b03d:	8b cb                	mov    %ebx,%ecx
89b03f:	ff d6                	call   *%esi
89b041:	8b 0b                	mov    (%ebx),%ecx
89b043:	8b f8                	mov    %eax,%edi
89b045:	8b b1 58 03 00 00    	mov    0x358(%ecx),%esi
89b04b:	8b ce                	mov    %esi,%ecx
89b04d:	e8 13 16 b9 ff       	call   0x42c665
89b052:	8b cb                	mov    %ebx,%ecx
89b054:	ff d6                	call   *%esi
89b056:	83 65 90 00          	andl   $0x0,-0x70(%ebp)
89b05a:	83 65 8c 00          	andl   $0x0,-0x74(%ebp)
89b05e:	83 bb 14 0d 00 00 00 	cmpl   $0x0,0xd14(%ebx)
89b065:	89 85 7c ff ff ff    	mov    %eax,-0x84(%ebp)
89b06b:	89 7d 80             	mov    %edi,-0x80(%ebp)
89b06e:	0f 84 bf 00 00 00    	je     0x89b133
89b074:	8b 03                	mov    (%ebx),%eax
89b076:	8b b0 70 01 00 00    	mov    0x170(%eax),%esi
89b07c:	8b ce                	mov    %esi,%ecx
89b07e:	e8 e2 15 b9 ff       	call   0x42c665
89b083:	8b cb                	mov    %ebx,%ecx
89b085:	ff d6                	call   *%esi
89b087:	85 c0                	test   %eax,%eax
89b089:	0f 85 a4 00 00 00    	jne    0x89b133
89b08f:	39 05 c8 d2 d7 00    	cmp    %eax,0xd7d2c8
89b095:	0f 85 98 00 00 00    	jne    0x89b133
89b09b:	8b 8b 14 0d 00 00    	mov    0xd14(%ebx),%ecx
89b0a1:	81 c1 10 01 00 00    	add    $0x110,%ecx
89b0a7:	e8 30 ef b8 ff       	call   0x429fdc
89b0ac:	8b 83 14 0d 00 00    	mov    0xd14(%ebx),%eax
89b0b2:	8b 88 fc 00 00 00    	mov    0xfc(%eax),%ecx
89b0b8:	83 a0 fc 00 00 00 00 	andl   $0x0,0xfc(%eax)
89b0bf:	8b 45 bc             	mov    -0x44(%ebp),%eax
89b0c2:	89 4d a0             	mov    %ecx,-0x60(%ebp)
89b0c5:	85 c0                	test   %eax,%eax
89b0c7:	74 08                	je     0x89b0d1
89b0c9:	8b 4d ec             	mov    -0x14(%ebp),%ecx
89b0cc:	2b 4d e4             	sub    -0x1c(%ebp),%ecx
89b0cf:	eb 03                	jmp    0x89b0d4
89b0d1:	8b 4d 80             	mov    -0x80(%ebp),%ecx
89b0d4:	85 c0                	test   %eax,%eax
89b0d6:	74 08                	je     0x89b0e0
89b0d8:	8b 85 7c ff ff ff    	mov    -0x84(%ebp),%eax
89b0de:	eb 06                	jmp    0x89b0e6
89b0e0:	8b 45 e8             	mov    -0x18(%ebp),%eax
89b0e3:	2b 45 e0             	sub    -0x20(%ebp),%eax
89b0e6:	ff b5 78 ff ff ff    	push   -0x88(%ebp)
89b0ec:	8b bb 14 0d 00 00    	mov    0xd14(%ebx),%edi
89b0f2:	89 45 84             	mov    %eax,-0x7c(%ebp)
89b0f5:	8d 45 84             	lea    -0x7c(%ebp),%eax
89b0f8:	50                   	push   %eax
89b0f9:	89 4d 88             	mov    %ecx,-0x78(%ebp)
89b0fc:	8d 85 58 ff ff ff    	lea    -0xa8(%ebp),%eax
89b102:	8b 37                	mov    (%edi),%esi
89b104:	50                   	push   %eax
89b105:	8d 85 6c ff ff ff    	lea    -0x94(%ebp),%eax
89b10b:	50                   	push   %eax
89b10c:	8b 4e 1c             	mov    0x1c(%esi),%ecx
89b10f:	e8 51 15 b9 ff       	call   0x42c665
89b114:	8b cf                	mov    %edi,%ecx
89b116:	ff 56 1c             	call   *0x1c(%esi)
89b119:	8b 08                	mov    (%eax),%ecx
89b11b:	8b 40 04             	mov    0x4(%eax),%eax
89b11e:	89 45 8c             	mov    %eax,-0x74(%ebp)
89b121:	8b 83 14 0d 00 00    	mov    0xd14(%ebx),%eax
89b127:	89 4d 90             	mov    %ecx,-0x70(%ebp)
89b12a:	8b 4d a0             	mov    -0x60(%ebp),%ecx
89b12d:	89 88 fc 00 00 00    	mov    %ecx,0xfc(%eax)
89b133:	83 65 9c 00          	andl   $0x0,-0x64(%ebp)
89b137:	8b 83 40 0c 00 00    	mov    0xc40(%ebx),%eax
89b13d:	83 65 c4 00          	andl   $0x0,-0x3c(%ebp)
89b141:	89 85 70 ff ff ff    	mov    %eax,-0x90(%ebp)
89b147:	85 c0                	test   %eax,%eax
89b149:	0f 84 8a 02 00 00    	je     0x89b3d9
89b14f:	8d 8b 3c 0c 00 00    	lea    0xc3c(%ebx),%ecx
89b155:	89 45 a0             	mov    %eax,-0x60(%ebp)
89b158:	8d 85 70 ff ff ff    	lea    -0x90(%ebp),%eax
89b15e:	50                   	push   %eax
89b15f:	e8 62 bf b7 ff       	call   0x4170c6
89b164:	8b 38                	mov    (%eax),%edi
89b166:	89 7d cc             	mov    %edi,-0x34(%ebp)
89b169:	85 ff                	test   %edi,%edi
89b16b:	0f 84 68 02 00 00    	je     0x89b3d9
89b171:	ff b5 78 ff ff ff    	push   -0x88(%ebp)
89b177:	8b 37                	mov    (%edi),%esi
89b179:	8d 85 7c ff ff ff    	lea    -0x84(%ebp),%eax
89b17f:	50                   	push   %eax
89b180:	8d 85 58 ff ff ff    	lea    -0xa8(%ebp),%eax
89b186:	c7 45 c0 01 00 00 00 	movl   $0x1,-0x40(%ebp)
89b18d:	50                   	push   %eax
89b18e:	8b 4e 1c             	mov    0x1c(%esi),%ecx
89b191:	8d 85 50 ff ff ff    	lea    -0xb0(%ebp),%eax
89b197:	50                   	push   %eax
89b198:	e8 c8 14 b9 ff       	call   0x42c665
89b19d:	8b cf                	mov    %edi,%ecx
89b19f:	ff 56 1c             	call   *0x1c(%esi)
89b1a2:	83 7f 18 00          	cmpl   $0x0,0x18(%edi)
89b1a6:	8b 7d bc             	mov    -0x44(%ebp),%edi
89b1a9:	8b 30                	mov    (%eax),%esi
89b1ab:	8b 50 04             	mov    0x4(%eax),%edx
89b1ae:	74 07                	je     0x89b1b7
89b1b0:	85 ff                	test   %edi,%edi
89b1b2:	74 03                	je     0x89b1b7
89b1b4:	8b 55 80             	mov    -0x80(%ebp),%edx
89b1b7:	8b 45 cc             	mov    -0x34(%ebp),%eax
89b1ba:	8b 4d c8             	mov    -0x38(%ebp),%ecx
89b1bd:	f6 40 24 01          	testb  $0x1,0x24(%eax)
89b1c1:	74 1b                	je     0x89b1de
89b1c3:	3b 4d a8             	cmp    -0x58(%ebp),%ecx
89b1c6:	74 0f                	je     0x89b1d7
89b1c8:	83 7d 9c 00          	cmpl   $0x0,-0x64(%ebp)
89b1cc:	75 09                	jne    0x89b1d7
89b1ce:	c7 45 9c 01 00 00 00 	movl   $0x1,-0x64(%ebp)
89b1d5:	eb 07                	jmp    0x89b1de
89b1d7:	33 d2                	xor    %edx,%edx
89b1d9:	33 f6                	xor    %esi,%esi
89b1db:	21 55 c0             	and    %edx,-0x40(%ebp)
89b1de:	89 4d 88             	mov    %ecx,-0x78(%ebp)
89b1e1:	85 ff                	test   %edi,%edi
89b1e3:	74 18                	je     0x89b1fd
89b1e5:	89 4d ac             	mov    %ecx,-0x54(%ebp)
89b1e8:	03 ce                	add    %esi,%ecx
89b1ea:	89 4d c8             	mov    %ecx,-0x38(%ebp)
89b1ed:	89 4d b4             	mov    %ecx,-0x4c(%ebp)
89b1f0:	8b 4d 98             	mov    -0x68(%ebp),%ecx
89b1f3:	89 4d b0             	mov    %ecx,-0x50(%ebp)
89b1f6:	03 ca                	add    %edx,%ecx
89b1f8:	01 75 c4             	add    %esi,-0x3c(%ebp)
89b1fb:	eb 16                	jmp    0x89b213
89b1fd:	8b 45 e0             	mov    -0x20(%ebp),%eax
89b200:	89 45 ac             	mov    %eax,-0x54(%ebp)
89b203:	03 c6                	add    %esi,%eax
89b205:	89 4d b0             	mov    %ecx,-0x50(%ebp)
89b208:	03 ca                	add    %edx,%ecx
89b20a:	89 45 b4             	mov    %eax,-0x4c(%ebp)
89b20d:	8b 45 cc             	mov    -0x34(%ebp),%eax
89b210:	89 4d c8             	mov    %ecx,-0x38(%ebp)
89b213:	8b 93 14 0d 00 00    	mov    0xd14(%ebx),%edx
89b219:	89 4d b8             	mov    %ecx,-0x48(%ebp)
89b21c:	8b 8d 70 ff ff ff    	mov    -0x90(%ebp),%ecx
89b222:	89 4d a4             	mov    %ecx,-0x5c(%ebp)
89b225:	85 d2                	test   %edx,%edx
89b227:	74 66                	je     0x89b28f
89b229:	3b c2                	cmp    %edx,%eax
89b22b:	74 62                	je     0x89b28f
89b22d:	8b 03                	mov    (%ebx),%eax
89b22f:	8b b0 70 01 00 00    	mov    0x170(%eax),%esi
89b235:	8b ce                	mov    %esi,%ecx
89b237:	e8 29 14 b9 ff       	call   0x42c665
89b23c:	8b cb                	mov    %ebx,%ecx
89b23e:	ff d6                	call   *%esi
89b240:	85 c0                	test   %eax,%eax
89b242:	75 4b                	jne    0x89b28f
89b244:	39 05 c8 d2 d7 00    	cmp    %eax,0xd7d2c8
89b24a:	75 43                	jne    0x89b28f
89b24c:	8b 8b 14 0d 00 00    	mov    0xd14(%ebx),%ecx
89b252:	8b 55 90             	mov    -0x70(%ebp),%edx
89b255:	8b 75 8c             	mov    -0x74(%ebp),%esi
89b258:	39 81 e8 00 00 00    	cmp    %eax,0xe8(%ecx)
89b25e:	7f 19                	jg     0x89b279
89b260:	8b 45 a4             	mov    -0x5c(%ebp),%eax
89b263:	85 c0                	test   %eax,%eax
89b265:	74 12                	je     0x89b279
89b267:	39 48 08             	cmp    %ecx,0x8(%eax)
89b26a:	75 0d                	jne    0x89b279
89b26c:	83 b9 1c 01 00 00 00 	cmpl   $0x0,0x11c(%ecx)
89b273:	75 04                	jne    0x89b279
89b275:	33 d2                	xor    %edx,%edx
89b277:	33 f6                	xor    %esi,%esi
89b279:	85 ff                	test   %edi,%edi
89b27b:	0f 84 2c 01 00 00    	je     0x89b3ad
89b281:	8b 45 94             	mov    -0x6c(%ebp),%eax
89b284:	2b c2                	sub    %edx,%eax
89b286:	39 45 b4             	cmp    %eax,-0x4c(%ebp)
89b289:	0f 8f 2c 01 00 00    	jg     0x89b3bb
89b28f:	8b 75 cc             	mov    -0x34(%ebp),%esi
89b292:	ff 75 c0             	push   -0x40(%ebp)
89b295:	8b ce                	mov    %esi,%ecx
89b297:	e8 8b a7 b8 ff       	call   0x425a27
89b29c:	83 ec 10             	sub    $0x10,%esp
89b29f:	8d 75 ac             	lea    -0x54(%ebp),%esi
89b2a2:	8b fc                	mov    %esp,%edi
89b2a4:	a5                   	movsl  %ds:(%esi),%es:(%edi)
89b2a5:	a5                   	movsl  %ds:(%esi),%es:(%edi)
89b2a6:	a5                   	movsl  %ds:(%esi),%es:(%edi)
89b2a7:	a5                   	movsl  %ds:(%esi),%es:(%edi)
89b2a8:	8b 75 cc             	mov    -0x34(%ebp),%esi
89b2ab:	8b ce                	mov    %esi,%ecx
89b2ad:	e8 22 c9 b7 ff       	call   0x417bd4
89b2b2:	83 7d c0 00          	cmpl   $0x0,-0x40(%ebp)
89b2b6:	74 09                	je     0x89b2c1
89b2b8:	8b 46 24             	mov    0x24(%esi),%eax
89b2bb:	83 e0 01             	and    $0x1,%eax
89b2be:	89 45 9c             	mov    %eax,-0x64(%ebp)
89b2c1:	83 7e 10 00          	cmpl   $0x0,0x10(%esi)
89b2c5:	8b 45 a4             	mov    -0x5c(%ebp),%eax
89b2c8:	75 0e                	jne    0x89b2d8
89b2ca:	8d 8b 3c 0c 00 00    	lea    0xc3c(%ebx),%ecx
89b2d0:	85 c0                	test   %eax,%eax
89b2d2:	0f 85 7d fe ff ff    	jne    0x89b155
89b2d8:	83 7d bc 00          	cmpl   $0x0,-0x44(%ebp)
89b2dc:	0f 84 65 fe ff ff    	je     0x89b147
89b2e2:	8b 45 94             	mov    -0x6c(%ebp),%eax
89b2e5:	2b 45 c4             	sub    -0x3c(%ebp),%eax
89b2e8:	2b 45 a8             	sub    -0x58(%ebp),%eax
89b2eb:	8b 0b                	mov    (%ebx),%ecx
89b2ed:	99                   	cltd
89b2ee:	2b c2                	sub    %edx,%eax
89b2f0:	8b f8                	mov    %eax,%edi
89b2f2:	8b b1 70 01 00 00    	mov    0x170(%ecx),%esi
89b2f8:	8b ce                	mov    %esi,%ecx
89b2fa:	d1 ff                	sar    $1,%edi
89b2fc:	89 7d c0             	mov    %edi,-0x40(%ebp)
89b2ff:	e8 61 13 b9 ff       	call   0x42c665
89b304:	8b cb                	mov    %ebx,%ecx
89b306:	ff d6                	call   *%esi
89b308:	85 c0                	test   %eax,%eax
89b30a:	0f 84 82 00 00 00    	je     0x89b392
89b310:	85 ff                	test   %edi,%edi
89b312:	7e 7e                	jle    0x89b392
89b314:	83 bb 88 0b 00 00 00 	cmpl   $0x0,0xb88(%ebx)
89b31b:	74 75                	je     0x89b392
89b31d:	8b 55 a0             	mov    -0x60(%ebp),%edx
89b320:	8b ca                	mov    %edx,%ecx
89b322:	89 4d c4             	mov    %ecx,-0x3c(%ebp)
89b325:	85 d2                	test   %edx,%edx
89b327:	74 69                	je     0x89b392
89b329:	33 c0                	xor    %eax,%eax
89b32b:	3b ca                	cmp    %edx,%ecx
89b32d:	8d 8b 3c 0c 00 00    	lea    0xc3c(%ebx),%ecx
89b333:	0f 94 c0             	sete   %al
89b336:	89 45 88             	mov    %eax,-0x78(%ebp)
89b339:	8d 45 c4             	lea    -0x3c(%ebp),%eax
89b33c:	50                   	push   %eax
89b33d:	e8 34 1a ba ff       	call   0x43cd76
89b342:	8b 00                	mov    (%eax),%eax
89b344:	89 45 c8             	mov    %eax,-0x38(%ebp)
89b347:	85 c0                	test   %eax,%eax
89b349:	0f 84 c6 fc ff ff    	je     0x89b015
89b34f:	83 78 10 00          	cmpl   $0x0,0x10(%eax)
89b353:	74 06                	je     0x89b35b
89b355:	83 7d 88 00          	cmpl   $0x0,-0x78(%ebp)
89b359:	74 37                	je     0x89b392
89b35b:	8d 70 54             	lea    0x54(%eax),%esi
89b35e:	8d 7d d0             	lea    -0x30(%ebp),%edi
89b361:	a5                   	movsl  %ds:(%esi),%es:(%edi)
89b362:	8d 45 d0             	lea    -0x30(%ebp),%eax
89b365:	6a 00                	push   $0x0
89b367:	ff 75 c0             	push   -0x40(%ebp)
89b36a:	a5                   	movsl  %ds:(%esi),%es:(%edi)
89b36b:	50                   	push   %eax
89b36c:	a5                   	movsl  %ds:(%esi),%es:(%edi)
89b36d:	a5                   	movsl  %ds:(%esi),%es:(%edi)
89b36e:	ff 15 4c 40 d8 00    	call   *0xd8404c
89b374:	8b 4d c8             	mov    -0x38(%ebp),%ecx
89b377:	8d 75 d0             	lea    -0x30(%ebp),%esi
89b37a:	83 ec 10             	sub    $0x10,%esp
89b37d:	8b fc                	mov    %esp,%edi
89b37f:	a5                   	movsl  %ds:(%esi),%es:(%edi)
89b380:	a5                   	movsl  %ds:(%esi),%es:(%edi)
89b381:	a5                   	movsl  %ds:(%esi),%es:(%edi)
89b382:	a5                   	movsl  %ds:(%esi),%es:(%edi)
89b383:	e8 4c c8 b7 ff       	call   0x417bd4
89b388:	8b 4d c4             	mov    -0x3c(%ebp),%ecx
89b38b:	8b 55 a0             	mov    -0x60(%ebp),%edx
89b38e:	85 c9                	test   %ecx,%ecx
89b390:	75 97                	jne    0x89b329
89b392:	8b 45 a8             	mov    -0x58(%ebp),%eax
89b395:	83 65 c4 00          	andl   $0x0,-0x3c(%ebp)
89b399:	89 45 c8             	mov    %eax,-0x38(%ebp)
89b39c:	8b 45 80             	mov    -0x80(%ebp),%eax
89b39f:	83 c0 05             	add    $0x5,%eax
89b3a2:	01 45 98             	add    %eax,-0x68(%ebp)
89b3a5:	8b 45 a4             	mov    -0x5c(%ebp),%eax
89b3a8:	e9 9a fd ff ff       	jmp    0x89b147
89b3ad:	8b 45 ec             	mov    -0x14(%ebp),%eax
89b3b0:	2b c6                	sub    %esi,%eax
89b3b2:	39 45 b8             	cmp    %eax,-0x48(%ebp)
89b3b5:	0f 8e d4 fe ff ff    	jle    0x89b28f
89b3bb:	8b 45 88             	mov    -0x78(%ebp),%eax
89b3be:	81 c1 10 01 00 00    	add    $0x110,%ecx
89b3c4:	8b 75 cc             	mov    -0x34(%ebp),%esi
89b3c7:	83 65 c0 00          	andl   $0x0,-0x40(%ebp)
89b3cb:	56                   	push   %esi
89b3cc:	89 45 c8             	mov    %eax,-0x38(%ebp)
89b3cf:	e8 ce b3 b7 ff       	call   0x4167a2
89b3d4:	e9 b9 fe ff ff       	jmp    0x89b292
89b3d9:	8b 83 14 0d 00 00    	mov    0xd14(%ebx),%eax
89b3df:	85 c0                	test   %eax,%eax
89b3e1:	0f 84 ac 00 00 00    	je     0x89b493
89b3e7:	83 b8 e8 00 00 00 00 	cmpl   $0x0,0xe8(%eax)
89b3ee:	8d 75 e0             	lea    -0x20(%ebp),%esi
89b3f1:	8d 7d ac             	lea    -0x54(%ebp),%edi
89b3f4:	a5                   	movsl  %ds:(%esi),%es:(%edi)
89b3f5:	a5                   	movsl  %ds:(%esi),%es:(%edi)
89b3f6:	a5                   	movsl  %ds:(%esi),%es:(%edi)
89b3f7:	a5                   	movsl  %ds:(%esi),%es:(%edi)
89b3f8:	7f 09                	jg     0x89b403
89b3fa:	83 b8 1c 01 00 00 00 	cmpl   $0x0,0x11c(%eax)
89b401:	74 5c                	je     0x89b45f
89b403:	8b 03                	mov    (%ebx),%eax
89b405:	8b b0 70 01 00 00    	mov    0x170(%eax),%esi
89b40b:	8b ce                	mov    %esi,%ecx
89b40d:	e8 53 12 b9 ff       	call   0x42c665
89b412:	8b cb                	mov    %ebx,%ecx
89b414:	ff d6                	call   *%esi
89b416:	85 c0                	test   %eax,%eax
89b418:	75 45                	jne    0x89b45f
89b41a:	39 05 c8 d2 d7 00    	cmp    %eax,0xd7d2c8
89b420:	75 3d                	jne    0x89b45f
89b422:	39 45 bc             	cmp    %eax,-0x44(%ebp)
89b425:	74 10                	je     0x89b437
89b427:	8b 45 94             	mov    -0x6c(%ebp),%eax
89b42a:	48                   	dec    %eax
89b42b:	89 45 b4             	mov    %eax,-0x4c(%ebp)
89b42e:	2b 45 90             	sub    -0x70(%ebp),%eax
89b431:	40                   	inc    %eax
89b432:	89 45 ac             	mov    %eax,-0x54(%ebp)
89b435:	eb 0d                	jmp    0x89b444
89b437:	8b 45 b8             	mov    -0x48(%ebp),%eax
89b43a:	48                   	dec    %eax
89b43b:	89 45 b8             	mov    %eax,-0x48(%ebp)
89b43e:	2b 45 8c             	sub    -0x74(%ebp),%eax
89b441:	89 45 b0             	mov    %eax,-0x50(%ebp)
89b444:	8b 8b 14 0d 00 00    	mov    0xd14(%ebx),%ecx
89b44a:	8d 75 ac             	lea    -0x54(%ebp),%esi
89b44d:	83 ec 10             	sub    $0x10,%esp
89b450:	8b fc                	mov    %esp,%edi
89b452:	a5                   	movsl  %ds:(%esi),%es:(%edi)
89b453:	a5                   	movsl  %ds:(%esi),%es:(%edi)
89b454:	a5                   	movsl  %ds:(%esi),%es:(%edi)
89b455:	a5                   	movsl  %ds:(%esi),%es:(%edi)
89b456:	e8 79 c7 b7 ff       	call   0x417bd4
89b45b:	6a 01                	push   $0x1
89b45d:	eb 29                	jmp    0x89b488
89b45f:	83 65 ac 00          	andl   $0x0,-0x54(%ebp)
89b463:	8d 75 ac             	lea    -0x54(%ebp),%esi
89b466:	83 65 b0 00          	andl   $0x0,-0x50(%ebp)
89b46a:	83 ec 10             	sub    $0x10,%esp
89b46d:	83 65 b4 00          	andl   $0x0,-0x4c(%ebp)
89b471:	8b fc                	mov    %esp,%edi
89b473:	83 65 b8 00          	andl   $0x0,-0x48(%ebp)