43bfff:	75 0d                	jne    0x43c00e
43c001:	85 c9                	test   %ecx,%ecx
43c003:	74 09                	je     0x43c00e
43c005:	c6 85 73 fe ff ff 01 	movb   $0x1,-0x18d(%ebp)
43c00c:	eb 19                	jmp    0x43c027
43c00e:	8b 95 5c fe ff ff    	mov    -0x1a4(%ebp),%edx
43c014:	ff 85 74 fe ff ff    	incl   -0x18c(%ebp)
43c01a:	e8 65 f3 ff ff       	call   0x43b384
43c01f:	8b d8                	mov    %eax,%ebx
43c021:	89 9d 6c fe ff ff    	mov    %ebx,-0x194(%ebp)
43c027:	83 bd 28 fe ff ff 00 	cmpl   $0x0,-0x1d8(%ebp)
43c02e:	0f 84 3c 01 00 00    	je     0x43c170
43c034:	80 bd 73 fe ff ff 00 	cmpb   $0x0,-0x18d(%ebp)
43c03b:	0f 85 f8 00 00 00    	jne    0x43c139
43c041:	83 bd 4c fe ff ff 78 	cmpl   $0x78,-0x1b4(%ebp)
43c048:	74 5d                	je     0x43c0a7
43c04a:	83 bd 4c fe ff ff 70 	cmpl   $0x70,-0x1b4(%ebp)
43c051:	74 54                	je     0x43c0a7
43c053:	0f b6 c3             	movzbl %bl,%eax
43c056:	50                   	push   %eax
43c057:	e8 50 7c 00 00       	call   0x443cac
43c05c:	59                   	pop    %ecx
43c05d:	85 c0                	test   %eax,%eax
43c05f:	0f 84 bb 00 00 00    	je     0x43c120
43c065:	83 bd 4c fe ff ff 6f 	cmpl   $0x6f,-0x1b4(%ebp)
43c06c:	75 1e                	jne    0x43c08c
43c06e:	83 fb 38             	cmp    $0x38,%ebx
43c071:	0f 8d a9 00 00 00    	jge    0x43c120
43c077:	8b b5 38 fe ff ff    	mov    -0x1c8(%ebp),%esi
43c07d:	8b bd 3c fe ff ff    	mov    -0x1c4(%ebp),%edi
43c083:	0f a4 f7 03          	shld   $0x3,%esi,%edi
43c087:	c1 e6 03             	shl    $0x3,%esi
43c08a:	eb 4b                	jmp    0x43c0d7
43c08c:	6a 00                	push   $0x0
43c08e:	6a 0a                	push   $0xa
43c090:	ff b5 3c fe ff ff    	push   -0x1c4(%ebp)
43c096:	ff b5 38 fe ff ff    	push   -0x1c8(%ebp)
43c09c:	e8 3f 5b 00 00       	call   0x441be0
43c0a1:	8b f0                	mov    %eax,%esi
43c0a3:	8b fa                	mov    %edx,%edi
43c0a5:	eb 30                	jmp    0x43c0d7
43c0a7:	0f b6 c3             	movzbl %bl,%eax
43c0aa:	50                   	push   %eax
43c0ab:	e8 80 7c 00 00       	call   0x443d30
43c0b0:	59                   	pop    %ecx
43c0b1:	85 c0                	test   %eax,%eax
43c0b3:	74 6b                	je     0x43c120
43c0b5:	8b b5 38 fe ff ff    	mov    -0x1c8(%ebp),%esi
43c0bb:	8b bd 3c fe ff ff    	mov    -0x1c4(%ebp),%edi
43c0c1:	0f a4 f7 04          	shld   $0x4,%esi,%edi
43c0c5:	53                   	push   %ebx
43c0c6:	c1 e6 04             	shl    $0x4,%esi
43c0c9:	e8 96 f2 ff ff       	call   0x43b364
43c0ce:	8b d8                	mov    %eax,%ebx
43c0d0:	59                   	pop    %ecx
43c0d1:	89 9d 6c fe ff ff    	mov    %ebx,-0x194(%ebp)
43c0d7:	ff 85 54 fe ff ff    	incl   -0x1ac(%ebp)
43c0dd:	8d 43 d0             	lea    -0x30(%ebx),%eax
43c0e0:	99                   	cltd
43c0e1:	03 f0                	add    %eax,%esi
43c0e3:	13 fa                	adc    %edx,%edi
43c0e5:	83 bd 48 fe ff ff 00 	cmpl   $0x0,-0x1b8(%ebp)
43c0ec:	89 b5 38 fe ff ff    	mov    %esi,-0x1c8(%ebp)
43c0f2:	89 bd 3c fe ff ff    	mov    %edi,-0x1c4(%ebp)
43c0f8:	74 08                	je     0x43c102
43c0fa:	ff 8d 64 fe ff ff    	decl   -0x19c(%ebp)
43c100:	74 37                	je     0x43c139
43c102:	8b 95 5c fe ff ff    	mov    -0x1a4(%ebp),%edx
43c108:	ff 85 74 fe ff ff    	incl   -0x18c(%ebp)
43c10e:	e8 71 f2 ff ff       	call   0x43b384
43c113:	8b d8                	mov    %eax,%ebx
43c115:	89 9d 6c fe ff ff    	mov    %ebx,-0x194(%ebp)
43c11b:	e9 21 ff ff ff       	jmp    0x43c041
43c120:	ff 8d 74 fe ff ff    	decl   -0x18c(%ebp)
43c126:	83 fb ff             	cmp    $0xffffffff,%ebx
43c129:	74 0e                	je     0x43c139
43c12b:	ff b5 5c fe ff ff    	push   -0x1a4(%ebp)
43c131:	53                   	push   %ebx
43c132:	e8 dd 7f 00 00       	call   0x444114
43c137:	59                   	pop    %ecx
43c138:	59                   	pop    %ecx
43c139:	80 bd 59 fe ff ff 00 	cmpb   $0x0,-0x1a7(%ebp)
43c140:	8b bd 1c fe ff ff    	mov    -0x1e4(%ebp),%edi
43c146:	0f 84 ec 00 00 00    	je     0x43c238
43c14c:	8b 85 38 fe ff ff    	mov    -0x1c8(%ebp),%eax
43c152:	8b 8d 3c fe ff ff    	mov    -0x1c4(%ebp),%ecx
43c158:	f7 d8                	neg    %eax
43c15a:	83 d1 00             	adc    $0x0,%ecx
43c15d:	f7 d9                	neg    %ecx
43c15f:	89 85 38 fe ff ff    	mov    %eax,-0x1c8(%ebp)
43c165:	89 8d 3c fe ff ff    	mov    %ecx,-0x1c4(%ebp)
43c16b:	e9 c8 00 00 00       	jmp    0x43c238
43c170:	80 bd 73 fe ff ff 00 	cmpb   $0x0,-0x18d(%ebp)
43c177:	8b bd 1c fe ff ff    	mov    -0x1e4(%ebp),%edi
43c17d:	0f 85 aa 00 00 00    	jne    0x43c22d
43c183:	83 bd 4c fe ff ff 78 	cmpl   $0x78,-0x1b4(%ebp)
43c18a:	74 2f                	je     0x43c1bb
43c18c:	83 bd 4c fe ff ff 70 	cmpl   $0x70,-0x1b4(%ebp)
43c193:	74 26                	je     0x43c1bb
43c195:	0f b6 c3             	movzbl %bl,%eax
43c198:	50                   	push   %eax
43c199:	e8 0e 7b 00 00       	call   0x443cac
43c19e:	59                   	pop    %ecx
43c19f:	85 c0                	test   %eax,%eax
43c1a1:	74 71                	je     0x43c214
43c1a3:	83 bd 4c fe ff ff 6f 	cmpl   $0x6f,-0x1b4(%ebp)
43c1aa:	75 0a                	jne    0x43c1b6
43c1ac:	83 fb 38             	cmp    $0x38,%ebx
43c1af:	7d 63                	jge    0x43c214
43c1b1:	c1 e7 03             	shl    $0x3,%edi
43c1b4:	eb 25                	jmp    0x43c1db
43c1b6:	6b ff 0a             	imul   $0xa,%edi,%edi
43c1b9:	eb 20                	jmp    0x43c1db
43c1bb:	0f b6 c3             	movzbl %bl,%eax
43c1be:	50                   	push   %eax
43c1bf:	e8 6c 7b 00 00       	call   0x443d30
43c1c4:	59                   	pop    %ecx
43c1c5:	85 c0                	test   %eax,%eax
43c1c7:	74 4b                	je     0x43c214
43c1c9:	53                   	push   %ebx
43c1ca:	c1 e7 04             	shl    $0x4,%edi
43c1cd:	e8 92 f1 ff ff       	call   0x43b364
43c1d2:	8b d8                	mov    %eax,%ebx
43c1d4:	59                   	pop    %ecx
43c1d5:	89 9d 6c fe ff ff    	mov    %ebx,-0x194(%ebp)
43c1db:	ff 85 54 fe ff ff    	incl   -0x1ac(%ebp)
43c1e1:	83 bd 48 fe ff ff 00 	cmpl   $0x0,-0x1b8(%ebp)
43c1e8:	8d 7c 1f d0          	lea    -0x30(%edi,%ebx,1),%edi
43c1ec:	74 08                	je     0x43c1f6
43c1ee:	ff 8d 64 fe ff ff    	decl   -0x19c(%ebp)
43c1f4:	74 37                	je     0x43c22d
43c1f6:	8b 95 5c fe ff ff    	mov    -0x1a4(%ebp),%edx
43c1fc:	ff 85 74 fe ff ff    	incl   -0x18c(%ebp)
43c202:	e8 7d f1 ff ff       	call   0x43b384
43c207:	8b d8                	mov    %eax,%ebx
43c209:	89 9d 6c fe ff ff    	mov    %ebx,-0x194(%ebp)
43c20f:	e9 6f ff ff ff       	jmp    0x43c183
43c214:	ff 8d 74 fe ff ff    	decl   -0x18c(%ebp)
43c21a:	83 fb ff             	cmp    $0xffffffff,%ebx
43c21d:	74 0e                	je     0x43c22d
43c21f:	ff b5 5c fe ff ff    	push   -0x1a4(%ebp)
43c225:	53                   	push   %ebx
43c226:	e8 e9 7e 00 00       	call   0x444114
43c22b:	59                   	pop    %ecx
43c22c:	59                   	pop    %ecx
43c22d:	80 bd 59 fe ff ff 00 	cmpb   $0x0,-0x1a7(%ebp)
43c234:	74 02                	je     0x43c238
43c236:	f7 df                	neg    %edi
43c238:	83 bd 4c fe ff ff 46 	cmpl   $0x46,-0x1b4(%ebp)
43c23f:	75 07                	jne    0x43c248
43c241:	83 a5 54 fe ff ff 00 	andl   $0x0,-0x1ac(%ebp)
43c248:	83 bd 54 fe ff ff 00 	cmpl   $0x0,-0x1ac(%ebp)
43c24f:	0f 84 16 01 00 00    	je     0x43c36b
43c255:	80 bd 63 fe ff ff 00 	cmpb   $0x0,-0x19d(%ebp)
43c25c:	75 38                	jne    0x43c296
43c25e:	ff 85 34 fe ff ff    	incl   -0x1cc(%ebp)
43c264:	8b b5 40 fe ff ff    	mov    -0x1c0(%ebp),%esi
43c26a:	83 bd 28 fe ff ff 00 	cmpl   $0x0,-0x1d8(%ebp)
43c271:	74 13                	je     0x43c286
43c273:	8b 85 38 fe ff ff    	mov    -0x1c8(%ebp),%eax
43c279:	89 06                	mov    %eax,(%esi)
43c27b:	8b 85 3c fe ff ff    	mov    -0x1c4(%ebp),%eax
43c281:	89 46 04             	mov    %eax,0x4(%esi)
43c284:	eb 10                	jmp    0x43c296
43c286:	80 bd 7b fe ff ff 00 	cmpb   $0x0,-0x185(%ebp)
43c28d:	74 04                	je     0x43c293
43c28f:	89 3e                	mov    %edi,(%esi)
43c291:	eb 03                	jmp    0x43c296
43c293:	66 89 3e             	mov    %di,(%esi)
43c296:	8b bd 44 fe ff ff    	mov    -0x1bc(%ebp),%edi
43c29c:	fe 85 5b fe ff ff    	incb   -0x1a5(%ebp)
43c2a2:	47                   	inc    %edi
43c2a3:	89 bd 44 fe ff ff    	mov    %edi,-0x1bc(%ebp)
43c2a9:	eb 64                	jmp    0x43c30f
43c2ab:	3c 25                	cmp    $0x25,%al
43c2ad:	75 06                	jne    0x43c2b5
43c2af:	38 47 01             	cmp    %al,0x1(%edi)
43c2b2:	75 01                	jne    0x43c2b5
43c2b4:	47                   	inc    %edi
43c2b5:	8b 95 5c fe ff ff    	mov    -0x1a4(%ebp),%edx
43c2bb:	ff 85 74 fe ff ff    	incl   -0x18c(%ebp)
43c2c1:	e8 be f0 ff ff       	call   0x43b384
43c2c6:	8b d8                	mov    %eax,%ebx
43c2c8:	0f b6 07             	movzbl (%edi),%eax
43c2cb:	47                   	inc    %edi
43c2cc:	89 9d 6c fe ff ff    	mov    %ebx,-0x194(%ebp)
43c2d2:	89 bd 44 fe ff ff    	mov    %edi,-0x1bc(%ebp)
43c2d8:	3b c3                	cmp    %ebx,%eax
43c2da:	75 77                	jne    0x43c353
43c2dc:	0f b6 c3             	movzbl %bl,%eax
43c2df:	50                   	push   %eax
43c2e0:	e8 fc 2c 00 00       	call   0x43efe1
43c2e5:	59                   	pop    %ecx
43c2e6:	85 c0                	test   %eax,%eax
43c2e8:	74 25                	je     0x43c30f
43c2ea:	8b 95 5c fe ff ff    	mov    -0x1a4(%ebp),%edx
43c2f0:	ff 85 74 fe ff ff    	incl   -0x18c(%ebp)
43c2f6:	e8 89 f0 ff ff       	call   0x43b384
43c2fb:	0f b6 0f             	movzbl (%edi),%ecx
43c2fe:	47                   	inc    %edi
43c2ff:	89 bd 44 fe ff ff    	mov    %edi,-0x1bc(%ebp)
43c305:	3b c8                	cmp    %eax,%ecx
43c307:	75 37                	jne    0x43c340
43c309:	ff 8d 74 fe ff ff    	decl   -0x18c(%ebp)
43c30f:	83 bd 6c fe ff ff ff 	cmpl   $0xffffffff,-0x194(%ebp)
43c316:	75 13                	jne    0x43c32b
43c318:	80 3f 25             	cmpb   $0x25,(%edi)
43c31b:	75 4e                	jne    0x43c36b
43c31d:	8b 85 44 fe ff ff    	mov    -0x1bc(%ebp),%eax
43c323:	80 78 01 6e          	cmpb   $0x6e,0x1(%eax)
43c327:	75 42                	jne    0x43c36b
43c329:	8b f8                	mov    %eax,%edi
43c32b:	8a 07                	mov    (%edi),%al
43c32d:	84 c0                	test   %al,%al
43c32f:	0f 85 be f1 ff ff    	jne    0x43b4f3
43c335:	eb 34                	jmp    0x43c36b
43c337:	83 bd 6c fe ff ff ff 	cmpl   $0xffffffff,-0x194(%ebp)
43c33e:	eb 16                	jmp    0x43c356
43c340:	83 f8 ff             	cmp    $0xffffffff,%eax
43c343:	74 0e                	je     0x43c353
43c345:	ff b5 5c fe ff ff    	push   -0x1a4(%ebp)
43c34b:	50                   	push   %eax
43c34c:	e8 c3 7d 00 00       	call   0x444114
43c351:	59                   	pop    %ecx
43c352:	59                   	pop    %ecx
43c353:	83 fb ff             	cmp    $0xffffffff,%ebx
43c356:	74 13                	je     0x43c36b
43c358:	ff b5 5c fe ff ff    	push   -0x1a4(%ebp)
43c35e:	ff b5 6c fe ff ff    	push   -0x194(%ebp)
43c364:	e8 ab 7d 00 00       	call   0x444114
43c369:	59                   	pop    %ecx
43c36a:	59                   	pop    %ecx
43c36b:	83 bd 30 fe ff ff 01 	cmpl   $0x1,-0x1d0(%ebp)
43c372:	75 0c                	jne    0x43c380
43c374:	ff b5 50 fe ff ff    	push   -0x1b0(%ebp)
43c37a:	e8 1e 46 ff ff       	call   0x43099d
43c37f:	59                   	pop    %ecx
43c380:	83 bd 6c fe ff ff ff 	cmpl   $0xffffffff,-0x194(%ebp)
43c387:	75 2a                	jne    0x43c3b3
43c389:	8b 85 34 fe ff ff    	mov    -0x1cc(%ebp),%eax
43c38f:	85 c0                	test   %eax,%eax
43c391:	75 0b                	jne    0x43c39e
43c393:	38 85 5b fe ff ff    	cmp    %al,-0x1a5(%ebp)
43c399:	75 03                	jne    0x43c39e
43c39b:	83 c8 ff             	or     $0xffffffff,%eax
43c39e:	80 bd 10 fe ff ff 00 	cmpb   $0x0,-0x1f0(%ebp)
43c3a5:	74 25                	je     0x43c3cc
43c3a7:	8b 8d 0c fe ff ff    	mov    -0x1f4(%ebp),%ecx
43c3ad:	83 61 70 fd          	andl   $0xfffffffd,0x70(%ecx)
43c3b1:	eb 19                	jmp    0x43c3cc
43c3b3:	80 bd 10 fe ff ff 00 	cmpb   $0x0,-0x1f0(%ebp)
43c3ba:	74 0a                	je     0x43c3c6
43c3bc:	8b 85 0c fe ff ff    	mov    -0x1f4(%ebp),%eax
43c3c2:	83 60 70 fd          	andl   $0xfffffffd,0x70(%eax)
43c3c6:	8b 85 34 fe ff ff    	mov    -0x1cc(%ebp),%eax
43c3cc:	5b                   	pop    %ebx
43c3cd:	8b 4d fc             	mov    -0x4(%ebp),%ecx
43c3d0:	5f                   	pop    %edi
43c3d1:	33 cd                	xor    %ebp,%ecx
43c3d3:	5e                   	pop    %esi
43c3d4:	e8 b8 25 00 00       	call   0x43e991
43c3d9:	c9                   	leave
43c3da:	c3                   	ret
43c3db:	8b ff                	mov    %edi,%edi
43c3dd:	55                   	push   %ebp
43c3de:	8b ec                	mov    %esp,%ebp
43c3e0:	8b 06                	mov    (%esi),%eax
43c3e2:	39 45 08             	cmp    %eax,0x8(%ebp)
43c3e5:	75 46                	jne    0x43c42d
43c3e7:	8b 0f                	mov    (%edi),%ecx
43c3e9:	6a 02                	push   $0x2
43c3eb:	50                   	push   %eax
43c3ec:	3b 4d 0c             	cmp    0xc(%ebp),%ecx
43c3ef:	75 2b                	jne    0x43c41c
43c3f1:	e8 8a a0 ff ff       	call   0x436480
43c3f6:	59                   	pop    %ecx
43c3f7:	59                   	pop    %ecx
43c3f8:	89 07                	mov    %eax,(%edi)
43c3fa:	85 c0                	test   %eax,%eax
43c3fc:	75 04                	jne    0x43c402
43c3fe:	33 c0                	xor    %eax,%eax
43c400:	5d                   	pop    %ebp
43c401:	c3                   	ret
43c402:	8b 45 10             	mov    0x10(%ebp),%eax
43c405:	c7 00 01 00 00 00    	movl   $0x1,(%eax)
43c40b:	ff 36                	push   (%esi)
43c40d:	ff 75 0c             	push   0xc(%ebp)
43c410:	ff 37                	push   (%edi)
43c412:	e8 f9 68 ff ff       	call   0x432d10
43c417:	83 c4 0c             	add    $0xc,%esp
43c41a:	eb 0f                	jmp    0x43c42b
43c41c:	51                   	push   %ecx
43c41d:	e8 f8 a0 ff ff       	call   0x43651a
43c422:	83 c4 0c             	add    $0xc,%esp
43c425:	85 c0                	test   %eax,%eax
43c427:	74 d5                	je     0x43c3fe
43c429:	89 07                	mov    %eax,(%edi)
43c42b:	d1 26                	shll   $1,(%esi)
43c42d:	33 c0                	xor    %eax,%eax
43c42f:	40                   	inc    %eax
43c430:	5d                   	pop    %ebp
43c431:	c3                   	ret
43c432:	8b ff                	mov    %edi,%edi
43c434:	55                   	push   %ebp
43c435:	8b ec                	mov    %esp,%ebp
43c437:	0f b6 45 08          	movzbl 0x8(%ebp),%eax
43c43b:	50                   	push   %eax
43c43c:	e8 6b 78 00 00       	call   0x443cac
43c441:	85 c0                	test   %eax,%eax
43c443:	0f be 45 08          	movsbl 0x8(%ebp),%eax
43c447:	59                   	pop    %ecx
43c448:	75 06                	jne    0x43c450
43c44a:	83 e0 df             	and    $0xffffffdf,%eax
43c44d:	83 e8 07             	sub    $0x7,%eax
43c450:	5d                   	pop    %ebp
43c451:	c3                   	ret
43c452:	ff 4a 04             	decl   0x4(%edx)
43c455:	78 09                	js     0x43c460
43c457:	8b 0a                	mov    (%edx),%ecx
43c459:	0f b6 01             	movzbl (%ecx),%eax
43c45c:	41                   	inc    %ecx
43c45d:	89 0a                	mov    %ecx,(%edx)
43c45f:	c3                   	ret
43c460:	52                   	push   %edx
43c461:	e8 cc de ff ff       	call   0x43a332
43c466:	59                   	pop    %ecx
43c467:	c3                   	ret
43c468:	8b ff                	mov    %edi,%edi
43c46a:	55                   	push   %ebp
43c46b:	8b ec                	mov    %esp,%ebp
43c46d:	83 7d 08 ff          	cmpl   $0xffffffff,0x8(%ebp)
43c471:	74 06                	je     0x43c479
43c473:	5d                   	pop    %ebp
43c474:	e9 9b 7c 00 00       	jmp    0x444114
43c479:	5d                   	pop    %ebp
43c47a:	c3                   	ret
43c47b:	8b ff                	mov    %edi,%edi
43c47d:	55                   	push   %ebp
43c47e:	8b ec                	mov    %esp,%ebp
43c480:	53                   	push   %ebx
43c481:	8b 55 08             	mov    0x8(%ebp),%edx
43c484:	ff 06                	incl   (%esi)
43c486:	e8 c7 ff ff ff       	call   0x43c452
43c48b:	8b d8                	mov    %eax,%ebx
43c48d:	83 fb ff             	cmp    $0xffffffff,%ebx
43c490:	74 0e                	je     0x43c4a0
43c492:	0f b6 c3             	movzbl %bl,%eax
43c495:	50                   	push   %eax
43c496:	e8 16 79 00 00       	call   0x443db1
43c49b:	59                   	pop    %ecx