a40460:	8b f1                	mov    %ecx,%esi
a40462:	e8 19 6b 9e ff       	call   0x426f80
a40467:	e8 b9 ab 9f ff       	call   0x43b025
a4046c:	85 c0                	test   %eax,%eax
a4046e:	74 21                	je     0xa40491
a40470:	e8 b0 ab 9f ff       	call   0x43b025
a40475:	8b c8                	mov    %eax,%ecx
a40477:	e8 d0 a0 9c ff       	call   0x40a54c
a4047c:	b9 00 00 40 00       	mov    $0x400000,%ecx
a40481:	85 c1                	test   %eax,%ecx
a40483:	74 0c                	je     0xa40491
a40485:	6a 00                	push   $0x0
a40487:	51                   	push   %ecx
a40488:	6a 00                	push   $0x0
a4048a:	8b ce                	mov    %esi,%ecx
a4048c:	e8 e8 b9 9c ff       	call   0x40be79
a40491:	8b 86 28 01 00 00    	mov    0x128(%esi),%eax
a40497:	33 c9                	xor    %ecx,%ecx
a40499:	39 48 f4             	cmp    %ecx,-0xc(%eax)
a4049c:	0f 95 c1             	setne  %cl
a4049f:	51                   	push   %ecx
a404a0:	8d 8e a8 00 00 00    	lea    0xa8(%esi),%ecx
a404a6:	e8 5f 41 9d ff       	call   0x41460a
a404ab:	33 c0                	xor    %eax,%eax
a404ad:	40                   	inc    %eax
a404ae:	5e                   	pop    %esi
a404af:	c3                   	ret
a404b0:	cc                   	int3
a404b1:	cc                   	int3
a404b2:	cc                   	int3
a404b3:	cc                   	int3
a404b4:	cc                   	int3
a404b5:	cc                   	int3
a404b6:	cc                   	int3
a404b7:	cc                   	int3
a404b8:	cc                   	int3
a404b9:	cc                   	int3
a404ba:	cc                   	int3
a404bb:	cc                   	int3
a404bc:	cc                   	int3
a404bd:	cc                   	int3
a404be:	cc                   	int3
a404bf:	cc                   	int3
a404c0:	cc                   	int3
a404c1:	cc                   	int3
a404c2:	cc                   	int3
a404c3:	cc                   	int3
a404c4:	56                   	push   %esi
a404c5:	6a 01                	push   $0x1
a404c7:	8b f1                	mov    %ecx,%esi
a404c9:	e8 ce 69 9c ff       	call   0x406e9c
a404ce:	8b 86 28 01 00 00    	mov    0x128(%esi),%eax
a404d4:	8d 8e a8 00 00 00    	lea    0xa8(%esi),%ecx
a404da:	33 d2                	xor    %edx,%edx
a404dc:	39 50 f4             	cmp    %edx,-0xc(%eax)
a404df:	0f 95 c2             	setne  %dl
a404e2:	52                   	push   %edx
a404e3:	e8 22 41 9d ff       	call   0x41460a
a404e8:	5e                   	pop    %esi
a404e9:	c3                   	ret
a404ea:	cc                   	int3
a404eb:	cc                   	int3
a404ec:	cc                   	int3
a404ed:	cc                   	int3
a404ee:	cc                   	int3
a404ef:	cc                   	int3
a404f0:	cc                   	int3
a404f1:	cc                   	int3
a404f2:	cc                   	int3
a404f3:	55                   	push   %ebp
a404f4:	8b ec                	mov    %esp,%ebp
a404f6:	56                   	push   %esi
a404f7:	8b 75 14             	mov    0x14(%ebp),%esi
a404fa:	85 f6                	test   %esi,%esi
a404fc:	75 04                	jne    0xa40502
a404fe:	33 c0                	xor    %eax,%eax
a40500:	eb 6d                	jmp    0xa4056f
a40502:	8b 45 08             	mov    0x8(%ebp),%eax
a40505:	85 c0                	test   %eax,%eax
a40507:	75 13                	jne    0xa4051c
a40509:	e8 61 e3 9f ff       	call   0x43e86f
a4050e:	6a 16                	push   $0x16
a40510:	5e                   	pop    %esi
a40511:	89 30                	mov    %esi,(%eax)
a40513:	e8 e0 ed 9d ff       	call   0x41f2f8
a40518:	8b c6                	mov    %esi,%eax
a4051a:	eb 53                	jmp    0xa4056f
a4051c:	57                   	push   %edi
a4051d:	8b 7d 10             	mov    0x10(%ebp),%edi
a40520:	85 ff                	test   %edi,%edi
a40522:	74 14                	je     0xa40538
a40524:	39 75 0c             	cmp    %esi,0xc(%ebp)
a40527:	72 0f                	jb     0xa40538
a40529:	56                   	push   %esi
a4052a:	57                   	push   %edi
a4052b:	50                   	push   %eax
a4052c:	e8 51 41 9d ff       	call   0x414682
a40531:	83 c4 0c             	add    $0xc,%esp
a40534:	33 c0                	xor    %eax,%eax
a40536:	eb 36                	jmp    0xa4056e
a40538:	ff 75 0c             	push   0xc(%ebp)
a4053b:	6a 00                	push   $0x0
a4053d:	50                   	push   %eax
a4053e:	e8 75 42 9d ff       	call   0x4147b8
a40543:	83 c4 0c             	add    $0xc,%esp
a40546:	85 ff                	test   %edi,%edi
a40548:	75 09                	jne    0xa40553
a4054a:	e8 20 e3 9f ff       	call   0x43e86f
a4054f:	6a 16                	push   $0x16
a40551:	eb 0c                	jmp    0xa4055f
a40553:	39 75 0c             	cmp    %esi,0xc(%ebp)
a40556:	73 13                	jae    0xa4056b
a40558:	e8 12 e3 9f ff       	call   0x43e86f
a4055d:	6a 22                	push   $0x22
a4055f:	5e                   	pop    %esi
a40560:	89 30                	mov    %esi,(%eax)
a40562:	e8 91 ed 9d ff       	call   0x41f2f8
a40567:	8b c6                	mov    %esi,%eax
a40569:	eb 03                	jmp    0xa4056e
a4056b:	6a 16                	push   $0x16
a4056d:	58                   	pop    %eax
a4056e:	5f                   	pop    %edi
a4056f:	5e                   	pop    %esi
a40570:	5d                   	pop    %ebp
a40571:	c3                   	ret
a40572:	cc                   	int3
a40573:	cc                   	int3
a40574:	cc                   	int3
a40575:	cc                   	int3
a40576:	cc                   	int3
a40577:	cc                   	int3
a40578:	cc                   	int3
a40579:	cc                   	int3
a4057a:	cc                   	int3
a4057b:	cc                   	int3
a4057c:	cc                   	int3
a4057d:	cc                   	int3
a4057e:	cc                   	int3
a4057f:	cc                   	int3
a40580:	cc                   	int3
a40581:	cc                   	int3
a40582:	cc                   	int3
a40583:	cc                   	int3
a40584:	cc                   	int3
a40585:	cc                   	int3
a40586:	cc                   	int3
a40587:	cc                   	int3
a40588:	cc                   	int3
a40589:	cc                   	int3
a4058a:	cc                   	int3
a4058b:	cc                   	int3
a4058c:	cc                   	int3
a4058d:	cc                   	int3
a4058e:	cc                   	int3
a4058f:	cc                   	int3
a40590:	cc                   	int3
a40591:	55                   	push   %ebp
a40592:	8b ec                	mov    %esp,%ebp
a40594:	8b 45 14             	mov    0x14(%ebp),%eax
a40597:	56                   	push   %esi
a40598:	85 c0                	test   %eax,%eax
a4059a:	74 3c                	je     0xa405d8
a4059c:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
a405a0:	75 13                	jne    0xa405b5
a405a2:	e8 c8 e2 9f ff       	call   0x43e86f
a405a7:	6a 16                	push   $0x16
a405a9:	5e                   	pop    %esi
a405aa:	89 30                	mov    %esi,(%eax)
a405ac:	e8 47 ed 9d ff       	call   0x41f2f8
a405b1:	8b c6                	mov    %esi,%eax
a405b3:	eb 25                	jmp    0xa405da
a405b5:	83 7d 10 00          	cmpl   $0x0,0x10(%ebp)
a405b9:	74 e7                	je     0xa405a2
a405bb:	39 45 0c             	cmp    %eax,0xc(%ebp)
a405be:	73 09                	jae    0xa405c9
a405c0:	e8 aa e2 9f ff       	call   0x43e86f
a405c5:	6a 22                	push   $0x22
a405c7:	eb e0                	jmp    0xa405a9
a405c9:	50                   	push   %eax
a405ca:	ff 75 10             	push   0x10(%ebp)
a405cd:	ff 75 08             	push   0x8(%ebp)
a405d0:	e8 ad e5 9d ff       	call   0x41eb82
a405d5:	83 c4 0c             	add    $0xc,%esp
a405d8:	33 c0                	xor    %eax,%eax
a405da:	5e                   	pop    %esi
a405db:	5d                   	pop    %ebp
a405dc:	c3                   	ret
a405dd:	cc                   	int3
a405de:	cc                   	int3
a405df:	cc                   	int3
a405e0:	cc                   	int3
a405e1:	cc                   	int3
a405e2:	cc                   	int3
a405e3:	cc                   	int3
a405e4:	cc                   	int3
a405e5:	cc                   	int3
a405e6:	cc                   	int3
a405e7:	cc                   	int3
a405e8:	cc                   	int3
a405e9:	cc                   	int3
a405ea:	cc                   	int3
a405eb:	cc                   	int3
a405ec:	cc                   	int3
a405ed:	cc                   	int3
a405ee:	cc                   	int3
a405ef:	cc                   	int3
a405f0:	6a 04                	push   $0x4
a405f2:	b8 88 a3 bb 00       	mov    $0xbba388,%eax
a405f7:	e8 8f 9c 9c ff       	call   0x40a28b
a405fc:	8b f1                	mov    %ecx,%esi
a405fe:	89 75 f0             	mov    %esi,-0x10(%ebp)
a40601:	e8 bd a0 9c ff       	call   0x40a6c3
a40606:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
a4060a:	8d 86 84 00 00 00    	lea    0x84(%esi),%eax
a40610:	50                   	push   %eax
a40611:	8d 8e 8c 00 00 00    	lea    0x8c(%esi),%ecx
a40617:	c7 06 28 4b c7 00    	movl   $0xc74b28,(%esi)
a4061d:	e8 89 a4 9c ff       	call   0x40aaab
a40622:	83 a6 80 00 00 00 00 	andl   $0x0,0x80(%esi)
a40629:	8b ce                	mov    %esi,%ecx
a4062b:	83 a6 94 00 00 00 00 	andl   $0x0,0x94(%esi)
a40632:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
a40636:	e8 ae e8 9c ff       	call   0x40eee9
a4063b:	8b c6                	mov    %esi,%eax
a4063d:	e8 d5 dd 9c ff       	call   0x40e417
a40642:	c3                   	ret
a40643:	cc                   	int3
a40644:	cc                   	int3
a40645:	cc                   	int3
a40646:	cc                   	int3
a40647:	cc                   	int3
a40648:	cc                   	int3
a40649:	cc                   	int3
a4064a:	cc                   	int3
a4064b:	cc                   	int3
a4064c:	cc                   	int3
a4064d:	cc                   	int3
a4064e:	cc                   	int3
a4064f:	cc                   	int3
a40650:	cc                   	int3
a40651:	cc                   	int3
a40652:	cc                   	int3
a40653:	cc                   	int3
a40654:	cc                   	int3
a40655:	cc                   	int3
a40656:	cc                   	int3
a40657:	56                   	push   %esi
a40658:	8b f1                	mov    %ecx,%esi
a4065a:	8d 8e 8c 00 00 00    	lea    0x8c(%esi),%ecx
a40660:	c7 06 28 4b c7 00    	movl   $0xc74b28,(%esi)
a40666:	e8 30 07 9f ff       	call   0x430d9b
a4066b:	8b ce                	mov    %esi,%ecx
a4066d:	5e                   	pop    %esi
a4066e:	e9 ff af 9c ff       	jmp    0x40b672
a40673:	cc                   	int3
a40674:	cc                   	int3
a40675:	cc                   	int3
a40676:	cc                   	int3
a40677:	cc                   	int3
a40678:	cc                   	int3
a40679:	cc                   	int3
a4067a:	55                   	push   %ebp
a4067b:	8b ec                	mov    %esp,%ebp
a4067d:	56                   	push   %esi
a4067e:	8b f1                	mov    %ecx,%esi
a40680:	e8 31 e8 9d ff       	call   0x41eeb6
a40685:	f6 45 08 01          	testb  $0x1,0x8(%ebp)
a40689:	74 1b                	je     0xa406a6
a4068b:	f6 45 08 04          	testb  $0x4,0x8(%ebp)
a4068f:	75 08                	jne    0xa40699
a40691:	56                   	push   %esi
a40692:	e8 f8 10 9c ff       	call   0x40178f
a40697:	eb 0c                	jmp    0xa406a5
a40699:	68 98 00 00 00       	push   $0x98
a4069e:	56                   	push   %esi
a4069f:	e8 36 f1 9d ff       	call   0x41f7da
a406a4:	59                   	pop    %ecx
a406a5:	59                   	pop    %ecx
a406a6:	8b c6                	mov    %esi,%eax
a406a8:	5e                   	pop    %esi
a406a9:	5d                   	pop    %ebp
a406aa:	c2 04 00             	ret    $0x4
a406ad:	cc                   	int3
a406ae:	cc                   	int3
a406af:	cc                   	int3
a406b0:	cc                   	int3
a406b1:	cc                   	int3
a406b2:	cc                   	int3
a406b3:	cc                   	int3
a406b4:	cc                   	int3
a406b5:	cc                   	int3
a406b6:	cc                   	int3
a406b7:	cc                   	int3
a406b8:	cc                   	int3
a406b9:	b8 10 4d c7 00       	mov    $0xc74d10,%eax
a406be:	c3                   	ret
a406bf:	b8 10 4d c7 00       	mov    $0xc74d10,%eax
a406c4:	c3                   	ret
a406c5:	83 a1 94 00 00 00 00 	andl   $0x0,0x94(%ecx)
a406cc:	e8 8f 19 9f ff       	call   0x432060
a406d1:	c2 04 00             	ret    $0x4
a406d4:	cc                   	int3
a406d5:	cc                   	int3
a406d6:	cc                   	int3
a406d7:	6a 04                	push   $0x4
a406d9:	b8 b7 a3 bb 00       	mov    $0xbba3b7,%eax
a406de:	e8 a8 9b 9c ff       	call   0x40a28b
a406e3:	8b f1                	mov    %ecx,%esi
a406e5:	8b 4d 08             	mov    0x8(%ebp),%ecx
a406e8:	33 db                	xor    %ebx,%ebx
a406ea:	6a 01                	push   $0x1
a406ec:	5f                   	pop    %edi
a406ed:	8b 41 04             	mov    0x4(%ecx),%eax
a406f0:	2d 00 01 00 00       	sub    $0x100,%eax
a406f5:	74 37                	je     0xa4072e
a406f7:	2b c7                	sub    %edi,%eax
a406f9:	74 54                	je     0xa4074f
a406fb:	83 e8 03             	sub    $0x3,%eax
a406fe:	74 2e                	je     0xa4072e
a40700:	2b c7                	sub    %edi,%eax
a40702:	74 4b                	je     0xa4074f
a40704:	2d fc 00 00 00       	sub    $0xfc,%eax
a40709:	74 0e                	je     0xa40719
a4070b:	83 e8 03             	sub    $0x3,%eax
a4070e:	74 09                	je     0xa40719
a40710:	83 e8 03             	sub    $0x3,%eax
a40713:	0f 85 0e 01 00 00    	jne    0xa40827
a40719:	33 ff                	xor    %edi,%edi
a4071b:	8b ce                	mov    %esi,%ecx
a4071d:	47                   	inc    %edi
a4071e:	89 be 94 00 00 00    	mov    %edi,0x94(%esi)
a40724:	e8 00 06 9e ff       	call   0x420d29
a40729:	e9 dc 00 00 00       	jmp    0xa4080a
a4072e:	8b 41 0c             	mov    0xc(%ecx),%eax
a40731:	8b df                	mov    %edi,%ebx
a40733:	c1 e8 1e             	shr    $0x1e,%eax
a40736:	23 c7                	and    %edi,%eax
a40738:	83 be 80 00 00 00 00 	cmpl   $0x0,0x80(%esi)
a4073f:	74 17                	je     0xa40758
a40741:	85 c0                	test   %eax,%eax
a40743:	75 0a                	jne    0xa4074f
a40745:	8b ce                	mov    %esi,%ecx
a40747:	e8 9d e7 9c ff       	call   0x40eee9
a4074c:	8b 4d 08             	mov    0x8(%ebp),%ecx
a4074f:	83 be 80 00 00 00 00 	cmpl   $0x0,0x80(%esi)
a40756:	75 58                	jne    0xa407b0
a40758:	8b 41 08             	mov    0x8(%ecx),%eax
a4075b:	83 e8 10             	sub    $0x10,%eax
a4075e:	74 46                	je     0xa407a6
a40760:	83 e8 01             	sub    $0x1,%eax