5f90b5:	8b c1                	mov    %ecx,%eax
5f90b7:	99                   	cltd
5f90b8:	8b c8                	mov    %eax,%ecx
5f90ba:	89 55 f8             	mov    %edx,-0x8(%ebp)
5f90bd:	8b 45 f0             	mov    -0x10(%ebp),%eax
5f90c0:	99                   	cltd
5f90c1:	03 c8                	add    %eax,%ecx
5f90c3:	8b 45 f8             	mov    -0x8(%ebp),%eax
5f90c6:	89 4d f0             	mov    %ecx,-0x10(%ebp)
5f90c9:	13 c2                	adc    %edx,%eax
5f90cb:	8b 55 e4             	mov    -0x1c(%ebp),%edx
5f90ce:	89 45 f8             	mov    %eax,-0x8(%ebp)
5f90d1:	80 7c 1a 28 00       	cmpb   $0x0,0x28(%edx,%ebx,1)
5f90d6:	8b 5d f4             	mov    -0xc(%ebp),%ebx
5f90d9:	7c 14                	jl     0x5f90ef
5f90db:	ff 75 fc             	push   -0x4(%ebp)
5f90de:	53                   	push   %ebx
5f90df:	50                   	push   %eax
5f90e0:	51                   	push   %ecx
5f90e1:	e8 5a 8a fe ff       	call   0x5e1b40
5f90e6:	ff 75 fc             	push   -0x4(%ebp)
5f90e9:	53                   	push   %ebx
5f90ea:	e9 f8 00 00 00       	jmp    0x5f91e7
5f90ef:	6a 02                	push   $0x2
5f90f1:	57                   	push   %edi
5f90f2:	57                   	push   %edi
5f90f3:	56                   	push   %esi
5f90f4:	e8 a9 c7 00 00       	call   0x6058a2
5f90f9:	83 c4 10             	add    $0x10,%esp
5f90fc:	3b 45 0c             	cmp    0xc(%ebp),%eax
5f90ff:	75 4c                	jne    0x5f914d
5f9101:	3b 55 10             	cmp    0x10(%ebp),%edx
5f9104:	75 47                	jne    0x5f914d
5f9106:	8b 75 08             	mov    0x8(%ebp),%esi
5f9109:	ff 75 ec             	push   -0x14(%ebp)
5f910c:	8b 45 f0             	mov    -0x10(%ebp),%eax
5f910f:	8b 4e 04             	mov    0x4(%esi),%ecx
5f9112:	03 c1                	add    %ecx,%eax
5f9114:	50                   	push   %eax
5f9115:	51                   	push   %ecx
5f9116:	e8 83 02 00 00       	call   0x5f939e
5f911b:	8b d8                	mov    %eax,%ebx
5f911d:	83 c4 0c             	add    $0xc,%esp
5f9120:	03 5d f0             	add    -0x10(%ebp),%ebx
5f9123:	8b 46 0c             	mov    0xc(%esi),%eax
5f9126:	13 55 f8             	adc    -0x8(%ebp),%edx
5f9129:	90                   	nop
5f912a:	33 c9                	xor    %ecx,%ecx
5f912c:	c1 e8 05             	shr    $0x5,%eax
5f912f:	41                   	inc    %ecx
5f9130:	84 c1                	test   %al,%cl
5f9132:	0f 84 9c 00 00 00    	je     0x5f91d4
5f9138:	8a 45 ec             	mov    -0x14(%ebp),%al
5f913b:	3a c1                	cmp    %cl,%al
5f913d:	74 04                	je     0x5f9143
5f913f:	3c 02                	cmp    $0x2,%al
5f9141:	75 03                	jne    0x5f9146
5f9143:	6a 02                	push   $0x2
5f9145:	59                   	pop    %ecx
5f9146:	03 d9                	add    %ecx,%ebx
5f9148:	e9 85 00 00 00       	jmp    0x5f91d2
5f914d:	57                   	push   %edi
5f914e:	ff 75 10             	push   0x10(%ebp)
5f9151:	ff 75 0c             	push   0xc(%ebp)
5f9154:	56                   	push   %esi
5f9155:	e8 48 c7 00 00       	call   0x6058a2
5f915a:	23 c2                	and    %edx,%eax
5f915c:	83 c4 10             	add    $0x10,%esp
5f915f:	83 ca ff             	or     $0xffffffff,%edx
5f9162:	3b c2                	cmp    %edx,%eax
5f9164:	75 07                	jne    0x5f916d
5f9166:	8b c2                	mov    %edx,%eax
5f9168:	e9 93 00 00 00       	jmp    0x5f9200
5f916d:	39 7d f8             	cmp    %edi,-0x8(%ebp)
5f9170:	7f 2f                	jg     0x5f91a1
5f9172:	bb 00 02 00 00       	mov    $0x200,%ebx
5f9177:	7c 05                	jl     0x5f917e
5f9179:	39 5d f0             	cmp    %ebx,-0x10(%ebp)
5f917c:	77 23                	ja     0x5f91a1
5f917e:	8b 45 08             	mov    0x8(%ebp),%eax
5f9181:	8b 40 0c             	mov    0xc(%eax),%eax
5f9184:	90                   	nop
5f9185:	33 c9                	xor    %ecx,%ecx
5f9187:	c1 e8 06             	shr    $0x6,%eax
5f918a:	41                   	inc    %ecx
5f918b:	84 c1                	test   %al,%cl
5f918d:	74 12                	je     0x5f91a1
5f918f:	8b 45 08             	mov    0x8(%ebp),%eax
5f9192:	8b 40 0c             	mov    0xc(%eax),%eax
5f9195:	90                   	nop
5f9196:	c1 e8 08             	shr    $0x8,%eax
5f9199:	84 c1                	test   %al,%cl
5f919b:	75 04                	jne    0x5f91a1
5f919d:	8b d7                	mov    %edi,%edx
5f919f:	eb 09                	jmp    0x5f91aa
5f91a1:	8b 45 08             	mov    0x8(%ebp),%eax
5f91a4:	8b 40 18             	mov    0x18(%eax),%eax
5f91a7:	99                   	cltd
5f91a8:	8b d8                	mov    %eax,%ebx
5f91aa:	8b 4d e0             	mov    -0x20(%ebp),%ecx
5f91ad:	8b 45 e8             	mov    -0x18(%ebp),%eax
5f91b0:	8b 0c 8d b8 10 73 00 	mov    0x7310b8(,%ecx,4),%ecx
5f91b7:	f6 44 01 28 04       	testb  $0x4,0x28(%ecx,%eax,1)
5f91bc:	74 16                	je     0x5f91d4
5f91be:	8a 4d ec             	mov    -0x14(%ebp),%cl
5f91c1:	33 c0                	xor    %eax,%eax
5f91c3:	40                   	inc    %eax
5f91c4:	3a c8                	cmp    %al,%cl
5f91c6:	74 05                	je     0x5f91cd
5f91c8:	80 f9 02             	cmp    $0x2,%cl
5f91cb:	75 03                	jne    0x5f91d0
5f91cd:	6a 02                	push   $0x2
5f91cf:	58                   	pop    %eax
5f91d0:	03 d8                	add    %eax,%ebx
5f91d2:	13 d7                	adc    %edi,%edx
5f91d4:	ff 75 fc             	push   -0x4(%ebp)
5f91d7:	ff 75 f4             	push   -0xc(%ebp)
5f91da:	52                   	push   %edx
5f91db:	53                   	push   %ebx
5f91dc:	e8 5f 89 fe ff       	call   0x5e1b40
5f91e1:	ff 75 fc             	push   -0x4(%ebp)
5f91e4:	ff 75 f4             	push   -0xc(%ebp)
5f91e7:	ff 75 18             	push   0x18(%ebp)
5f91ea:	8b fa                	mov    %edx,%edi
5f91ec:	8b f0                	mov    %eax,%esi
5f91ee:	ff 75 14             	push   0x14(%ebp)
5f91f1:	e8 4a 89 fe ff       	call   0x5e1b40
5f91f6:	2b c6                	sub    %esi,%eax
5f91f8:	1b d7                	sbb    %edi,%edx
5f91fa:	03 45 0c             	add    0xc(%ebp),%eax
5f91fd:	13 55 10             	adc    0x10(%ebp),%edx
5f9200:	5f                   	pop    %edi
5f9201:	5e                   	pop    %esi
5f9202:	5b                   	pop    %ebx
5f9203:	c9                   	leave
5f9204:	c3                   	ret
5f9205:	8b ff                	mov    %edi,%edi
5f9207:	55                   	push   %ebp
5f9208:	8b ec                	mov    %esp,%ebp
5f920a:	b8 18 10 00 00       	mov    $0x1018,%eax
5f920f:	e8 dc 82 fe ff       	call   0x5e14f0
5f9214:	a1 d4 89 72 00       	mov    0x7289d4,%eax
5f9219:	33 c5                	xor    %ebp,%eax
5f921b:	89 45 fc             	mov    %eax,-0x4(%ebp)
5f921e:	53                   	push   %ebx
5f921f:	ff 75 08             	push   0x8(%ebp)
5f9222:	e8 81 65 00 00       	call   0x5ff7a8
5f9227:	59                   	pop    %ecx
5f9228:	8b 4d 08             	mov    0x8(%ebp),%ecx
5f922b:	8b d8                	mov    %eax,%ebx
5f922d:	83 79 08 00          	cmpl   $0x0,0x8(%ecx)
5f9231:	75 0b                	jne    0x5f923e
5f9233:	8b 45 0c             	mov    0xc(%ebp),%eax
5f9236:	8b 55 10             	mov    0x10(%ebp),%edx
5f9239:	e9 53 01 00 00       	jmp    0x5f9391
5f923e:	8b 01                	mov    (%ecx),%eax
5f9240:	2b 41 04             	sub    0x4(%ecx),%eax
5f9243:	56                   	push   %esi
5f9244:	57                   	push   %edi
5f9245:	6a 00                	push   $0x0
5f9247:	99                   	cltd
5f9248:	6a 02                	push   $0x2
5f924a:	52                   	push   %edx
5f924b:	50                   	push   %eax
5f924c:	e8 ef 88 fe ff       	call   0x5e1b40
5f9251:	8b cb                	mov    %ebx,%ecx
5f9253:	89 85 f8 ef ff ff    	mov    %eax,-0x1008(%ebp)
5f9259:	83 e1 3f             	and    $0x3f,%ecx
5f925c:	89 95 ec ef ff ff    	mov    %edx,-0x1014(%ebp)
5f9262:	8b f3                	mov    %ebx,%esi
5f9264:	6b f9 38             	imul   $0x38,%ecx,%edi
5f9267:	c1 fe 06             	sar    $0x6,%esi
5f926a:	6a 00                	push   $0x0
5f926c:	8b 0c b5 b8 10 73 00 	mov    0x7310b8(,%esi,4),%ecx
5f9273:	ff 74 0f 24          	push   0x24(%edi,%ecx,1)
5f9277:	ff 74 0f 20          	push   0x20(%edi,%ecx,1)
5f927b:	53                   	push   %ebx
5f927c:	e8 21 c6 00 00       	call   0x6058a2
5f9281:	8b 0c b5 b8 10 73 00 	mov    0x7310b8(,%esi,4),%ecx
5f9288:	83 c4 10             	add    $0x10,%esp
5f928b:	89 85 f4 ef ff ff    	mov    %eax,-0x100c(%ebp)
5f9291:	8b c2                	mov    %edx,%eax
5f9293:	8b 95 f4 ef ff ff    	mov    -0x100c(%ebp),%edx
5f9299:	89 85 e8 ef ff ff    	mov    %eax,-0x1018(%ebp)
5f929f:	3b 54 0f 20          	cmp    0x20(%edi,%ecx,1),%edx
5f92a3:	0f 85 e1 00 00 00    	jne    0x5f938a
5f92a9:	3b 44 0f 24          	cmp    0x24(%edi,%ecx,1),%eax
5f92ad:	0f 85 d7 00 00 00    	jne    0x5f938a
5f92b3:	6a 00                	push   $0x0
5f92b5:	8d 85 f0 ef ff ff    	lea    -0x1010(%ebp),%eax
5f92bb:	50                   	push   %eax
5f92bc:	68 00 10 00 00       	push   $0x1000
5f92c1:	8d 85 fc ef ff ff    	lea    -0x1004(%ebp),%eax
5f92c7:	50                   	push   %eax
5f92c8:	ff 74 0f 18          	push   0x18(%edi,%ecx,1)
5f92cc:	ff 15 ec 21 68 00    	call   *0x6821ec
5f92d2:	85 c0                	test   %eax,%eax
5f92d4:	0f 84 b0 00 00 00    	je     0x5f938a
5f92da:	6a 00                	push   $0x0
5f92dc:	ff 75 10             	push   0x10(%ebp)
5f92df:	ff 75 0c             	push   0xc(%ebp)
5f92e2:	53                   	push   %ebx
5f92e3:	e8 ba c5 00 00       	call   0x6058a2
5f92e8:	83 c4 10             	add    $0x10,%esp
5f92eb:	85 d2                	test   %edx,%edx
5f92ed:	0f 8c 97 00 00 00    	jl     0x5f938a
5f92f3:	7f 08                	jg     0x5f92fd
5f92f5:	85 c0                	test   %eax,%eax
5f92f7:	0f 82 8d 00 00 00    	jb     0x5f938a
5f92fd:	8b 9d ec ef ff ff    	mov    -0x1014(%ebp),%ebx
5f9303:	8b 85 f0 ef ff ff    	mov    -0x1010(%ebp),%eax
5f9309:	85 db                	test   %ebx,%ebx
5f930b:	7f 7d                	jg     0x5f938a
5f930d:	7c 08                	jl     0x5f9317
5f930f:	39 85 f8 ef ff ff    	cmp    %eax,-0x1008(%ebp)
5f9315:	77 73                	ja     0x5f938a
5f9317:	8d bd fc ef ff ff    	lea    -0x1004(%ebp),%edi
5f931d:	33 d2                	xor    %edx,%edx
5f931f:	03 f8                	add    %eax,%edi
5f9321:	8d 8d fc ef ff ff    	lea    -0x1004(%ebp),%ecx
5f9327:	33 f6                	xor    %esi,%esi
5f9329:	39 95 f8 ef ff ff    	cmp    %edx,-0x1008(%ebp)
5f932f:	75 04                	jne    0x5f9335
5f9331:	85 db                	test   %ebx,%ebx
5f9333:	74 3c                	je     0x5f9371
5f9335:	3b cf                	cmp    %edi,%ecx
5f9337:	73 38                	jae    0x5f9371
5f9339:	8a 01                	mov    (%ecx),%al
5f933b:	3c 0d                	cmp    $0xd,%al
5f933d:	75 13                	jne    0x5f9352
5f933f:	8d 47 ff             	lea    -0x1(%edi),%eax
5f9342:	3b c8                	cmp    %eax,%ecx
5f9344:	73 18                	jae    0x5f935e
5f9346:	8d 41 01             	lea    0x1(%ecx),%eax
5f9349:	80 38 0a             	cmpb   $0xa,(%eax)
5f934c:	75 10                	jne    0x5f935e
5f934e:	8b c8                	mov    %eax,%ecx
5f9350:	eb 0c                	jmp    0x5f935e
5f9352:	0f b6 c0             	movzbl %al,%eax
5f9355:	0f be 80 48 8c 72 00 	movsbl 0x728c48(%eax),%eax
5f935c:	03 c8                	add    %eax,%ecx
5f935e:	83 c6 01             	add    $0x1,%esi
5f9361:	83 d2 00             	adc    $0x0,%edx
5f9364:	41                   	inc    %ecx
5f9365:	3b b5 f8 ef ff ff    	cmp    -0x1008(%ebp),%esi
5f936b:	75 c8                	jne    0x5f9335
5f936d:	3b d3                	cmp    %ebx,%edx
5f936f:	75 c4                	jne    0x5f9335
5f9371:	8d 85 fc ef ff ff    	lea    -0x1004(%ebp),%eax
5f9377:	2b c8                	sub    %eax,%ecx
5f9379:	8b c1                	mov    %ecx,%eax
5f937b:	99                   	cltd
5f937c:	03 85 f4 ef ff ff    	add    -0x100c(%ebp),%eax
5f9382:	13 95 e8 ef ff ff    	adc    -0x1018(%ebp),%edx
5f9388:	eb 05                	jmp    0x5f938f
5f938a:	83 ca ff             	or     $0xffffffff,%edx
5f938d:	8b c2                	mov    %edx,%eax
5f938f:	5f                   	pop    %edi
5f9390:	5e                   	pop    %esi
5f9391:	8b 4d fc             	mov    -0x4(%ebp),%ecx
5f9394:	33 cd                	xor    %ebp,%ecx
5f9396:	5b                   	pop    %ebx
5f9397:	e8 3e 81 fe ff       	call   0x5e14da
5f939c:	c9                   	leave
5f939d:	c3                   	ret
5f939e:	8b ff                	mov    %edi,%edi
5f93a0:	55                   	push   %ebp
5f93a1:	8b ec                	mov    %esp,%ebp
5f93a3:	8a 45 10             	mov    0x10(%ebp),%al
5f93a6:	53                   	push   %ebx
5f93a7:	56                   	push   %esi
5f93a8:	57                   	push   %edi
5f93a9:	3c 01                	cmp    $0x1,%al
5f93ab:	74 32                	je     0x5f93df
5f93ad:	3c 02                	cmp    $0x2,%al
5f93af:	74 2e                	je     0x5f93df
5f93b1:	8b 4d 08             	mov    0x8(%ebp),%ecx
5f93b4:	33 f6                	xor    %esi,%esi
5f93b6:	8b 45 0c             	mov    0xc(%ebp),%eax
5f93b9:	33 d2                	xor    %edx,%edx
5f93bb:	33 db                	xor    %ebx,%ebx
5f93bd:	2b c1                	sub    %ecx,%eax
5f93bf:	39 4d 0c             	cmp    %ecx,0xc(%ebp)
5f93c2:	1b ff                	sbb    %edi,%edi
5f93c4:	f7 d7                	not    %edi
5f93c6:	23 f8                	and    %eax,%edi
5f93c8:	74 11                	je     0x5f93db
5f93ca:	80 39 0a             	cmpb   $0xa,(%ecx)
5f93cd:	75 06                	jne    0x5f93d5
5f93cf:	83 c6 01             	add    $0x1,%esi
5f93d2:	83 d2 00             	adc    $0x0,%edx
5f93d5:	41                   	inc    %ecx
5f93d6:	43                   	inc    %ebx
5f93d7:	3b df                	cmp    %edi,%ebx
5f93d9:	75 ef                	jne    0x5f93ca
5f93db:	8b c6                	mov    %esi,%eax
5f93dd:	eb 38                	jmp    0x5f9417
5f93df:	8b 75 08             	mov    0x8(%ebp),%esi
5f93e2:	33 c9                	xor    %ecx,%ecx
5f93e4:	8b 45 0c             	mov    0xc(%ebp),%eax
5f93e7:	33 d2                	xor    %edx,%edx
5f93e9:	2b c6                	sub    %esi,%eax
5f93eb:	33 db                	xor    %ebx,%ebx
5f93ed:	40                   	inc    %eax
5f93ee:	d1 e8                	shr    $1,%eax
5f93f0:	39 75 0c             	cmp    %esi,0xc(%ebp)
5f93f3:	1b ff                	sbb    %edi,%edi
5f93f5:	f7 d7                	not    %edi
5f93f7:	23 f8                	and    %eax,%edi
5f93f9:	74 14                	je     0x5f940f
5f93fb:	66 83 3e 0a          	cmpw   $0xa,(%esi)
5f93ff:	75 06                	jne    0x5f9407
5f9401:	83 c1 01             	add    $0x1,%ecx
5f9404:	83 d2 00             	adc    $0x0,%edx
5f9407:	83 c6 02             	add    $0x2,%esi
5f940a:	43                   	inc    %ebx
5f940b:	3b df                	cmp    %edi,%ebx
5f940d:	75 ec                	jne    0x5f93fb
5f940f:	0f a4 ca 01          	shld   $0x1,%ecx,%edx
5f9413:	03 c9                	add    %ecx,%ecx
5f9415:	8b c1                	mov    %ecx,%eax
5f9417:	5f                   	pop    %edi
5f9418:	5e                   	pop    %esi
5f9419:	5b                   	pop    %ebx
5f941a:	5d                   	pop    %ebp
5f941b:	c3                   	ret
5f941c:	8b ff                	mov    %edi,%edi
5f941e:	55                   	push   %ebp
5f941f:	8b ec                	mov    %esp,%ebp
5f9421:	5d                   	pop    %ebp
5f9422:	e9 f0 f9 ff ff       	jmp    0x5f8e17
5f9427:	8b ff                	mov    %edi,%edi
5f9429:	55                   	push   %ebp
5f942a:	8b ec                	mov    %esp,%ebp
5f942c:	5d                   	pop    %ebp
5f942d:	e9 90 fa ff ff       	jmp    0x5f8ec2
5f9432:	8b ff                	mov    %edi,%edi
5f9434:	55                   	push   %ebp
5f9435:	8b ec                	mov    %esp,%ebp
5f9437:	5d                   	pop    %ebp
5f9438:	e9 69 f9 ff ff       	jmp    0x5f8da6
5f943d:	8b ff                	mov    %edi,%edi
5f943f:	55                   	push   %ebp
5f9440:	8b ec                	mov    %esp,%ebp
5f9442:	81 ec 10 03 00 00    	sub    $0x310,%esp
5f9448:	a1 d4 89 72 00       	mov    0x7289d4,%eax
5f944d:	33 c5                	xor    %ebp,%eax
5f944f:	89 45 fc             	mov    %eax,-0x4(%ebp)
5f9452:	8b 45 08             	mov    0x8(%ebp),%eax
5f9455:	56                   	push   %esi