410284:	8b 0d 1c 8a 43 00    	mov    0x438a1c,%ecx
41028a:	85 c9                	test   %ecx,%ecx
41028c:	74 1a                	je     0x4102a8
41028e:	8b 01                	mov    (%ecx),%eax
410290:	51                   	push   %ecx
410291:	8b 70 08             	mov    0x8(%eax),%esi
410294:	8b ce                	mov    %esi,%ecx
410296:	ff 15 20 a5 43 00    	call   *0x43a520
41029c:	ff d6                	call   *%esi
41029e:	c7 05 1c 8a 43 00 00 	movl   $0x0,0x438a1c
4102a5:	00 00 00
4102a8:	e8 20 74 00 00       	call   0x4176cd
4102ad:	8b 4d 04             	mov    0x4(%ebp),%ecx
4102b0:	85 c0                	test   %eax,%eax
4102b2:	0f 88 f3 18 00 00    	js     0x411bab
4102b8:	e8 cb c1 ff ff       	call   0x40c488
4102bd:	ff 35 c8 8d 43 00    	push   0x438dc8
4102c3:	ff 15 c4 a2 43 00    	call   *0x43a2c4
4102c9:	85 c0                	test   %eax,%eax
4102cb:	0f 84 ea 18 00 00    	je     0x411bbb
4102d1:	8d 8d 68 bf ff ff    	lea    -0x4098(%ebp),%ecx
4102d7:	e8 f3 f4 ff ff       	call   0x40f7cf
4102dc:	c6 45 fc 08          	movb   $0x8,-0x4(%ebp)
4102e0:	ff b5 50 bb ff ff    	push   -0x44b0(%ebp)
4102e6:	e8 6c e0 ff ff       	call   0x40e357
4102eb:	8d 85 c8 be ff ff    	lea    -0x4138(%ebp),%eax
4102f1:	50                   	push   %eax
4102f2:	8d 85 b0 b1 ff ff    	lea    -0x4e50(%ebp),%eax
4102f8:	50                   	push   %eax
4102f9:	8d 8d d4 a7 ff ff    	lea    -0x582c(%ebp),%ecx
4102ff:	e8 a9 4d 00 00       	call   0x4150ad
410304:	c7 85 24 a8 ff ff 00 	movl   $0x0,-0x57dc(%ebp)
41030b:	00 00 00
41030e:	c7 85 30 a8 ff ff 00 	movl   $0x0,-0x57d0(%ebp)
410315:	00 00 00
410318:	c7 85 34 a8 ff ff 00 	movl   $0x0,-0x57cc(%ebp)
41031f:	00 00 00
410322:	8d 85 54 a7 ff ff    	lea    -0x58ac(%ebp),%eax
410328:	c6 45 fc 0c          	movb   $0xc,-0x4(%ebp)
41032c:	50                   	push   %eax
41032d:	51                   	push   %ecx
41032e:	8b d1                	mov    %ecx,%edx
410330:	8d 8d b0 b1 ff ff    	lea    -0x4e50(%ebp),%ecx
410336:	e8 a2 d3 ff ff       	call   0x40d6dd
41033b:	8b bd 18 a8 ff ff    	mov    -0x57e8(%ebp),%edi
410341:	8b f0                	mov    %eax,%esi
410343:	89 b5 3c a8 ff ff    	mov    %esi,-0x57c4(%ebp)
410349:	85 f6                	test   %esi,%esi
41034b:	78 11                	js     0x41035e
41034d:	83 7f 14 00          	cmpl   $0x0,0x14(%edi)
410351:	74 0b                	je     0x41035e
410353:	be 23 0d 04 80       	mov    $0x80040d23,%esi
410358:	89 b5 3c a8 ff ff    	mov    %esi,-0x57c4(%ebp)
41035e:	8d 8d 38 a8 ff ff    	lea    -0x57c8(%ebp),%ecx
410364:	e8 3e 4d 00 00       	call   0x4150a7
410369:	c7 85 28 a8 ff ff 00 	movl   $0x0,-0x57d8(%ebp)
410370:	00 00 00
410373:	c6 45 fc 0e          	movb   $0xe,-0x4(%ebp)
410377:	81 fe 25 12 04 00    	cmp    $0x41225,%esi
41037d:	0f 85 d9 01 00 00    	jne    0x41055c
410383:	c7 85 ec a7 ff ff 00 	movl   $0x0,-0x5814(%ebp)
41038a:	00 00 00
41038d:	c6 45 fc 0f          	movb   $0xf,-0x4(%ebp)
410391:	8d 8d ec a7 ff ff    	lea    -0x5814(%ebp),%ecx
410397:	8b 85 d4 a7 ff ff    	mov    -0x582c(%ebp),%eax
41039d:	51                   	push   %ecx
41039e:	68 90 55 40 00       	push   $0x405590
4103a3:	50                   	push   %eax
4103a4:	8b 30                	mov    (%eax),%esi
4103a6:	8b 36                	mov    (%esi),%esi
4103a8:	8b ce                	mov    %esi,%ecx
4103aa:	ff 15 20 a5 43 00    	call   *0x43a520
4103b0:	ff d6                	call   *%esi
4103b2:	8b d8                	mov    %eax,%ebx
4103b4:	89 9d 3c a8 ff ff    	mov    %ebx,-0x57c4(%ebp)
4103ba:	85 db                	test   %ebx,%ebx
4103bc:	78 28                	js     0x4103e6
4103be:	8b 95 ec a7 ff ff    	mov    -0x5814(%ebp),%edx
4103c4:	8d 8d b0 b1 ff ff    	lea    -0x4e50(%ebp),%ecx
4103ca:	e8 95 98 01 00       	call   0x429c64
4103cf:	83 ec 08             	sub    $0x8,%esp
4103d2:	89 85 3c a8 ff ff    	mov    %eax,-0x57c4(%ebp)
4103d8:	b9 28 8f 43 00       	mov    $0x438f28,%ecx
4103dd:	8b d8                	mov    %eax,%ebx
4103df:	6a 00                	push   $0x0
4103e1:	e8 51 b8 00 00       	call   0x41bc37
4103e6:	8d 8d ec a7 ff ff    	lea    -0x5814(%ebp),%ecx
4103ec:	c6 45 fc 0e          	movb   $0xe,-0x4(%ebp)
4103f0:	e8 0a be ff ff       	call   0x40c1ff
4103f5:	85 db                	test   %ebx,%ebx
4103f7:	0f 88 b1 00 00 00    	js     0x4104ae
4103fd:	8d 8d 38 a8 ff ff    	lea    -0x57c8(%ebp),%ecx
410403:	e8 61 58 01 00       	call   0x425c69
410408:	50                   	push   %eax
410409:	8d 8d b0 b1 ff ff    	lea    -0x4e50(%ebp),%ecx
41040f:	e8 8a ec 01 00       	call   0x42f09e
410414:	8b d8                	mov    %eax,%ebx
410416:	89 9d 3c a8 ff ff    	mov    %ebx,-0x57c4(%ebp)
41041c:	85 db                	test   %ebx,%ebx
41041e:	0f 88 8a 00 00 00    	js     0x4104ae
410424:	8d 8d 38 a8 ff ff    	lea    -0x57c8(%ebp),%ecx
41042a:	e8 1a 58 01 00       	call   0x425c49
41042f:	84 c0                	test   %al,%al
410431:	0f 84 13 01 00 00    	je     0x41054a
410437:	8d 8d d4 a7 ff ff    	lea    -0x582c(%ebp),%ecx
41043d:	e8 d4 b3 01 00       	call   0x42b816
410442:	8d 8d 38 a8 ff ff    	lea    -0x57c8(%ebp),%ecx
410448:	e8 fc 57 01 00       	call   0x425c49
41044d:	84 c0                	test   %al,%al
41044f:	74 0b                	je     0x41045c
410451:	ff b5 38 a8 ff ff    	push   -0x57c8(%ebp)
410457:	e8 26 84 01 00       	call   0x428882
41045c:	8d 85 54 a7 ff ff    	lea    -0x58ac(%ebp),%eax
410462:	50                   	push   %eax
410463:	51                   	push   %ecx
410464:	8d 95 d4 a7 ff ff    	lea    -0x582c(%ebp),%edx
41046a:	8d 8d b0 b1 ff ff    	lea    -0x4e50(%ebp),%ecx
410470:	e8 68 d2 ff ff       	call   0x40d6dd
410475:	8b f0                	mov    %eax,%esi
410477:	8d 8d 38 a8 ff ff    	lea    -0x57c8(%ebp),%ecx
41047d:	89 b5 3c a8 ff ff    	mov    %esi,-0x57c4(%ebp)
410483:	e8 c1 57 01 00       	call   0x425c49
410488:	84 c0                	test   %al,%al
41048a:	74 0b                	je     0x410497
41048c:	8d 8d 28 a8 ff ff    	lea    -0x57d8(%ebp),%ecx
410492:	e8 40 98 00 00       	call   0x419cd7
410497:	81 fe 25 12 04 00    	cmp    $0x41225,%esi
41049d:	0f 85 83 00 00 00    	jne    0x410526
4104a3:	bb 05 12 04 80       	mov    $0x80041205,%ebx
4104a8:	89 9d 3c a8 ff ff    	mov    %ebx,-0x57c4(%ebp)
4104ae:	53                   	push   %ebx
4104af:	8d 8d b0 b1 ff ff    	lea    -0x4e50(%ebp),%ecx
4104b5:	e8 25 e2 ff ff       	call   0x40e6df
4104ba:	8d 8d 28 a8 ff ff    	lea    -0x57d8(%ebp),%ecx
4104c0:	e8 34 52 01 00       	call   0x4256f9
4104c5:	8d 8d 38 a8 ff ff    	lea    -0x57c8(%ebp),%ecx
4104cb:	e8 83 4b 00 00       	call   0x415053
4104d0:	8d 8d 34 a8 ff ff    	lea    -0x57cc(%ebp),%ecx
4104d6:	e8 33 35 00 00       	call   0x413a0e
4104db:	8d 8d 30 a8 ff ff    	lea    -0x57d0(%ebp),%ecx
4104e1:	e8 28 35 00 00       	call   0x413a0e
4104e6:	8d 8d 24 a8 ff ff    	lea    -0x57dc(%ebp),%ecx
4104ec:	e8 57 bd ff ff       	call   0x40c248
4104f1:	8d 8d d4 a7 ff ff    	lea    -0x582c(%ebp),%ecx
4104f7:	e8 a9 4a 00 00       	call   0x414fa5
4104fc:	8d 8d 68 bf ff ff    	lea    -0x4098(%ebp),%ecx
410502:	e8 e1 df ff ff       	call   0x40e4e8
410507:	8d 8d 20 a8 ff ff    	lea    -0x57e0(%ebp),%ecx
41050d:	e8 3f 4a 00 00       	call   0x414f51
410512:	8d 8d b0 b1 ff ff    	lea    -0x4e50(%ebp),%ecx
410518:	c6 45 fc 05          	movb   $0x5,-0x4(%ebp)
41051c:	e8 a1 e5 ff ff       	call   0x40eac2
410521:	e9 5e fb ff ff       	jmp    0x410084
410526:	85 f6                	test   %esi,%esi
410528:	78 32                	js     0x41055c
41052a:	81 fe 03 12 04 00    	cmp    $0x41203,%esi
410530:	74 2a                	je     0x41055c
410532:	e8 1a 84 01 00       	call   0x428951
410537:	83 7f 14 00          	cmpl   $0x0,0x14(%edi)
41053b:	74 1f                	je     0x41055c
41053d:	bb 23 0d 04 80       	mov    $0x80040d23,%ebx
410542:	89 9d 3c a8 ff ff    	mov    %ebx,-0x57c4(%ebp)
410548:	eb 18                	jmp    0x410562
41054a:	e8 ab 83 01 00       	call   0x4288fa
41054f:	bb 06 12 04 80       	mov    $0x80041206,%ebx
410554:	89 9d 3c a8 ff ff    	mov    %ebx,-0x57c4(%ebp)
41055a:	eb 06                	jmp    0x410562
41055c:	8b 9d 3c a8 ff ff    	mov    -0x57c4(%ebp),%ebx
410562:	85 db                	test   %ebx,%ebx
410564:	0f 88 44 ff ff ff    	js     0x4104ae
41056a:	81 fb 03 12 04 00    	cmp    $0x41203,%ebx
410570:	0f 84 38 ff ff ff    	je     0x4104ae
410576:	8b 9d d4 a7 ff ff    	mov    -0x582c(%ebp),%ebx
41057c:	8b cb                	mov    %ebx,%ecx
41057e:	e8 33 53 00 00       	call   0x4158b6
410583:	89 85 d0 a7 ff ff    	mov    %eax,-0x5830(%ebp)
410589:	85 c0                	test   %eax,%eax
41058b:	74 1a                	je     0x4105a7
41058d:	8b 0b                	mov    (%ebx),%ecx
41058f:	53                   	push   %ebx
410590:	8b 71 1c             	mov    0x1c(%ecx),%esi
410593:	8b ce                	mov    %esi,%ecx
410595:	ff 15 20 a5 43 00    	call   *0x43a520
41059b:	ff d6                	call   *%esi
41059d:	f7 d8                	neg    %eax
41059f:	1b c0                	sbb    %eax,%eax
4105a1:	21 85 d0 a7 ff ff    	and    %eax,-0x5830(%ebp)
4105a7:	c7 85 2c a8 ff ff 00 	movl   $0x0,-0x57d4(%ebp)
4105ae:	00 00 00
4105b1:	c6 45 fc 10          	movb   $0x10,-0x4(%ebp)
4105b5:	8d 85 2c a8 ff ff    	lea    -0x57d4(%ebp),%eax
4105bb:	c7 85 c8 a7 ff ff 00 	movl   $0x0,-0x5838(%ebp)
4105c2:	00 00 00
4105c5:	8b 33                	mov    (%ebx),%esi
4105c7:	50                   	push   %eax
4105c8:	68 d0 55 40 00       	push   $0x4055d0
4105cd:	53                   	push   %ebx
4105ce:	8b 36                	mov    (%esi),%esi
4105d0:	8b ce                	mov    %esi,%ecx
4105d2:	ff 15 20 a5 43 00    	call   *0x43a520
4105d8:	ff d6                	call   *%esi
4105da:	85 c0                	test   %eax,%eax
4105dc:	78 5a                	js     0x410638
4105de:	8b 85 2c a8 ff ff    	mov    -0x57d4(%ebp),%eax
4105e4:	8d 95 c8 a7 ff ff    	lea    -0x5838(%ebp),%edx
4105ea:	52                   	push   %edx
4105eb:	50                   	push   %eax
4105ec:	8b 08                	mov    (%eax),%ecx
4105ee:	8b 71 0c             	mov    0xc(%ecx),%esi
4105f1:	8b ce                	mov    %esi,%ecx
4105f3:	ff 15 20 a5 43 00    	call   *0x43a520
4105f9:	ff d6                	call   *%esi
4105fb:	85 c0                	test   %eax,%eax
4105fd:	79 0c                	jns    0x41060b
4105ff:	c7 85 c8 a7 ff ff 00 	movl   $0x0,-0x5838(%ebp)
410606:	00 00 00
410609:	eb 2d                	jmp    0x410638
41060b:	8b 85 2c a8 ff ff    	mov    -0x57d4(%ebp),%eax
410611:	8d 95 a8 a7 ff ff    	lea    -0x5858(%ebp),%edx
410617:	52                   	push   %edx
410618:	50                   	push   %eax
410619:	8b 08                	mov    (%eax),%ecx
41061b:	8b 71 14             	mov    0x14(%ecx),%esi
41061e:	8b ce                	mov    %esi,%ecx
410620:	ff 15 20 a5 43 00    	call   *0x43a520
410626:	ff d6                	call   *%esi
410628:	85 c0                	test   %eax,%eax
41062a:	78 0c                	js     0x410638
41062c:	8b 85 a8 a7 ff ff    	mov    -0x5858(%ebp),%eax
410632:	89 85 d8 be ff ff    	mov    %eax,-0x4128(%ebp)
410638:	8d 8d a0 bb ff ff    	lea    -0x4460(%ebp),%ecx
41063e:	e8 0f 36 00 00       	call   0x413c52
410643:	8b c1                	mov    %ecx,%eax
410645:	c6 45 fc 11          	movb   $0x11,-0x4(%ebp)
410649:	50                   	push   %eax
41064a:	8b d3                	mov    %ebx,%edx
41064c:	8d 8d b0 b1 ff ff    	lea    -0x4e50(%ebp),%ecx
410652:	e8 c8 3c 00 00       	call   0x41431f
410657:	3d 20 00 07 80       	cmp    $0x80070020,%eax
41065c:	75 27                	jne    0x410685
41065e:	50                   	push   %eax
41065f:	8d 8d b0 b1 ff ff    	lea    -0x4e50(%ebp),%ecx
410665:	e8 75 e0 ff ff       	call   0x40e6df
41066a:	8d 8d a0 bb ff ff    	lea    -0x4460(%ebp),%ecx
410670:	e8 41 e0 ff ff       	call   0x40e6b6
410675:	8d 8d 2c a8 ff ff    	lea    -0x57d4(%ebp),%ecx
41067b:	e8 7f bb ff ff       	call   0x40c1ff
410680:	e9 35 fe ff ff       	jmp    0x4104ba
410685:	83 bd ac bb ff ff 19 	cmpl   $0x19,-0x4454(%ebp)
41068c:	72 26                	jb     0x4106b4
41068e:	51                   	push   %ecx
41068f:	8d 85 48 a7 ff ff    	lea    -0x58b8(%ebp),%eax
410695:	50                   	push   %eax
410696:	8d 8d a0 bb ff ff    	lea    -0x4460(%ebp),%ecx
41069c:	e8 e1 84 01 00       	call   0x428b82
4106a1:	51                   	push   %ecx
4106a2:	8b c8                	mov    %eax,%ecx
4106a4:	e8 46 a9 ff ff       	call   0x40afef
4106a9:	85 c0                	test   %eax,%eax
4106ab:	74 07                	je     0x4106b4
4106ad:	68 0d 12 04 80       	push   $0x8004120d
4106b2:	eb ab                	jmp    0x41065f
4106b4:	8b d3                	mov    %ebx,%edx
4106b6:	8d 8d b0 b1 ff ff    	lea    -0x4e50(%ebp),%ecx
4106bc:	e8 6d 51 00 00       	call   0x41582e
4106c1:	6a 00                	push   $0x0
4106c3:	8d 8d 30 a8 ff ff    	lea    -0x57d0(%ebp),%ecx
4106c9:	e8 a3 35 00 00       	call   0x413c71
4106ce:	6a 00                	push   $0x0
4106d0:	8d 8d 34 a8 ff ff    	lea    -0x57cc(%ebp),%ecx
4106d6:	e8 96 35 00 00       	call   0x413c71
4106db:	8b d3                	mov    %ebx,%edx
4106dd:	8d 8d b0 b1 ff ff    	lea    -0x4e50(%ebp),%ecx
4106e3:	e8 f5 4d 00 00       	call   0x4154dd
4106e8:	8d 8d b0 b1 ff ff    	lea    -0x4e50(%ebp),%ecx
4106ee:	3d 20 00 07 80       	cmp    $0x80070020,%eax
4106f3:	75 06                	jne    0x4106fb
4106f5:	50                   	push   %eax
4106f6:	e9 6a ff ff ff       	jmp    0x410665
4106fb:	8b d3                	mov    %ebx,%edx
4106fd:	e8 09 4d 00 00       	call   0x41540b
410702:	c7 85 1c a8 ff ff 00 	movl   $0x0,-0x57e4(%ebp)
410709:	00 00 00
41070c:	c6 45 fc 12          	movb   $0x12,-0x4(%ebp)
410710:	8d 85 1c a8 ff ff    	lea    -0x57e4(%ebp),%eax
410716:	8b 33                	mov    (%ebx),%esi
410718:	50                   	push   %eax
410719:	68 e0 3e 40 00       	push   $0x403ee0
41071e:	53                   	push   %ebx
41071f:	8b 36                	mov    (%esi),%esi
410721:	8b ce                	mov    %esi,%ecx
410723:	ff 15 20 a5 43 00    	call   *0x43a520
410729:	ff d6                	call   *%esi
41072b:	8b d8                	mov    %eax,%ebx
41072d:	89 9d 3c a8 ff ff    	mov    %ebx,-0x57c4(%ebp)
410733:	85 db                	test   %ebx,%ebx
410735:	78 17                	js     0x41074e
410737:	8b 95 1c a8 ff ff    	mov    -0x57e4(%ebp),%edx
41073d:	8d 8d b0 b1 ff ff    	lea    -0x4e50(%ebp),%ecx
410743:	e8 23 4c 00 00       	call   0x41536b
410748:	89 85 3c a8 ff ff    	mov    %eax,-0x57c4(%ebp)
41074e:	8b 95 d4 a7 ff ff    	mov    -0x582c(%ebp),%edx
410754:	8d 85 fc a7 ff ff    	lea    -0x5804(%ebp),%eax
41075a:	50                   	push   %eax
41075b:	8d 8d b0 b1 ff ff    	lea    -0x4e50(%ebp),%ecx
410761:	e8 fb 4f 00 00       	call   0x415761
410766:	3d 20 00 07 80       	cmp    $0x80070020,%eax
41076b:	75 1c                	jne    0x410789
41076d:	50                   	push   %eax
41076e:	8d 8d b0 b1 ff ff    	lea    -0x4e50(%ebp),%ecx
410774:	e8 66 df ff ff       	call   0x40e6df
410779:	8d 8d 1c a8 ff ff    	lea    -0x57e4(%ebp),%ecx
41077f:	e8 7b ba ff ff       	call   0x40c1ff
410784:	e9 e1 fe ff ff       	jmp    0x41066a
410789:	85 c0                	test   %eax,%eax
41078b:	79 11                	jns    0x41079e
41078d:	c7 85 fc a7 ff ff 00 	movl   $0x800000,-0x5804(%ebp)
410794:	00 80 00
410797:	b8 00 00 80 00       	mov    $0x800000,%eax
41079c:	eb 44                	jmp    0x4107e2
41079e:	8b 85 00 a8 ff ff    	mov    -0x5800(%ebp),%eax
4107a4:	f7 25 08 8a 43 00    	mull   0x438a08
4107aa:	8b f0                	mov    %eax,%esi
4107ac:	8b 85 fc a7 ff ff    	mov    -0x5804(%ebp),%eax
4107b2:	f7 25 08 8a 43 00    	mull   0x438a08
4107b8:	03 f2                	add    %edx,%esi
4107ba:	89 85 fc a7 ff ff    	mov    %eax,-0x5804(%ebp)
4107c0:	89 b5 00 a8 ff ff    	mov    %esi,-0x5800(%ebp)
4107c6:	85 f6                	test   %esi,%esi
4107c8:	77 20                	ja     0x4107ea
4107ca:	72 07                	jb     0x4107d3
4107cc:	3d 00 40 00 00       	cmp    $0x4000,%eax
4107d1:	73 17                	jae    0x4107ea
4107d3:	c7 85 fc a7 ff ff 00 	movl   $0x4000,-0x5804(%ebp)
4107da:	40 00 00
4107dd:	b8 00 40 00 00       	mov    $0x4000,%eax
4107e2:	33 f6                	xor    %esi,%esi
4107e4:	89 b5 00 a8 ff ff    	mov    %esi,-0x5800(%ebp)
4107ea:	83 3d 10 85 43 00 00 	cmpl   $0x0,0x438510
4107f1:	74 1f                	je     0x410812
4107f3:	85 f6                	test   %esi,%esi
4107f5:	75 07                	jne    0x4107fe
4107f7:	3d 00 00 00 01       	cmp    $0x1000000,%eax
4107fc:	76 14                	jbe    0x410812
4107fe:	c7 85 fc a7 ff ff 00 	movl   $0x1000000,-0x5804(%ebp)
410805:	00 00 01
410808:	c7 85 00 a8 ff ff 00 	movl   $0x0,-0x5800(%ebp)
41080f:	00 00 00
410812:	8b b5 d4 a7 ff ff    	mov    -0x582c(%ebp),%esi
410818:	8d 8d b0 b1 ff ff    	lea    -0x4e50(%ebp),%ecx