43f276:	6a 03                	push   $0x3
43f278:	68 00 00 00 40       	push   $0x40000000
43f27d:	68 28 61 46 00       	push   $0x466128
43f282:	ff 15 d8 b0 44 00    	call   *0x44b0d8
43f288:	a3 70 a7 46 00       	mov    %eax,0x46a770
43f28d:	c3                   	ret
43f28e:	a1 70 a7 46 00       	mov    0x46a770,%eax
43f293:	83 f8 ff             	cmp    $0xffffffff,%eax
43f296:	74 0c                	je     0x43f2a4
43f298:	83 f8 fe             	cmp    $0xfffffffe,%eax
43f29b:	74 07                	je     0x43f2a4
43f29d:	50                   	push   %eax
43f29e:	ff 15 d4 b0 44 00    	call   *0x44b0d4
43f2a4:	c3                   	ret
43f2a5:	8b ff                	mov    %edi,%edi
43f2a7:	55                   	push   %ebp
43f2a8:	8b ec                	mov    %esp,%ebp
43f2aa:	66 8b 4d 0e          	mov    0xe(%ebp),%cx
43f2ae:	ba f0 7f 00 00       	mov    $0x7ff0,%edx
43f2b3:	66 8b c1             	mov    %cx,%ax
43f2b6:	66 23 c2             	and    %dx,%ax
43f2b9:	66 3b c2             	cmp    %dx,%ax
43f2bc:	75 33                	jne    0x43f2f1
43f2be:	dd 45 08             	fldl   0x8(%ebp)
43f2c1:	51                   	push   %ecx
43f2c2:	51                   	push   %ecx
43f2c3:	dd 1c 24             	fstpl  (%esp)
43f2c6:	e8 46 ff ff ff       	call   0x43f211
43f2cb:	59                   	pop    %ecx
43f2cc:	59                   	pop    %ecx
43f2cd:	83 e8 01             	sub    $0x1,%eax
43f2d0:	74 18                	je     0x43f2ea
43f2d2:	83 e8 01             	sub    $0x1,%eax
43f2d5:	74 0e                	je     0x43f2e5
43f2d7:	83 e8 01             	sub    $0x1,%eax
43f2da:	74 05                	je     0x43f2e1
43f2dc:	33 c0                	xor    %eax,%eax
43f2de:	40                   	inc    %eax
43f2df:	5d                   	pop    %ebp
43f2e0:	c3                   	ret
43f2e1:	6a 02                	push   $0x2
43f2e3:	eb 02                	jmp    0x43f2e7
43f2e5:	6a 04                	push   $0x4
43f2e7:	58                   	pop    %eax
43f2e8:	5d                   	pop    %ebp
43f2e9:	c3                   	ret
43f2ea:	b8 00 02 00 00       	mov    $0x200,%eax
43f2ef:	5d                   	pop    %ebp
43f2f0:	c3                   	ret
43f2f1:	0f b7 c9             	movzwl %cx,%ecx
43f2f4:	81 e1 00 80 00 00    	and    $0x8000,%ecx
43f2fa:	66 85 c0             	test   %ax,%ax
43f2fd:	75 1e                	jne    0x43f31d
43f2ff:	f7 45 0c ff ff 0f 00 	testl  $0xfffff,0xc(%ebp)
43f306:	75 06                	jne    0x43f30e
43f308:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
43f30c:	74 0f                	je     0x43f31d
43f30e:	f7 d9                	neg    %ecx
43f310:	1b c9                	sbb    %ecx,%ecx
43f312:	83 e1 90             	and    $0xffffff90,%ecx
43f315:	8d 81 80 00 00 00    	lea    0x80(%ecx),%eax
43f31b:	5d                   	pop    %ebp
43f31c:	c3                   	ret
43f31d:	dd 45 08             	fldl   0x8(%ebp)
43f320:	d9 ee                	fldz
43f322:	da e9                	fucompp
43f324:	df e0                	fnstsw %ax
43f326:	f6 c4 44             	test   $0x44,%ah
43f329:	7a 0c                	jp     0x43f337
43f32b:	f7 d9                	neg    %ecx
43f32d:	1b c9                	sbb    %ecx,%ecx
43f32f:	83 e1 e0             	and    $0xffffffe0,%ecx
43f332:	8d 41 40             	lea    0x40(%ecx),%eax
43f335:	5d                   	pop    %ebp
43f336:	c3                   	ret
43f337:	f7 d9                	neg    %ecx
43f339:	1b c9                	sbb    %ecx,%ecx
43f33b:	81 e1 08 ff ff ff    	and    $0xffffff08,%ecx
43f341:	8d 81 00 01 00 00    	lea    0x100(%ecx),%eax
43f347:	5d                   	pop    %ebp
43f348:	c3                   	ret
43f349:	b8 4c a9 46 00       	mov    $0x46a94c,%eax
43f34e:	e9 00 00 00 00       	jmp    0x43f353
43f353:	51                   	push   %ecx
43f354:	52                   	push   %edx
43f355:	50                   	push   %eax
43f356:	68 24 80 46 00       	push   $0x468024
43f35b:	e8 b4 a4 00 00       	call   0x449814
43f360:	5a                   	pop    %edx
43f361:	59                   	pop    %ecx
43f362:	ff e0                	jmp    *%eax
43f364:	ff 25 4c a9 46 00    	jmp    *0x46a94c
43f36a:	b8 44 a9 46 00       	mov    $0x46a944,%eax
43f36f:	e9 df ff ff ff       	jmp    0x43f353
43f374:	ff 25 44 a9 46 00    	jmp    *0x46a944
43f37a:	b8 48 a9 46 00       	mov    $0x46a948,%eax
43f37f:	e9 cf ff ff ff       	jmp    0x43f353
43f384:	ff 25 48 a9 46 00    	jmp    *0x46a948
43f38a:	b8 3c a9 46 00       	mov    $0x46a93c,%eax
43f38f:	e9 00 00 00 00       	jmp    0x43f394
43f394:	51                   	push   %ecx
43f395:	52                   	push   %edx
43f396:	50                   	push   %eax
43f397:	68 44 80 46 00       	push   $0x468044
43f39c:	e8 73 a4 00 00       	call   0x449814
43f3a1:	5a                   	pop    %edx
43f3a2:	59                   	pop    %ecx
43f3a3:	ff e0                	jmp    *%eax
43f3a5:	b8 f4 a9 46 00       	mov    $0x46a9f4,%eax
43f3aa:	e9 00 00 00 00       	jmp    0x43f3af
43f3af:	51                   	push   %ecx
43f3b0:	52                   	push   %edx
43f3b1:	50                   	push   %eax
43f3b2:	68 64 80 46 00       	push   $0x468064
43f3b7:	e8 58 a4 00 00       	call   0x449814
43f3bc:	5a                   	pop    %edx
43f3bd:	59                   	pop    %ecx
43f3be:	ff e0                	jmp    *%eax
43f3c0:	ff 25 f4 a9 46 00    	jmp    *0x46a9f4
43f3c6:	b8 f0 a9 46 00       	mov    $0x46a9f0,%eax
43f3cb:	e9 df ff ff ff       	jmp    0x43f3af
43f3d0:	ff 25 f0 a9 46 00    	jmp    *0x46a9f0
43f3d6:	b8 ec a9 46 00       	mov    $0x46a9ec,%eax
43f3db:	e9 cf ff ff ff       	jmp    0x43f3af
43f3e0:	ff 25 ec a9 46 00    	jmp    *0x46a9ec
43f3e6:	b8 e8 a9 46 00       	mov    $0x46a9e8,%eax
43f3eb:	e9 bf ff ff ff       	jmp    0x43f3af
43f3f0:	ff 25 e8 a9 46 00    	jmp    *0x46a9e8
43f3f6:	b8 7c a9 46 00       	mov    $0x46a97c,%eax
43f3fb:	e9 00 00 00 00       	jmp    0x43f400
43f400:	51                   	push   %ecx
43f401:	52                   	push   %edx
43f402:	50                   	push   %eax
43f403:	68 84 80 46 00       	push   $0x468084
43f408:	e8 07 a4 00 00       	call   0x449814
43f40d:	5a                   	pop    %edx
43f40e:	59                   	pop    %ecx
43f40f:	ff e0                	jmp    *%eax
43f411:	b8 9c a9 46 00       	mov    $0x46a99c,%eax
43f416:	e9 00 00 00 00       	jmp    0x43f41b
43f41b:	51                   	push   %ecx
43f41c:	52                   	push   %edx
43f41d:	50                   	push   %eax
43f41e:	68 a4 80 46 00       	push   $0x4680a4
43f423:	e8 ec a3 00 00       	call   0x449814
43f428:	5a                   	pop    %edx
43f429:	59                   	pop    %ecx
43f42a:	ff e0                	jmp    *%eax
43f42c:	ff 25 9c a9 46 00    	jmp    *0x46a99c
43f432:	b8 a0 a9 46 00       	mov    $0x46a9a0,%eax
43f437:	e9 df ff ff ff       	jmp    0x43f41b
43f43c:	ff 25 a0 a9 46 00    	jmp    *0x46a9a0
43f442:	b8 a4 a9 46 00       	mov    $0x46a9a4,%eax
43f447:	e9 cf ff ff ff       	jmp    0x43f41b
43f44c:	ff 25 a4 a9 46 00    	jmp    *0x46a9a4
43f452:	b8 a8 a9 46 00       	mov    $0x46a9a8,%eax
43f457:	e9 bf ff ff ff       	jmp    0x43f41b
43f45c:	ff 25 a8 a9 46 00    	jmp    *0x46a9a8
43f462:	55                   	push   %ebp
43f463:	8b ec                	mov    %esp,%ebp
43f465:	53                   	push   %ebx
43f466:	8b 5d 08             	mov    0x8(%ebp),%ebx
43f469:	56                   	push   %esi
43f46a:	8b 75 0c             	mov    0xc(%ebp),%esi
43f46d:	83 e6 80             	and    $0xffffff80,%esi
43f470:	57                   	push   %edi
43f471:	33 ff                	xor    %edi,%edi
43f473:	83 ee 80             	sub    $0xffffff80,%esi
43f476:	39 3b                	cmp    %edi,(%ebx)
43f478:	74 2a                	je     0x43f4a4
43f47a:	ff 33                	push   (%ebx)
43f47c:	e8 d0 46 fc ff       	call   0x403b51
43f481:	3b c6                	cmp    %esi,%eax
43f483:	73 44                	jae    0x43f4c9
43f485:	6a 01                	push   $0x1
43f487:	56                   	push   %esi
43f488:	ff 33                	push   (%ebx)
43f48a:	e8 e3 45 fc ff       	call   0x403a72
43f48f:	85 c0                	test   %eax,%eax
43f491:	75 0d                	jne    0x43f4a0
43f493:	b8 0e 00 07 80       	mov    $0x8007000e,%eax
43f498:	50                   	push   %eax
43f499:	68 97 01 00 00       	push   $0x197
43f49e:	eb 1d                	jmp    0x43f4bd
43f4a0:	89 03                	mov    %eax,(%ebx)
43f4a2:	eb 25                	jmp    0x43f4c9
43f4a4:	6a 01                	push   $0x1
43f4a6:	56                   	push   %esi
43f4a7:	e8 28 44 fc ff       	call   0x4038d4
43f4ac:	89 03                	mov    %eax,(%ebx)
43f4ae:	85 c0                	test   %eax,%eax
43f4b0:	75 17                	jne    0x43f4c9
43f4b2:	b8 0e 00 07 80       	mov    $0x8007000e,%eax
43f4b7:	50                   	push   %eax
43f4b8:	68 9e 01 00 00       	push   $0x19e
43f4bd:	68 90 61 46 00       	push   $0x466190
43f4c2:	8b f8                	mov    %eax,%edi
43f4c4:	e8 0a 43 fc ff       	call   0x4037d3
43f4c9:	8b c7                	mov    %edi,%eax
43f4cb:	5f                   	pop    %edi
43f4cc:	5e                   	pop    %esi
43f4cd:	5b                   	pop    %ebx
43f4ce:	5d                   	pop    %ebp
43f4cf:	c2 08 00             	ret    $0x8
43f4d2:	55                   	push   %ebp
43f4d3:	8b ec                	mov    %esp,%ebp
43f4d5:	51                   	push   %ecx
43f4d6:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
43f4da:	8d 45 fc             	lea    -0x4(%ebp),%eax
43f4dd:	53                   	push   %ebx
43f4de:	56                   	push   %esi
43f4df:	57                   	push   %edi
43f4e0:	8b 7d 10             	mov    0x10(%ebp),%edi
43f4e3:	50                   	push   %eax
43f4e4:	8b 1f                	mov    (%edi),%ebx
43f4e6:	53                   	push   %ebx
43f4e7:	ff 75 0c             	push   0xc(%ebp)
43f4ea:	e8 a3 48 00 00       	call   0x443d92
43f4ef:	8b f0                	mov    %eax,%esi
43f4f1:	85 f6                	test   %esi,%esi
43f4f3:	79 0f                	jns    0x43f504
43f4f5:	56                   	push   %esi
43f4f6:	6a 45                	push   $0x45
43f4f8:	68 90 61 46 00       	push   $0x466190
43f4fd:	e8 d1 42 fc ff       	call   0x4037d3
43f502:	eb 25                	jmp    0x43f529
43f504:	83 7d fc 08          	cmpl   $0x8,-0x4(%ebp)
43f508:	73 0a                	jae    0x43f514
43f50a:	be 57 00 07 80       	mov    $0x80070057,%esi
43f50f:	56                   	push   %esi
43f510:	6a 4b                	push   $0x4b
43f512:	eb e4                	jmp    0x43f4f8
43f514:	8b 55 08             	mov    0x8(%ebp),%edx
43f517:	8b 4d 14             	mov    0x14(%ebp),%ecx
43f51a:	8b 04 13             	mov    (%ebx,%edx,1),%eax
43f51d:	89 01                	mov    %eax,(%ecx)
43f51f:	8b 44 13 04          	mov    0x4(%ebx,%edx,1),%eax
43f523:	89 41 04             	mov    %eax,0x4(%ecx)
43f526:	83 07 08             	addl   $0x8,(%edi)
43f529:	5f                   	pop    %edi
43f52a:	8b c6                	mov    %esi,%eax
43f52c:	5e                   	pop    %esi
43f52d:	5b                   	pop    %ebx
43f52e:	8b e5                	mov    %ebp,%esp
43f530:	5d                   	pop    %ebp
43f531:	c2 10 00             	ret    $0x10
43f534:	55                   	push   %ebp
43f535:	8b ec                	mov    %esp,%ebp
43f537:	51                   	push   %ecx
43f538:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
43f53c:	8d 45 fc             	lea    -0x4(%ebp),%eax
43f53f:	53                   	push   %ebx
43f540:	56                   	push   %esi
43f541:	57                   	push   %edi
43f542:	8b 7d 10             	mov    0x10(%ebp),%edi
43f545:	50                   	push   %eax
43f546:	8b 1f                	mov    (%edi),%ebx
43f548:	53                   	push   %ebx
43f549:	ff 75 0c             	push   0xc(%ebp)
43f54c:	e8 41 48 00 00       	call   0x443d92
43f551:	8b f0                	mov    %eax,%esi
43f553:	85 f6                	test   %esi,%esi
43f555:	79 0f                	jns    0x43f566
43f557:	56                   	push   %esi
43f558:	6a 25                	push   $0x25
43f55a:	68 90 61 46 00       	push   $0x466190
43f55f:	e8 6f 42 fc ff       	call   0x4037d3
43f564:	eb 1e                	jmp    0x43f584
43f566:	83 7d fc 04          	cmpl   $0x4,-0x4(%ebp)
43f56a:	73 0a                	jae    0x43f576
43f56c:	be 57 00 07 80       	mov    $0x80070057,%esi
43f571:	56                   	push   %esi
43f572:	6a 2b                	push   $0x2b
43f574:	eb e4                	jmp    0x43f55a
43f576:	8b 45 08             	mov    0x8(%ebp),%eax
43f579:	8b 0c 03             	mov    (%ebx,%eax,1),%ecx
43f57c:	8b 45 14             	mov    0x14(%ebp),%eax
43f57f:	89 08                	mov    %ecx,(%eax)
43f581:	83 07 04             	addl   $0x4,(%edi)
43f584:	5f                   	pop    %edi
43f585:	8b c6                	mov    %esi,%eax
43f587:	5e                   	pop    %esi
43f588:	5b                   	pop    %ebx
43f589:	8b e5                	mov    %ebp,%esp
43f58b:	5d                   	pop    %ebp
43f58c:	c2 10 00             	ret    $0x10
43f58f:	55                   	push   %ebp
43f590:	8b ec                	mov    %esp,%ebp
43f592:	51                   	push   %ecx
43f593:	51                   	push   %ecx
43f594:	83 65 f8 00          	andl   $0x0,-0x8(%ebp)
43f598:	8d 45 fc             	lea    -0x4(%ebp),%eax
43f59b:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
43f59f:	53                   	push   %ebx
43f5a0:	56                   	push   %esi
43f5a1:	57                   	push   %edi
43f5a2:	8b 7d 10             	mov    0x10(%ebp),%edi
43f5a5:	50                   	push   %eax
43f5a6:	8b 1f                	mov    (%edi),%ebx
43f5a8:	53                   	push   %ebx
43f5a9:	ff 75 0c             	push   0xc(%ebp)
43f5ac:	e8 e1 47 00 00       	call   0x443d92
43f5b1:	8b f0                	mov    %eax,%esi
43f5b3:	85 f6                	test   %esi,%esi
43f5b5:	79 12                	jns    0x43f5c9
43f5b7:	56                   	push   %esi
43f5b8:	6a 67                	push   $0x67
43f5ba:	68 90 61 46 00       	push   $0x466190
43f5bf:	e8 0f 42 fc ff       	call   0x4037d3
43f5c4:	e9 ab 00 00 00       	jmp    0x43f674
43f5c9:	83 7d fc 04          	cmpl   $0x4,-0x4(%ebp)
43f5cd:	73 0c                	jae    0x43f5db
43f5cf:	b8 57 00 07 80       	mov    $0x80070057,%eax
43f5d4:	50                   	push   %eax
43f5d5:	8b f0                	mov    %eax,%esi
43f5d7:	6a 6d                	push   $0x6d
43f5d9:	eb df                	jmp    0x43f5ba
43f5db:	8b 45 08             	mov    0x8(%ebp),%eax
43f5de:	8d 4d f8             	lea    -0x8(%ebp),%ecx
43f5e1:	51                   	push   %ecx
43f5e2:	6a 02                	push   $0x2
43f5e4:	59                   	pop    %ecx
43f5e5:	8b 04 03             	mov    (%ebx,%eax,1),%eax
43f5e8:	89 45 10             	mov    %eax,0x10(%ebp)
43f5eb:	f7 e1                	mul    %ecx
43f5ed:	52                   	push   %edx
43f5ee:	50                   	push   %eax
43f5ef:	e8 3a 78 fc ff       	call   0x406e2e
43f5f4:	8b f0                	mov    %eax,%esi
43f5f6:	85 f6                	test   %esi,%esi
43f5f8:	79 05                	jns    0x43f5ff
43f5fa:	56                   	push   %esi
43f5fb:	6a 74                	push   $0x74
43f5fd:	eb bb                	jmp    0x43f5ba
43f5ff:	8d 4b 04             	lea    0x4(%ebx),%ecx
43f602:	83 c8 ff             	or     $0xffffffff,%eax
43f605:	3b cb                	cmp    %ebx,%ecx
43f607:	0f 43 c1             	cmovae %ecx,%eax
43f60a:	1b f6                	sbb    %esi,%esi
43f60c:	81 e6 16 02 07 80    	and    $0x80070216,%esi
43f612:	89 07                	mov    %eax,(%edi)
43f614:	3b cb                	cmp    %ebx,%ecx
43f616:	73 05                	jae    0x43f61d
43f618:	56                   	push   %esi
43f619:	6a 77                	push   $0x77
43f61b:	eb 9d                	jmp    0x43f5ba
43f61d:	8d 4d fc             	lea    -0x4(%ebp),%ecx
43f620:	51                   	push   %ecx
43f621:	50                   	push   %eax
43f622:	ff 75 0c             	push   0xc(%ebp)