43a2da:	f6 40 1c 10          	testb  $0x10,0x1c(%eax)
43a2de:	74 69                	je     0x43a349
43a2e0:	8b 45 fc             	mov    -0x4(%ebp),%eax
43a2e3:	f6 40 51 04          	testb  $0x4,0x51(%eax)
43a2e7:	75 60                	jne    0x43a349
43a2e9:	8b 45 fc             	mov    -0x4(%ebp),%eax
43a2ec:	83 78 30 00          	cmpl   $0x0,0x30(%eax)
43a2f0:	74 57                	je     0x43a349
43a2f2:	8b 45 fc             	mov    -0x4(%ebp),%eax
43a2f5:	8b 40 30             	mov    0x30(%eax),%eax
43a2f8:	e8 0f 79 00 00       	call   0x441c0c
43a2fd:	84 c0                	test   %al,%al
43a2ff:	74 48                	je     0x43a349
43a301:	8d 55 ec             	lea    -0x14(%ebp),%edx
43a304:	8b 45 fc             	mov    -0x4(%ebp),%eax
43a307:	e8 b0 f4 ff ff       	call   0x4397bc
43a30c:	80 7d eb 00          	cmpb   $0x0,-0x15(%ebp)
43a310:	75 17                	jne    0x43a329
43a312:	8b 45 fc             	mov    -0x4(%ebp),%eax
43a315:	8b 40 30             	mov    0x30(%eax),%eax
43a318:	f6 40 50 40          	testb  $0x40,0x50(%eax)
43a31c:	75 0b                	jne    0x43a329
43a31e:	55                   	push   %ebp
43a31f:	e8 14 ff ff ff       	call   0x43a238
43a324:	59                   	pop    %ecx
43a325:	84 c0                	test   %al,%al
43a327:	74 04                	je     0x43a32d
43a329:	33 c0                	xor    %eax,%eax
43a32b:	eb 02                	jmp    0x43a32f
43a32d:	b0 01                	mov    $0x1,%al
43a32f:	f6 d8                	neg    %al
43a331:	1b c0                	sbb    %eax,%eax
43a333:	50                   	push   %eax
43a334:	8d 45 ec             	lea    -0x14(%ebp),%eax
43a337:	50                   	push   %eax
43a338:	8b 45 fc             	mov    -0x4(%ebp),%eax
43a33b:	8b 40 30             	mov    0x30(%eax),%eax
43a33e:	e8 6d 75 00 00       	call   0x4418b0
43a343:	50                   	push   %eax
43a344:	e8 df cc fc ff       	call   0x407028
43a349:	5b                   	pop    %ebx
43a34a:	8b e5                	mov    %ebp,%esp
43a34c:	5d                   	pop    %ebp
43a34d:	c3                   	ret
43a34e:	8b c0                	mov    %eax,%eax
43a350:	f6 40 50 40          	testb  $0x40,0x50(%eax)
43a354:	0f 95 c1             	setne  %cl
43a357:	0f b6 50 57          	movzbl 0x57(%eax),%edx
43a35b:	e8 64 ff ff ff       	call   0x43a2c4
43a360:	c3                   	ret
43a361:	8d 40 00             	lea    0x0(%eax),%eax
43a364:	55                   	push   %ebp
43a365:	8b ec                	mov    %esp,%ebp
43a367:	51                   	push   %ecx
43a368:	53                   	push   %ebx
43a369:	88 4d ff             	mov    %cl,-0x1(%ebp)
43a36c:	c6 45 fe 00          	movb   $0x0,-0x2(%ebp)
43a370:	66 83 b8 2a 01 00 00 	cmpw   $0x0,0x12a(%eax)
43a377:	00
43a378:	74 27                	je     0x43a3a1
43a37a:	0f b6 4d ff          	movzbl -0x1(%ebp),%ecx
43a37e:	51                   	push   %ecx
43a37f:	8b 4d 10             	mov    0x10(%ebp),%ecx
43a382:	51                   	push   %ecx
43a383:	8b 4d 0c             	mov    0xc(%ebp),%ecx
43a386:	51                   	push   %ecx
43a387:	8b 4d 08             	mov    0x8(%ebp),%ecx
43a38a:	51                   	push   %ecx
43a38b:	8d 4d fe             	lea    -0x2(%ebp),%ecx
43a38e:	51                   	push   %ecx
43a38f:	8b d8                	mov    %eax,%ebx
43a391:	8b ca                	mov    %edx,%ecx
43a393:	8b d0                	mov    %eax,%edx
43a395:	8b 83 2c 01 00 00    	mov    0x12c(%ebx),%eax
43a39b:	ff 93 28 01 00 00    	call   *0x128(%ebx)
43a3a1:	0f b6 45 fe          	movzbl -0x2(%ebp),%eax
43a3a5:	5b                   	pop    %ebx
43a3a6:	59                   	pop    %ecx
43a3a7:	5d                   	pop    %ebp
43a3a8:	c2 0c 00             	ret    $0xc
43a3ab:	90                   	nop
43a3ac:	56                   	push   %esi
43a3ad:	57                   	push   %edi
43a3ae:	55                   	push   %ebp
43a3af:	51                   	push   %ecx
43a3b0:	89 14 24             	mov    %edx,(%esp)
43a3b3:	8b f8                	mov    %eax,%edi
43a3b5:	b2 01                	mov    $0x1,%dl
43a3b7:	8b c7                	mov    %edi,%eax
43a3b9:	e8 82 1f 01 00       	call   0x44c340
43a3be:	8b e8                	mov    %eax,%ebp
43a3c0:	e8 83 c8 ff ff       	call   0x436c48
43a3c5:	8b f0                	mov    %eax,%esi
43a3c7:	85 f6                	test   %esi,%esi
43a3c9:	74 12                	je     0x43a3dd
43a3cb:	3b ee                	cmp    %esi,%ebp
43a3cd:	74 0e                	je     0x43a3dd
43a3cf:	3b fe                	cmp    %esi,%edi
43a3d1:	74 0a                	je     0x43a3dd
43a3d3:	8b 14 24             	mov    (%esp),%edx
43a3d6:	8b c6                	mov    %esi,%eax
43a3d8:	8b 08                	mov    (%eax),%ecx
43a3da:	ff 51 78             	call   *0x78(%ecx)
43a3dd:	8b 04 24             	mov    (%esp),%eax
43a3e0:	83 78 0c 00          	cmpl   $0x0,0xc(%eax)
43a3e4:	75 38                	jne    0x43a41e
43a3e6:	85 ed                	test   %ebp,%ebp
43a3e8:	74 14                	je     0x43a3fe
43a3ea:	3b fd                	cmp    %ebp,%edi
43a3ec:	74 10                	je     0x43a3fe
43a3ee:	8b 14 24             	mov    (%esp),%edx
43a3f1:	8b c5                	mov    %ebp,%eax
43a3f3:	66 be c9 ff          	mov    $0xffc9,%si
43a3f7:	e8 f4 96 fc ff       	call   0x403af0
43a3fc:	eb 20                	jmp    0x43a41e
43a3fe:	8b 04 24             	mov    (%esp),%eax
43a401:	8b 40 08             	mov    0x8(%eax),%eax
43a404:	50                   	push   %eax
43a405:	8b 4c 24 04          	mov    0x4(%esp),%ecx
43a409:	8b 49 04             	mov    0x4(%ecx),%ecx
43a40c:	ba 43 b0 00 00       	mov    $0xb043,%edx
43a411:	8b c7                	mov    %edi,%eax
43a413:	e8 04 0d 00 00       	call   0x43b11c
43a418:	8b 14 24             	mov    (%esp),%edx
43a41b:	89 42 0c             	mov    %eax,0xc(%edx)
43a41e:	5a                   	pop    %edx
43a41f:	5d                   	pop    %ebp
43a420:	5f                   	pop    %edi
43a421:	5e                   	pop    %esi
43a422:	c3                   	ret
43a423:	90                   	nop
43a424:	56                   	push   %esi
43a425:	8b 70 30             	mov    0x30(%eax),%esi
43a428:	85 f6                	test   %esi,%esi
43a42a:	74 0a                	je     0x43a436
43a42c:	8b c6                	mov    %esi,%eax
43a42e:	8b 10                	mov    (%eax),%edx
43a430:	ff 92 8c 00 00 00    	call   *0x8c(%edx)
43a436:	5e                   	pop    %esi
43a437:	c3                   	ret
43a438:	55                   	push   %ebp
43a439:	8b ec                	mov    %esp,%ebp
43a43b:	83 c4 f8             	add    $0xfffffff8,%esp
43a43e:	53                   	push   %ebx
43a43f:	89 45 fc             	mov    %eax,-0x4(%ebp)
43a442:	8b 45 fc             	mov    -0x4(%ebp),%eax
43a445:	80 78 57 00          	cmpb   $0x0,0x57(%eax)
43a449:	75 1a                	jne    0x43a465
43a44b:	8b 45 fc             	mov    -0x4(%ebp),%eax
43a44e:	f6 40 1c 10          	testb  $0x10,0x1c(%eax)
43a452:	0f 84 d6 00 00 00    	je     0x43a52e
43a458:	8b 45 fc             	mov    -0x4(%ebp),%eax
43a45b:	f6 40 51 04          	testb  $0x4,0x51(%eax)
43a45f:	0f 85 c9 00 00 00    	jne    0x43a52e
43a465:	8b 45 fc             	mov    -0x4(%ebp),%eax
43a468:	83 78 30 00          	cmpl   $0x0,0x30(%eax)
43a46c:	0f 84 bc 00 00 00    	je     0x43a52e
43a472:	8b 45 fc             	mov    -0x4(%ebp),%eax
43a475:	8b 40 30             	mov    0x30(%eax),%eax
43a478:	e8 8f 77 00 00       	call   0x441c0c
43a47d:	84 c0                	test   %al,%al
43a47f:	0f 84 a9 00 00 00    	je     0x43a52e
43a485:	8b 45 fc             	mov    -0x4(%ebp),%eax
43a488:	f6 40 50 40          	testb  $0x40,0x50(%eax)
43a48c:	0f 84 86 00 00 00    	je     0x43a518
43a492:	8b 45 fc             	mov    -0x4(%ebp),%eax
43a495:	8b 40 30             	mov    0x30(%eax),%eax
43a498:	e8 13 74 00 00       	call   0x4418b0
43a49d:	50                   	push   %eax
43a49e:	e8 15 ca fc ff       	call   0x406eb8
43a4a3:	89 45 f8             	mov    %eax,-0x8(%ebp)
43a4a6:	33 c9                	xor    %ecx,%ecx
43a4a8:	55                   	push   %ebp
43a4a9:	68 11 a5 43 00       	push   $0x43a511
43a4ae:	64 ff 31             	push   %fs:(%ecx)
43a4b1:	64 89 21             	mov    %esp,%fs:(%ecx)
43a4b4:	8b 55 fc             	mov    -0x4(%ebp),%edx
43a4b7:	8b 52 44             	mov    0x44(%edx),%edx
43a4ba:	8b ca                	mov    %edx,%ecx
43a4bc:	8b 5d fc             	mov    -0x4(%ebp),%ebx
43a4bf:	03 4b 4c             	add    0x4c(%ebx),%ecx
43a4c2:	51                   	push   %ecx
43a4c3:	8b 45 fc             	mov    -0x4(%ebp),%eax
43a4c6:	8b 40 40             	mov    0x40(%eax),%eax
43a4c9:	8b c8                	mov    %eax,%ecx
43a4cb:	8b 5d fc             	mov    -0x4(%ebp),%ebx
43a4ce:	03 4b 48             	add    0x48(%ebx),%ecx
43a4d1:	51                   	push   %ecx
43a4d2:	52                   	push   %edx
43a4d3:	50                   	push   %eax
43a4d4:	8b 45 f8             	mov    -0x8(%ebp),%eax
43a4d7:	50                   	push   %eax
43a4d8:	e8 73 c7 fc ff       	call   0x406c50
43a4dd:	8b 45 fc             	mov    -0x4(%ebp),%eax
43a4e0:	8b 40 30             	mov    0x30(%eax),%eax
43a4e3:	8b 4d fc             	mov    -0x4(%ebp),%ecx
43a4e6:	8b 55 f8             	mov    -0x8(%ebp),%edx
43a4e9:	e8 d2 4e 00 00       	call   0x43f3c0
43a4ee:	33 c0                	xor    %eax,%eax
43a4f0:	5a                   	pop    %edx
43a4f1:	59                   	pop    %ecx
43a4f2:	59                   	pop    %ecx
43a4f3:	64 89 10             	mov    %edx,%fs:(%eax)
43a4f6:	68 2e a5 43 00       	push   $0x43a52e
43a4fb:	8b 45 f8             	mov    -0x8(%ebp),%eax
43a4fe:	50                   	push   %eax
43a4ff:	8b 45 fc             	mov    -0x4(%ebp),%eax
43a502:	8b 40 30             	mov    0x30(%eax),%eax
43a505:	e8 a6 73 00 00       	call   0x4418b0
43a50a:	50                   	push   %eax
43a50b:	e8 18 cc fc ff       	call   0x407128
43a510:	c3                   	ret
43a511:	e9 72 9b fc ff       	jmp    0x404088
43a516:	eb e3                	jmp    0x43a4fb
43a518:	8b 45 fc             	mov    -0x4(%ebp),%eax
43a51b:	8b 10                	mov    (%eax),%edx
43a51d:	ff 92 80 00 00 00    	call   *0x80(%edx)
43a523:	8b 45 fc             	mov    -0x4(%ebp),%eax
43a526:	8b 10                	mov    (%eax),%edx
43a528:	ff 92 8c 00 00 00    	call   *0x8c(%edx)
43a52e:	5b                   	pop    %ebx
43a52f:	59                   	pop    %ecx
43a530:	59                   	pop    %ecx
43a531:	5d                   	pop    %ebp
43a532:	c3                   	ret
43a533:	90                   	nop
43a534:	33 c0                	xor    %eax,%eax
43a536:	c3                   	ret
43a537:	90                   	nop
43a538:	8b 15 0c d8 46 00    	mov    0x46d80c,%edx
43a53e:	80 7a 0d 00          	cmpb   $0x0,0xd(%edx)
43a542:	74 06                	je     0x43a54a
43a544:	80 78 5f 00          	cmpb   $0x0,0x5f(%eax)
43a548:	75 03                	jne    0x43a54d
43a54a:	33 c0                	xor    %eax,%eax
43a54c:	c3                   	ret
43a54d:	b0 01                	mov    $0x1,%al
43a54f:	c3                   	ret
43a550:	8b 15 0c d8 46 00    	mov    0x46d80c,%edx
43a556:	80 7a 0d 00          	cmpb   $0x0,0xd(%edx)
43a55a:	74 06                	je     0x43a562
43a55c:	80 78 5f 01          	cmpb   $0x1,0x5f(%eax)
43a560:	74 03                	je     0x43a565
43a562:	33 c0                	xor    %eax,%eax
43a564:	c3                   	ret
43a565:	b0 01                	mov    $0x1,%al
43a567:	c3                   	ret
43a568:	8b 15 0c d8 46 00    	mov    0x46d80c,%edx
43a56e:	80 7a 0d 00          	cmpb   $0x0,0xd(%edx)
43a572:	74 09                	je     0x43a57d
43a574:	0f b6 40 5f          	movzbl 0x5f(%eax),%eax
43a578:	48                   	dec    %eax
43a579:	2c 02                	sub    $0x2,%al
43a57b:	72 03                	jb     0x43a580
43a57d:	33 c0                	xor    %eax,%eax
43a57f:	c3                   	ret
43a580:	b0 01                	mov    $0x1,%al
43a582:	c3                   	ret
43a583:	90                   	nop
43a584:	8b 15 ec 14 47 00    	mov    0x4714ec,%edx
43a58a:	8b 4a 08             	mov    0x8(%edx),%ecx
43a58d:	8b 15 ec 14 47 00    	mov    0x4714ec,%edx
43a593:	0f b6 52 04          	movzbl 0x4(%edx),%edx
43a597:	e8 04 00 00 00       	call   0x43a5a0
43a59c:	c3                   	ret
43a59d:	8d 40 00             	lea    0x0(%eax),%eax
43a5a0:	53                   	push   %ebx
43a5a1:	56                   	push   %esi
43a5a2:	57                   	push   %edi
43a5a3:	83 c4 ec             	add    $0xffffffec,%esp
43a5a6:	8b f1                	mov    %ecx,%esi
43a5a8:	8b da                	mov    %edx,%ebx
43a5aa:	8b f8                	mov    %eax,%edi
43a5ac:	a1 ec 14 47 00       	mov    0x4714ec,%eax
43a5b1:	e8 fa c2 00 00       	call   0x4468b0
43a5b6:	84 c0                	test   %al,%al
43a5b8:	74 0c                	je     0x43a5c6
43a5ba:	33 d2                	xor    %edx,%edx
43a5bc:	a1 ec 14 47 00       	mov    0x4714ec,%eax
43a5c1:	e8 aa c3 00 00       	call   0x446970
43a5c6:	8b c7                	mov    %edi,%eax
43a5c8:	8b 15 a0 a7 44 00    	mov    0x44a7a0,%edx
43a5ce:	e8 ad 94 fc ff       	call   0x403a80
43a5d3:	84 c0                	test   %al,%al
43a5d5:	74 20                	je     0x43a5f7
43a5d7:	80 bf 8f 00 00 00 01 	cmpb   $0x1,0x8f(%edi)
43a5de:	74 17                	je     0x43a5f7
43a5e0:	8b 0d b8 d6 46 00    	mov    0x46d6b8,%ecx
43a5e6:	b2 01                	mov    $0x1,%dl
43a5e8:	a1 64 57 41 00       	mov    0x415764,%eax
43a5ed:	e8 06 1d fd ff       	call   0x40c2f8
43a5f2:	e8 71 9b fc ff       	call   0x404168
43a5f7:	8b c7                	mov    %edi,%eax
43a5f9:	e8 52 0b 00 00       	call   0x43b150
43a5fe:	83 3d 10 15 47 00 00 	cmpl   $0x0,0x471510
43a605:	74 09                	je     0x43a610
43a607:	83 3d 10 15 47 00 ff 	cmpl   $0xffffffff,0x471510
43a60e:	75 75                	jne    0x43a685
43a610:	33 c0                	xor    %eax,%eax
43a612:	a3 10 15 47 00       	mov    %eax,0x471510
43a617:	f6 47 54 01          	testb  $0x1,0x54(%edi)
43a61b:	74 48                	je     0x43a665
43a61d:	54                   	push   %esp
43a61e:	e8 8d c8 fc ff       	call   0x406eb0
43a623:	8d 4c 24 0c          	lea    0xc(%esp),%ecx
43a627:	8b d4                	mov    %esp,%edx
43a629:	8b c7                	mov    %edi,%eax
43a62b:	e8 ac f3 ff ff       	call   0x4399dc
43a630:	8b 44 24 0c          	mov    0xc(%esp),%eax
43a634:	89 04 24             	mov    %eax,(%esp)
43a637:	8b 44 24 10          	mov    0x10(%esp),%eax
43a63b:	89 44 24 04          	mov    %eax,0x4(%esp)
43a63f:	0f b7 04 24          	movzwl (%esp),%eax
43a643:	66 89 44 24 08       	mov    %ax,0x8(%esp)
43a648:	0f b7 44 24 04       	movzwl 0x4(%esp),%eax
43a64d:	66 89 44 24 0a       	mov    %ax,0xa(%esp)
43a652:	8b 44 24 08          	mov    0x8(%esp),%eax
43a656:	50                   	push   %eax
43a657:	33 c9                	xor    %ecx,%ecx
43a659:	ba 02 02 00 00       	mov    $0x202,%edx
43a65e:	8b c7                	mov    %edi,%eax
43a660:	e8 b7 0a 00 00       	call   0x43b11c
43a665:	85 f6                	test   %esi,%esi
43a667:	7d 08                	jge    0x43a671
43a669:	a1 ec 14 47 00       	mov    0x4714ec,%eax
43a66e:	8b 70 08             	mov    0x8(%eax),%esi
43a671:	83 3d 10 15 47 00 ff 	cmpl   $0xffffffff,0x471510
43a678:	74 0b                	je     0x43a685
43a67a:	8b ce                	mov    %esi,%ecx
43a67c:	8b d3                	mov    %ebx,%edx
43a67e:	8b c7                	mov    %edi,%eax
43a680:	e8 e7 d7 ff ff       	call   0x437e6c
43a685:	83 c4 14             	add    $0x14,%esp
43a688:	5f                   	pop    %edi
43a689:	5e                   	pop    %esi
43a68a:	5b                   	pop    %ebx
43a68b:	c3                   	ret
43a68c:	c3                   	ret
43a68d:	8d 40 00             	lea    0x0(%eax),%eax
43a690:	3b 05 10 15 47 00    	cmp    0x471510,%eax
43a696:	0f 94 c0             	sete   %al
43a699:	c3                   	ret
43a69a:	8b c0                	mov    %eax,%eax
43a69c:	55                   	push   %ebp
43a69d:	8b ec                	mov    %esp,%ebp
43a69f:	53                   	push   %ebx
43a6a0:	56                   	push   %esi
43a6a1:	8b 75 08             	mov    0x8(%ebp),%esi
43a6a4:	c6 06 00             	movb   $0x0,(%esi)
43a6a7:	66 83 b8 e2 00 00 00 	cmpw   $0x0,0xe2(%eax)