43b1e3:	8b c7                	mov    %edi,%eax
43b1e5:	8b 10                	mov    (%eax),%edx
43b1e7:	ff 52 44             	call   *0x44(%edx)
43b1ea:	33 d2                	xor    %edx,%edx
43b1ec:	8b c7                	mov    %edi,%eax
43b1ee:	e8 79 f6 ff ff       	call   0x43a86c
43b1f3:	8b d8                	mov    %eax,%ebx
43b1f5:	33 d2                	xor    %edx,%edx
43b1f7:	8b c7                	mov    %edi,%eax
43b1f9:	e8 6a fb ff ff       	call   0x43ad68
43b1fe:	0a d8                	or     %al,%bl
43b200:	84 db                	test   %bl,%bl
43b202:	74 07                	je     0x43b20b
43b204:	8b c7                	mov    %edi,%eax
43b206:	e8 c5 ce ff ff       	call   0x4380d0
43b20b:	a1 04 0c 46 00       	mov    0x460c04,%eax
43b210:	8b 00                	mov    (%eax),%eax
43b212:	8b 40 44             	mov    0x44(%eax),%eax
43b215:	85 c0                	test   %eax,%eax
43b217:	74 3f                	je     0x43b258
43b219:	8b 15 04 0c 46 00    	mov    0x460c04,%edx
43b21f:	8b d8                	mov    %eax,%ebx
43b221:	80 bb 2f 02 00 00 02 	cmpb   $0x2,0x22f(%ebx)
43b228:	75 2e                	jne    0x43b258
43b22a:	3b bb 58 02 00 00    	cmp    0x258(%ebx),%edi
43b230:	75 26                	jne    0x43b258
43b232:	6a 00                	push   $0x0
43b234:	6a 00                	push   $0x0
43b236:	68 34 02 00 00       	push   $0x234
43b23b:	8b 83 54 02 00 00    	mov    0x254(%ebx),%eax
43b241:	50                   	push   %eax
43b242:	e8 75 bb fc ff       	call   0x406dbc
43b247:	85 c0                	test   %eax,%eax
43b249:	74 0d                	je     0x43b258
43b24b:	8b c3                	mov    %ebx,%eax
43b24d:	e8 8a ce 00 00       	call   0x4480dc
43b252:	50                   	push   %eax
43b253:	e8 5c b8 fc ff       	call   0x406ab4
43b258:	b3 01                	mov    $0x1,%bl
43b25a:	eb 1f                	jmp    0x43b27b
43b25c:	f6 46 1c 10          	testb  $0x10,0x1c(%esi)
43b260:	75 19                	jne    0x43b27b
43b262:	8b c6                	mov    %esi,%eax
43b264:	8b 15 c8 6e 43 00    	mov    0x436ec8,%edx
43b26a:	e8 25 87 fc ff       	call   0x403994
43b26f:	84 c0                	test   %al,%al
43b271:	74 08                	je     0x43b27b
43b273:	8b 46 34             	mov    0x34(%esi),%eax
43b276:	e8 59 ef ff ff       	call   0x43a1d4
43b27b:	8b c3                	mov    %ebx,%eax
43b27d:	5f                   	pop    %edi
43b27e:	5e                   	pop    %esi
43b27f:	5b                   	pop    %ebx
43b280:	c3                   	ret
43b281:	8d 40 00             	lea    0x0(%eax),%eax
43b284:	80 78 40 00          	cmpb   $0x0,0x40(%eax)
43b288:	75 09                	jne    0x43b293
43b28a:	83 78 48 00          	cmpl   $0x0,0x48(%eax)
43b28e:	75 03                	jne    0x43b293
43b290:	33 c0                	xor    %eax,%eax
43b292:	c3                   	ret
43b293:	b0 01                	mov    $0x1,%al
43b295:	c3                   	ret
43b296:	8b c0                	mov    %eax,%eax
43b298:	eb 04                	jmp    0x43b29e
43b29a:	8b 40 64             	mov    0x64(%eax),%eax
43b29d:	4a                   	dec    %edx
43b29e:	85 d2                	test   %edx,%edx
43b2a0:	7e 04                	jle    0x43b2a6
43b2a2:	85 c0                	test   %eax,%eax
43b2a4:	75 f4                	jne    0x43b29a
43b2a6:	c3                   	ret
43b2a7:	90                   	nop
43b2a8:	55                   	push   %ebp
43b2a9:	8b ec                	mov    %esp,%ebp
43b2ab:	83 c4 f8             	add    $0xfffffff8,%esp
43b2ae:	53                   	push   %ebx
43b2af:	56                   	push   %esi
43b2b0:	57                   	push   %edi
43b2b1:	8b f2                	mov    %edx,%esi
43b2b3:	8b d8                	mov    %eax,%ebx
43b2b5:	c6 45 ff 01          	movb   $0x1,-0x1(%ebp)
43b2b9:	8b 03                	mov    (%ebx),%eax
43b2bb:	8b 40 64             	mov    0x64(%eax),%eax
43b2be:	89 45 f8             	mov    %eax,-0x8(%ebp)
43b2c1:	83 7d f8 00          	cmpl   $0x0,-0x8(%ebp)
43b2c5:	74 13                	je     0x43b2da
43b2c7:	8b 45 08             	mov    0x8(%ebp),%eax
43b2ca:	50                   	push   %eax
43b2cb:	8d 56 01             	lea    0x1(%esi),%edx
43b2ce:	8d 45 f8             	lea    -0x8(%ebp),%eax
43b2d1:	e8 d2 ff ff ff       	call   0x43b2a8
43b2d6:	59                   	pop    %ecx
43b2d7:	88 45 ff             	mov    %al,-0x1(%ebp)
43b2da:	8a 45 ff             	mov    -0x1(%ebp),%al
43b2dd:	84 c0                	test   %al,%al
43b2df:	0f 84 0a 01 00 00    	je     0x43b3ef
43b2e5:	2c 03                	sub    $0x3,%al
43b2e7:	0f 84 02 01 00 00    	je     0x43b3ef
43b2ed:	80 7d ff 02          	cmpb   $0x2,-0x1(%ebp)
43b2f1:	75 76                	jne    0x43b369
43b2f3:	8b 45 08             	mov    0x8(%ebp),%eax
43b2f6:	83 78 fc 00          	cmpl   $0x0,-0x4(%eax)
43b2fa:	74 13                	je     0x43b30f
43b2fc:	8b 45 08             	mov    0x8(%ebp),%eax
43b2ff:	8b 40 fc             	mov    -0x4(%eax),%eax
43b302:	66 8b 40 60          	mov    0x60(%eax),%ax
43b306:	8b 55 08             	mov    0x8(%ebp),%edx
43b309:	66 3b 42 fa          	cmp    -0x6(%edx),%ax
43b30d:	74 2c                	je     0x43b33b
43b30f:	8b 45 08             	mov    0x8(%ebp),%eax
43b312:	0f b7 50 fa          	movzwl -0x6(%eax),%edx
43b316:	8b 45 08             	mov    0x8(%ebp),%eax
43b319:	8b 40 f4             	mov    -0xc(%eax),%eax
43b31c:	b1 02                	mov    $0x2,%cl
43b31e:	e8 dd fd ff ff       	call   0x43b100
43b323:	8b 55 08             	mov    0x8(%ebp),%edx
43b326:	89 42 fc             	mov    %eax,-0x4(%edx)
43b329:	8b 45 08             	mov    0x8(%ebp),%eax
43b32c:	83 78 fc 00          	cmpl   $0x0,-0x4(%eax)
43b330:	75 09                	jne    0x43b33b
43b332:	c6 45 ff 03          	movb   $0x3,-0x1(%ebp)
43b336:	e9 b4 00 00 00       	jmp    0x43b3ef
43b33b:	8b 45 08             	mov    0x8(%ebp),%eax
43b33e:	8b 40 fc             	mov    -0x4(%eax),%eax
43b341:	8b d6                	mov    %esi,%edx
43b343:	e8 50 ff ff ff       	call   0x43b298
43b348:	89 03                	mov    %eax,(%ebx)
43b34a:	83 3b 00             	cmpl   $0x0,(%ebx)
43b34d:	0f 84 9c 00 00 00    	je     0x43b3ef
43b353:	8b 03                	mov    (%ebx),%eax
43b355:	8b 40 64             	mov    0x64(%eax),%eax
43b358:	3b 45 f8             	cmp    -0x8(%ebp),%eax
43b35b:	0f 85 8e 00 00 00    	jne    0x43b3ef
43b361:	85 f6                	test   %esi,%esi
43b363:	75 04                	jne    0x43b369
43b365:	c6 45 ff 01          	movb   $0x1,-0x1(%ebp)
43b369:	8b 03                	mov    (%ebx),%eax
43b36b:	80 78 39 00          	cmpb   $0x0,0x39(%eax)
43b36f:	74 7a                	je     0x43b3eb
43b371:	33 c0                	xor    %eax,%eax
43b373:	55                   	push   %ebp
43b374:	68 cd b3 43 00       	push   $0x43b3cd
43b379:	64 ff 30             	push   %fs:(%eax)
43b37c:	64 89 20             	mov    %esp,%fs:(%eax)
43b37f:	8b 45 08             	mov    0x8(%ebp),%eax
43b382:	8b 40 f4             	mov    -0xc(%eax),%eax
43b385:	f6 40 1c 10          	testb  $0x10,0x1c(%eax)
43b389:	75 07                	jne    0x43b392
43b38b:	8b 03                	mov    (%ebx),%eax
43b38d:	e8 42 ee ff ff       	call   0x43a1d4
43b392:	8b 03                	mov    (%ebx),%eax
43b394:	8b 10                	mov    (%eax),%edx
43b396:	ff 52 44             	call   *0x44(%edx)
43b399:	8b 45 08             	mov    0x8(%ebp),%eax
43b39c:	83 78 fc 00          	cmpl   $0x0,-0x4(%eax)
43b3a0:	74 1d                	je     0x43b3bf
43b3a2:	8b 03                	mov    (%ebx),%eax
43b3a4:	8b 55 08             	mov    0x8(%ebp),%edx
43b3a7:	3b 42 fc             	cmp    -0x4(%edx),%eax
43b3aa:	74 17                	je     0x43b3c3
43b3ac:	8b 45 08             	mov    0x8(%ebp),%eax
43b3af:	8b 40 fc             	mov    -0x4(%eax),%eax
43b3b2:	66 8b 40 60          	mov    0x60(%eax),%ax
43b3b6:	8b 55 08             	mov    0x8(%ebp),%edx
43b3b9:	66 3b 42 fa          	cmp    -0x6(%edx),%ax
43b3bd:	74 04                	je     0x43b3c3
43b3bf:	c6 45 ff 02          	movb   $0x2,-0x1(%ebp)
43b3c3:	33 c0                	xor    %eax,%eax
43b3c5:	5a                   	pop    %edx
43b3c6:	59                   	pop    %ecx
43b3c7:	59                   	pop    %ecx
43b3c8:	64 89 10             	mov    %edx,%fs:(%eax)
43b3cb:	eb 22                	jmp    0x43b3ef
43b3cd:	e9 c6 88 fc ff       	jmp    0x403c98
43b3d2:	8b 45 08             	mov    0x8(%ebp),%eax
43b3d5:	8b 50 f4             	mov    -0xc(%eax),%edx
43b3d8:	a1 04 0c 46 00       	mov    0x460c04,%eax
43b3dd:	8b 00                	mov    (%eax),%eax
43b3df:	e8 74 83 ff ff       	call   0x433758
43b3e4:	e8 17 8c fc ff       	call   0x404000
43b3e9:	eb 04                	jmp    0x43b3ef
43b3eb:	c6 45 ff 00          	movb   $0x0,-0x1(%ebp)
43b3ef:	8a 45 ff             	mov    -0x1(%ebp),%al
43b3f2:	5f                   	pop    %edi
43b3f3:	5e                   	pop    %esi
43b3f4:	5b                   	pop    %ebx
43b3f5:	59                   	pop    %ecx
43b3f6:	59                   	pop    %ecx
43b3f7:	5d                   	pop    %ebp
43b3f8:	c3                   	ret
43b3f9:	8d 40 00             	lea    0x0(%eax),%eax
43b3fc:	55                   	push   %ebp
43b3fd:	8b ec                	mov    %esp,%ebp
43b3ff:	83 c4 ec             	add    $0xffffffec,%esp
43b402:	53                   	push   %ebx
43b403:	8b da                	mov    %edx,%ebx
43b405:	89 45 f4             	mov    %eax,-0xc(%ebp)
43b408:	33 c0                	xor    %eax,%eax
43b40a:	33 d2                	xor    %edx,%edx
43b40c:	8a 53 04             	mov    0x4(%ebx),%dl
43b40f:	66 89 55 fa          	mov    %dx,-0x6(%ebp)
43b413:	66 83 7d fa 00       	cmpw   $0x0,-0x6(%ebp)
43b418:	0f 84 f5 00 00 00    	je     0x43b513
43b41e:	6a 10                	push   $0x10
43b420:	e8 5f b7 fc ff       	call   0x406b84
43b425:	66 85 c0             	test   %ax,%ax
43b428:	7d 06                	jge    0x43b430
43b42a:	66 81 45 fa 00 20    	addw   $0x2000,-0x6(%ebp)
43b430:	6a 11                	push   $0x11
43b432:	e8 4d b7 fc ff       	call   0x406b84
43b437:	66 85 c0             	test   %ax,%ax
43b43a:	7d 06                	jge    0x43b442
43b43c:	66 81 45 fa 00 40    	addw   $0x4000,-0x6(%ebp)
43b442:	f6 43 0b 20          	testb  $0x20,0xb(%ebx)
43b446:	74 06                	je     0x43b44e
43b448:	66 81 45 fa 00 80    	addw   $0x8000,-0x6(%ebp)
43b44e:	8b 45 f4             	mov    -0xc(%ebp),%eax
43b451:	8b 40 34             	mov    0x34(%eax),%eax
43b454:	89 45 ec             	mov    %eax,-0x14(%ebp)
43b457:	8d 55 ec             	lea    -0x14(%ebp),%edx
43b45a:	a1 d8 1a 46 00       	mov    0x461ad8,%eax
43b45f:	e8 6c 78 fe ff       	call   0x422cd0
43b464:	33 c0                	xor    %eax,%eax
43b466:	55                   	push   %ebp
43b467:	68 fa b4 43 00       	push   $0x43b4fa
43b46c:	64 ff 30             	push   %fs:(%eax)
43b46f:	64 89 20             	mov    %esp,%fs:(%eax)
43b472:	c6 45 f3 00          	movb   $0x0,-0xd(%ebp)
43b476:	0f b7 55 fa          	movzwl -0x6(%ebp),%edx
43b47a:	b1 02                	mov    $0x2,%cl
43b47c:	8b 45 f4             	mov    -0xc(%ebp),%eax
43b47f:	e8 7c fc ff ff       	call   0x43b100
43b484:	89 45 fc             	mov    %eax,-0x4(%ebp)
43b487:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
43b48b:	74 49                	je     0x43b4d6
43b48d:	8d 55 fc             	lea    -0x4(%ebp),%edx
43b490:	a1 d8 1a 46 00       	mov    0x461ad8,%eax
43b495:	e8 36 78 fe ff       	call   0x422cd0
43b49a:	33 c0                	xor    %eax,%eax
43b49c:	55                   	push   %ebp
43b49d:	68 cf b4 43 00       	push   $0x43b4cf
43b4a2:	64 ff 30             	push   %fs:(%eax)
43b4a5:	64 89 20             	mov    %esp,%fs:(%eax)
43b4a8:	55                   	push   %ebp
43b4a9:	8d 45 fc             	lea    -0x4(%ebp),%eax
43b4ac:	33 d2                	xor    %edx,%edx
43b4ae:	e8 f5 fd ff ff       	call   0x43b2a8
43b4b3:	59                   	pop    %ecx
43b4b4:	88 45 f3             	mov    %al,-0xd(%ebp)
43b4b7:	33 c0                	xor    %eax,%eax
43b4b9:	5a                   	pop    %edx
43b4ba:	59                   	pop    %ecx
43b4bb:	59                   	pop    %ecx
43b4bc:	64 89 10             	mov    %edx,%fs:(%eax)
43b4bf:	68 d6 b4 43 00       	push   $0x43b4d6
43b4c4:	a1 d8 1a 46 00       	mov    0x461ad8,%eax
43b4c9:	e8 ee 77 fe ff       	call   0x422cbc
43b4ce:	c3                   	ret
43b4cf:	e9 78 8a fc ff       	jmp    0x403f4c
43b4d4:	eb ee                	jmp    0x43b4c4
43b4d6:	83 7d ec 00          	cmpl   $0x0,-0x14(%ebp)
43b4da:	74 06                	je     0x43b4e2
43b4dc:	80 7d f3 02          	cmpb   $0x2,-0xd(%ebp)
43b4e0:	74 90                	je     0x43b472
43b4e2:	33 c0                	xor    %eax,%eax
43b4e4:	5a                   	pop    %edx
43b4e5:	59                   	pop    %ecx
43b4e6:	59                   	pop    %ecx
43b4e7:	64 89 10             	mov    %edx,%fs:(%eax)
43b4ea:	68 01 b5 43 00       	push   $0x43b501
43b4ef:	a1 d8 1a 46 00       	mov    0x461ad8,%eax
43b4f4:	e8 c3 77 fe ff       	call   0x422cbc
43b4f9:	c3                   	ret
43b4fa:	e9 4d 8a fc ff       	jmp    0x403f4c
43b4ff:	eb ee                	jmp    0x43b4ef
43b501:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
43b505:	75 0a                	jne    0x43b511
43b507:	83 7d ec 00          	cmpl   $0x0,-0x14(%ebp)
43b50b:	74 04                	je     0x43b511
43b50d:	33 c0                	xor    %eax,%eax
43b50f:	eb 02                	jmp    0x43b513
43b511:	b0 01                	mov    $0x1,%al
43b513:	5b                   	pop    %ebx
43b514:	8b e5                	mov    %ebp,%esp
43b516:	5d                   	pop    %ebp
43b517:	c3                   	ret
43b518:	8a 40 41             	mov    0x41(%eax),%al
43b51b:	34 01                	xor    $0x1,%al
43b51d:	c3                   	ret
43b51e:	8b c0                	mov    %eax,%eax
43b520:	53                   	push   %ebx
43b521:	56                   	push   %esi
43b522:	83 c4 80             	add    $0xffffff80,%esp
43b525:	8b d8                	mov    %eax,%ebx
43b527:	a1 64 0d 46 00       	mov    0x460d64,%eax
43b52c:	80 78 0d 00          	cmpb   $0x0,0xd(%eax)
43b530:	0f 84 9c 00 00 00    	je     0x43b5d2
43b536:	83 7b 38 00          	cmpl   $0x0,0x38(%ebx)
43b53a:	0f 84 92 00 00 00    	je     0x43b5d2
43b540:	8b c3                	mov    %ebx,%eax
43b542:	8b 10                	mov    (%eax),%edx
43b544:	ff 52 34             	call   *0x34(%edx)
43b547:	8b f0                	mov    %eax,%esi
43b549:	c7 04 24 2c 00 00 00 	movl   $0x2c,(%esp)
43b550:	c7 44 24 04 10 00 00 	movl   $0x10,0x4(%esp)
43b557:	00
43b558:	8d 44 24 30          	lea    0x30(%esp),%eax
43b55c:	89 44 24 24          	mov    %eax,0x24(%esp)
43b560:	c7 44 24 28 50 00 00 	movl   $0x50,0x28(%esp)
43b567:	00
43b568:	54                   	push   %esp
43b569:	6a ff                	push   $0xffffffff
43b56b:	6a 00                	push   $0x0
43b56d:	56                   	push   %esi
43b56e:	e8 51 b6 fc ff       	call   0x406bc4
43b573:	85 c0                	test   %eax,%eax
43b575:	74 5b                	je     0x43b5d2
43b577:	8b c3                	mov    %ebx,%eax
43b579:	e8 56 03 00 00       	call   0x43b8d4
43b57e:	8b 54 24 08          	mov    0x8(%esp),%edx
43b582:	81 e2 00 60 00 00    	and    $0x6000,%edx
43b588:	83 fa 01             	cmp    $0x1,%edx
43b58b:	1b d2                	sbb    %edx,%edx
43b58d:	42                   	inc    %edx
43b58e:	3a c2                	cmp    %dl,%al
43b590:	74 40                	je     0x43b5d2
43b592:	8b c3                	mov    %ebx,%eax
43b594:	e8 3b 03 00 00       	call   0x43b8d4
43b599:	83 e0 7f             	and    $0x7f,%eax
43b59c:	c1 e0 0d             	shl    $0xd,%eax
43b59f:	8d 04 40             	lea    (%eax,%eax,2),%eax
43b5a2:	8b 54 24 08          	mov    0x8(%esp),%edx
43b5a6:	81 e2 ff 9f ff ff    	and    $0xffff9fff,%edx
43b5ac:	0b c2                	or     %edx,%eax
43b5ae:	89 44 24 08          	mov    %eax,0x8(%esp)
43b5b2:	c7 44 24 04 10 00 00 	movl   $0x10,0x4(%esp)
43b5b9:	00
43b5ba:	54                   	push   %esp
43b5bb:	6a ff                	push   $0xffffffff
43b5bd:	6a 00                	push   $0x0
43b5bf:	56                   	push   %esi
43b5c0:	e8 37 b8 fc ff       	call   0x406dfc
43b5c5:	85 c0                	test   %eax,%eax
43b5c7:	74 09                	je     0x43b5d2
43b5c9:	8b 43 38             	mov    0x38(%ebx),%eax
43b5cc:	50                   	push   %eax
43b5cd:	e8 e2 b4 fc ff       	call   0x406ab4
43b5d2:	81 c4 80 00 00 00    	add    $0x80,%esp
43b5d8:	5e                   	pop    %esi