44055b:	c7 45 fc 02 00 00 00 	movl   $0x2,-0x4(%ebp)
440562:	85 c0                	test   %eax,%eax
440564:	74 12                	je     0x440578
440566:	51                   	push   %ecx
440567:	ff 77 28             	push   0x28(%edi)
44056a:	8b c8                	mov    %eax,%ecx
44056c:	ff 77 0c             	push   0xc(%edi)
44056f:	e8 7a 32 ff ff       	call   0x4337ee
440574:	8b c8                	mov    %eax,%ecx
440576:	eb 02                	jmp    0x44057a
440578:	33 c9                	xor    %ecx,%ecx
44057a:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
44057e:	89 8d 20 ff ff ff    	mov    %ecx,-0xe0(%ebp)
440584:	85 c9                	test   %ecx,%ecx
440586:	0f 84 d1 03 00 00    	je     0x44095d
44058c:	8b 01                	mov    (%ecx),%eax
44058e:	51                   	push   %ecx
44058f:	8b 70 04             	mov    0x4(%eax),%esi
440592:	8b ce                	mov    %esi,%ecx
440594:	ff 15 c4 12 45 00    	call   *0x4512c4
44059a:	ff d6                	call   *%esi
44059c:	8b 8d 38 ff ff ff    	mov    -0xc8(%ebp),%ecx
4405a2:	51                   	push   %ecx
4405a3:	ff b5 30 ff ff ff    	push   -0xd0(%ebp)
4405a9:	ff b5 14 ff ff ff    	push   -0xec(%ebp)
4405af:	8b 81 6c 06 00 00    	mov    0x66c(%ecx),%eax
4405b5:	ff 75 08             	push   0x8(%ebp)
4405b8:	f7 d8                	neg    %eax
4405ba:	ff b5 20 ff ff ff    	push   -0xe0(%ebp)
4405c0:	1b c0                	sbb    %eax,%eax
4405c2:	ff 77 20             	push   0x20(%edi)
4405c5:	23 85 1c ff ff ff    	and    -0xe4(%ebp),%eax
4405cb:	ff 77 1c             	push   0x1c(%edi)
4405ce:	50                   	push   %eax
4405cf:	8b 81 68 06 00 00    	mov    0x668(%ecx),%eax
4405d5:	8b 8d 2c ff ff ff    	mov    -0xd4(%ebp),%ecx
4405db:	f7 d8                	neg    %eax
4405dd:	1b c0                	sbb    %eax,%eax
4405df:	23 85 18 ff ff ff    	and    -0xe8(%ebp),%eax
4405e5:	50                   	push   %eax
4405e6:	ff b5 04 ff ff ff    	push   -0xfc(%ebp)
4405ec:	e8 b8 17 00 00       	call   0x441da9
4405f1:	8b f8                	mov    %eax,%edi
4405f3:	85 ff                	test   %edi,%edi
4405f5:	0f 88 4a 03 00 00    	js     0x440945
4405fb:	8b 85 2c ff ff ff    	mov    -0xd4(%ebp),%eax
440601:	8d 8d 0c ff ff ff    	lea    -0xf4(%ebp),%ecx
440607:	83 a5 0c ff ff ff 00 	andl   $0x0,-0xf4(%ebp)
44060e:	51                   	push   %ecx
44060f:	68 84 7a 40 00       	push   $0x407a84
440614:	8b 30                	mov    (%eax),%esi
440616:	50                   	push   %eax
440617:	8b 0e                	mov    (%esi),%ecx
440619:	ff 15 c4 12 45 00    	call   *0x4512c4
44061f:	ff 16                	call   *(%esi)
440621:	8b f8                	mov    %eax,%edi
440623:	85 ff                	test   %edi,%edi
440625:	0f 88 1a 03 00 00    	js     0x440945
44062b:	8d 85 44 ff ff ff    	lea    -0xbc(%ebp),%eax
440631:	50                   	push   %eax
440632:	ff 15 2c 30 45 00    	call   *0x45302c
440638:	8b f8                	mov    %eax,%edi
44063a:	85 ff                	test   %edi,%edi
44063c:	0f 88 ed 02 00 00    	js     0x44092f
440642:	68 30 02 00 00       	push   $0x230
440647:	e8 8f db fd ff       	call   0x41e1db
44064c:	59                   	pop    %ecx
44064d:	8b c8                	mov    %eax,%ecx
44064f:	89 8d 24 ff ff ff    	mov    %ecx,-0xdc(%ebp)
440655:	c7 45 fc 03 00 00 00 	movl   $0x3,-0x4(%ebp)
44065c:	85 c9                	test   %ecx,%ecx
44065e:	74 3e                	je     0x44069e
440660:	8b bd 40 ff ff ff    	mov    -0xc0(%ebp),%edi
440666:	8d 85 44 ff ff ff    	lea    -0xbc(%ebp),%eax
44066c:	50                   	push   %eax
44066d:	8b 85 38 ff ff ff    	mov    -0xc8(%ebp),%eax
440673:	50                   	push   %eax
440674:	ff b5 14 ff ff ff    	push   -0xec(%ebp)
44067a:	ff 35 14 0a 45 00    	push   0x450a14
440680:	ff b5 20 ff ff ff    	push   -0xe0(%ebp)
440686:	ff b5 0c ff ff ff    	push   -0xf4(%ebp)
44068c:	ff 77 0c             	push   0xc(%edi)
44068f:	e8 8c 11 fd ff       	call   0x411820
440694:	8b c8                	mov    %eax,%ecx
440696:	89 85 40 ff ff ff    	mov    %eax,-0xc0(%ebp)
44069c:	eb 08                	jmp    0x4406a6
44069e:	33 c9                	xor    %ecx,%ecx
4406a0:	89 8d 40 ff ff ff    	mov    %ecx,-0xc0(%ebp)
4406a6:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
4406aa:	85 c9                	test   %ecx,%ecx
4406ac:	0f 84 78 02 00 00    	je     0x44092a
4406b2:	8b 01                	mov    (%ecx),%eax
4406b4:	51                   	push   %ecx
4406b5:	8b 70 04             	mov    0x4(%eax),%esi
4406b8:	8b ce                	mov    %esi,%ecx
4406ba:	ff 15 c4 12 45 00    	call   *0x4512c4
4406c0:	ff d6                	call   *%esi
4406c2:	8b 3d 14 0a 45 00    	mov    0x450a14,%edi
4406c8:	83 a5 24 ff ff ff 00 	andl   $0x0,-0xdc(%ebp)
4406cf:	8b 07                	mov    (%edi),%eax
4406d1:	8b 70 18             	mov    0x18(%eax),%esi
4406d4:	8b ce                	mov    %esi,%ecx
4406d6:	ff 15 c4 12 45 00    	call   *0x4512c4
4406dc:	8b cf                	mov    %edi,%ecx
4406de:	ff d6                	call   *%esi
4406e0:	8b 3d 14 0a 45 00    	mov    0x450a14,%edi
4406e6:	8d 85 24 ff ff ff    	lea    -0xdc(%ebp),%eax
4406ec:	50                   	push   %eax
4406ed:	8b 85 40 ff ff ff    	mov    -0xc0(%ebp),%eax
4406f3:	83 c0 58             	add    $0x58,%eax
4406f6:	8b 17                	mov    (%edi),%edx
4406f8:	50                   	push   %eax
4406f9:	8b 72 20             	mov    0x20(%edx),%esi
4406fc:	8b ce                	mov    %esi,%ecx
4406fe:	ff 15 c4 12 45 00    	call   *0x4512c4
440704:	8b cf                	mov    %edi,%ecx
440706:	ff d6                	call   *%esi
440708:	8b 3d 14 0a 45 00    	mov    0x450a14,%edi
44070e:	85 c0                	test   %eax,%eax
440710:	8b 07                	mov    (%edi),%eax
440712:	8b 70 1c             	mov    0x1c(%eax),%esi
440715:	8b ce                	mov    %esi,%ecx
440717:	0f 85 de 01 00 00    	jne    0x4408fb
44071d:	ff 15 c4 12 45 00    	call   *0x4512c4
440723:	8b cf                	mov    %edi,%ecx
440725:	ff d6                	call   *%esi
440727:	8b 85 40 ff ff ff    	mov    -0xc0(%ebp),%eax
44072d:	8d 8d 10 ff ff ff    	lea    -0xf0(%ebp),%ecx
440733:	83 a5 10 ff ff ff 00 	andl   $0x0,-0xf0(%ebp)
44073a:	51                   	push   %ecx
44073b:	68 e8 6b 40 00       	push   $0x406be8
440740:	8b 30                	mov    (%eax),%esi
440742:	50                   	push   %eax
440743:	8b 0e                	mov    (%esi),%ecx
440745:	ff 15 c4 12 45 00    	call   *0x4512c4
44074b:	ff 16                	call   *(%esi)
44074d:	8b f8                	mov    %eax,%edi
44074f:	85 ff                	test   %edi,%edi
440751:	0f 88 b3 01 00 00    	js     0x44090a
440757:	6a 18                	push   $0x18
440759:	e8 7d da fd ff       	call   0x41e1db
44075e:	8b d8                	mov    %eax,%ebx
440760:	33 ff                	xor    %edi,%edi
440762:	89 9d 30 ff ff ff    	mov    %ebx,-0xd0(%ebp)
440768:	59                   	pop    %ecx
440769:	85 db                	test   %ebx,%ebx
44076b:	74 17                	je     0x440784
44076d:	c7 03 ec 13 40 00    	movl   $0x4013ec,(%ebx)
440773:	89 7b 04             	mov    %edi,0x4(%ebx)
440776:	89 7b 08             	mov    %edi,0x8(%ebx)
440779:	89 7b 0c             	mov    %edi,0xc(%ebx)
44077c:	89 7b 10             	mov    %edi,0x10(%ebx)
44077f:	89 7b 14             	mov    %edi,0x14(%ebx)
440782:	eb 02                	jmp    0x440786
440784:	8b df                	mov    %edi,%ebx
440786:	85 db                	test   %ebx,%ebx
440788:	0f 84 4a 01 00 00    	je     0x4408d8
44078e:	8b 03                	mov    (%ebx),%eax
440790:	53                   	push   %ebx
440791:	8b 70 04             	mov    0x4(%eax),%esi
440794:	8b ce                	mov    %esi,%ecx
440796:	ff 15 c4 12 45 00    	call   *0x4512c4
44079c:	ff d6                	call   *%esi
44079e:	57                   	push   %edi
44079f:	8b cb                	mov    %ebx,%ecx
4407a1:	e8 1b f9 ff ff       	call   0x4400c1
4407a6:	8b f8                	mov    %eax,%edi
4407a8:	85 ff                	test   %edi,%edi
4407aa:	0f 88 16 01 00 00    	js     0x4408c6
4407b0:	6a 18                	push   $0x18
4407b2:	e8 24 da fd ff       	call   0x41e1db
4407b7:	59                   	pop    %ecx
4407b8:	89 85 30 ff ff ff    	mov    %eax,-0xd0(%ebp)
4407be:	c7 45 fc 04 00 00 00 	movl   $0x4,-0x4(%ebp)
4407c5:	85 c0                	test   %eax,%eax
4407c7:	74 12                	je     0x4407db
4407c9:	53                   	push   %ebx
4407ca:	8b c8                	mov    %eax,%ecx
4407cc:	e8 32 f8 ff ff       	call   0x440003
4407d1:	8b f8                	mov    %eax,%edi
4407d3:	89 85 30 ff ff ff    	mov    %eax,-0xd0(%ebp)
4407d9:	eb 08                	jmp    0x4407e3
4407db:	33 ff                	xor    %edi,%edi
4407dd:	89 bd 30 ff ff ff    	mov    %edi,-0xd0(%ebp)
4407e3:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
4407e7:	85 ff                	test   %edi,%edi
4407e9:	0f 84 d2 00 00 00    	je     0x4408c1
4407ef:	8b 07                	mov    (%edi),%eax
4407f1:	57                   	push   %edi
4407f2:	8b 70 04             	mov    0x4(%eax),%esi
4407f5:	8b ce                	mov    %esi,%ecx
4407f7:	ff 15 c4 12 45 00    	call   *0x4512c4
4407fd:	ff d6                	call   *%esi
4407ff:	8b 95 38 ff ff ff    	mov    -0xc8(%ebp),%edx
440805:	8b 8d 10 ff ff ff    	mov    -0xf0(%ebp),%ecx
44080b:	57                   	push   %edi
44080c:	33 ff                	xor    %edi,%edi
44080e:	8b 82 6c 06 00 00    	mov    0x66c(%edx),%eax
440814:	8b 31                	mov    (%ecx),%esi
440816:	f7 d8                	neg    %eax
440818:	57                   	push   %edi
440819:	57                   	push   %edi
44081a:	ff b5 34 ff ff ff    	push   -0xcc(%ebp)
440820:	1b c0                	sbb    %eax,%eax
440822:	23 85 1c ff ff ff    	and    -0xe4(%ebp),%eax
440828:	50                   	push   %eax
440829:	8b 82 68 06 00 00    	mov    0x668(%edx),%eax
44082f:	f7 d8                	neg    %eax
440831:	1b c0                	sbb    %eax,%eax
440833:	23 85 18 ff ff ff    	and    -0xe8(%ebp),%eax
440839:	50                   	push   %eax
44083a:	ff b5 04 ff ff ff    	push   -0xfc(%ebp)
440840:	ff b5 14 ff ff ff    	push   -0xec(%ebp)
440846:	57                   	push   %edi
440847:	51                   	push   %ecx
440848:	8b 4e 0c             	mov    0xc(%esi),%ecx
44084b:	ff 15 c4 12 45 00    	call   *0x4512c4
440851:	ff 56 0c             	call   *0xc(%esi)
440854:	8b f8                	mov    %eax,%edi
440856:	85 ff                	test   %edi,%edi
440858:	78 4f                	js     0x4408a9
44085a:	8b 85 38 ff ff ff    	mov    -0xc8(%ebp),%eax
440860:	ff b0 94 06 00 00    	push   0x694(%eax)
440866:	ff 73 0c             	push   0xc(%ebx)
440869:	ff 15 38 11 45 00    	call   *0x451138
44086f:	3d 02 01 00 00       	cmp    $0x102,%eax
440874:	75 0a                	jne    0x440880
440876:	bf 13 10 04 80       	mov    $0x80041013,%edi
44087b:	89 7b 10             	mov    %edi,0x10(%ebx)
44087e:	eb 03                	jmp    0x440883
440880:	8b 7b 10             	mov    0x10(%ebx),%edi
440883:	85 ff                	test   %edi,%edi
440885:	78 22                	js     0x4408a9
440887:	8b 8d 40 ff ff ff    	mov    -0xc0(%ebp),%ecx
44088d:	ff b5 00 ff ff ff    	push   -0x100(%ebp)
440893:	68 84 7a 40 00       	push   $0x407a84
440898:	8b 01                	mov    (%ecx),%eax
44089a:	51                   	push   %ecx
44089b:	8b 30                	mov    (%eax),%esi
44089d:	8b ce                	mov    %esi,%ecx
44089f:	ff 15 c4 12 45 00    	call   *0x4512c4
4408a5:	ff d6                	call   *%esi
4408a7:	8b f8                	mov    %eax,%edi
4408a9:	8b 8d 30 ff ff ff    	mov    -0xd0(%ebp),%ecx
4408af:	51                   	push   %ecx
4408b0:	8b 01                	mov    (%ecx),%eax
4408b2:	8b 70 08             	mov    0x8(%eax),%esi
4408b5:	8b ce                	mov    %esi,%ecx
4408b7:	ff 15 c4 12 45 00    	call   *0x4512c4
4408bd:	ff d6                	call   *%esi
4408bf:	eb 05                	jmp    0x4408c6
4408c1:	bf 06 10 04 80       	mov    $0x80041006,%edi
4408c6:	8b 03                	mov    (%ebx),%eax
4408c8:	53                   	push   %ebx
4408c9:	8b 70 08             	mov    0x8(%eax),%esi
4408cc:	8b ce                	mov    %esi,%ecx
4408ce:	ff 15 c4 12 45 00    	call   *0x4512c4
4408d4:	ff d6                	call   *%esi
4408d6:	eb 05                	jmp    0x4408dd
4408d8:	bf 06 10 04 80       	mov    $0x80041006,%edi
4408dd:	8b 85 10 ff ff ff    	mov    -0xf0(%ebp),%eax
4408e3:	50                   	push   %eax
4408e4:	8b 08                	mov    (%eax),%ecx
4408e6:	8b 71 08             	mov    0x8(%ecx),%esi
4408e9:	8b ce                	mov    %esi,%ecx
4408eb:	ff 15 c4 12 45 00    	call   *0x4512c4
4408f1:	ff d6                	call   *%esi
4408f3:	8b 9d 28 ff ff ff    	mov    -0xd8(%ebp),%ebx
4408f9:	eb 0f                	jmp    0x44090a
4408fb:	ff 15 c4 12 45 00    	call   *0x4512c4
440901:	8b cf                	mov    %edi,%ecx
440903:	ff d6                	call   *%esi
440905:	bf 06 10 04 80       	mov    $0x80041006,%edi
44090a:	8b b5 40 ff ff ff    	mov    -0xc0(%ebp),%esi
440910:	8b ce                	mov    %esi,%ecx
440912:	57                   	push   %edi
440913:	e8 13 e2 ff ff       	call   0x43eb2b
440918:	8b 06                	mov    (%esi),%eax
44091a:	56                   	push   %esi
44091b:	8b 70 08             	mov    0x8(%eax),%esi
44091e:	8b ce                	mov    %esi,%ecx
440920:	ff 15 c4 12 45 00    	call   *0x4512c4
440926:	ff d6                	call   *%esi
440928:	eb 05                	jmp    0x44092f
44092a:	bf 06 10 04 80       	mov    $0x80041006,%edi
44092f:	8b 85 0c ff ff ff    	mov    -0xf4(%ebp),%eax
440935:	50                   	push   %eax
440936:	8b 08                	mov    (%eax),%ecx
440938:	8b 71 08             	mov    0x8(%ecx),%esi
44093b:	8b ce                	mov    %esi,%ecx
44093d:	ff 15 c4 12 45 00    	call   *0x4512c4
440943:	ff d6                	call   *%esi
440945:	8b 8d 20 ff ff ff    	mov    -0xe0(%ebp),%ecx
44094b:	51                   	push   %ecx
44094c:	8b 01                	mov    (%ecx),%eax
44094e:	8b 70 08             	mov    0x8(%eax),%esi
440951:	8b ce                	mov    %esi,%ecx
440953:	ff 15 c4 12 45 00    	call   *0x4512c4
440959:	ff d6                	call   *%esi
44095b:	eb 05                	jmp    0x440962
44095d:	bf 06 10 04 80       	mov    $0x80041006,%edi
440962:	8b 8d 3c ff ff ff    	mov    -0xc4(%ebp),%ecx
440968:	51                   	push   %ecx
440969:	8b 01                	mov    (%ecx),%eax
44096b:	8b 70 08             	mov    0x8(%eax),%esi
44096e:	8b ce                	mov    %esi,%ecx
440970:	ff 15 c4 12 45 00    	call   *0x4512c4
440976:	ff d6                	call   *%esi
440978:	eb 05                	jmp    0x44097f
44097a:	bf 06 10 04 80       	mov    $0x80041006,%edi
44097f:	8b 03                	mov    (%ebx),%eax
440981:	53                   	push   %ebx
440982:	8b 70 08             	mov    0x8(%eax),%esi
440985:	8b ce                	mov    %esi,%ecx
440987:	ff 15 c4 12 45 00    	call   *0x4512c4
44098d:	ff d6                	call   *%esi
44098f:	eb 05                	jmp    0x440996
440991:	bf 06 10 04 80       	mov    $0x80041006,%edi
440996:	8b 85 08 ff ff ff    	mov    -0xf8(%ebp),%eax
44099c:	50                   	push   %eax
44099d:	8b 08                	mov    (%eax),%ecx
44099f:	8b 71 08             	mov    0x8(%ecx),%esi
4409a2:	8b ce                	mov    %esi,%ecx
4409a4:	ff 15 c4 12 45 00    	call   *0x4512c4
4409aa:	ff d6                	call   *%esi
4409ac:	8b 9d 38 ff ff ff    	mov    -0xc8(%ebp),%ebx
4409b2:	eb 05                	jmp    0x4409b9
4409b4:	bf 06 10 04 80       	mov    $0x80041006,%edi
4409b9:	8b 8d 2c ff ff ff    	mov    -0xd4(%ebp),%ecx
4409bf:	51                   	push   %ecx
4409c0:	8b 01                	mov    (%ecx),%eax
4409c2:	8b 70 08             	mov    0x8(%eax),%esi
4409c5:	8b ce                	mov    %esi,%ecx
4409c7:	ff 15 c4 12 45 00    	call   *0x4512c4
4409cd:	ff d6                	call   *%esi
4409cf:	8b b5 04 ff ff ff    	mov    -0xfc(%ebp),%esi
4409d5:	eb 05                	jmp    0x4409dc
4409d7:	bf 06 10 04 80       	mov    $0x80041006,%edi
4409dc:	85 f6                	test   %esi,%esi
4409de:	74 10                	je     0x4409f0
4409e0:	6a 4e                	push   $0x4e
4409e2:	8d 85 54 ff ff ff    	lea    -0xac(%ebp),%eax
4409e8:	50                   	push   %eax
4409e9:	56                   	push   %esi
4409ea:	ff 15 68 30 45 00    	call   *0x453068
4409f0:	8b 4b 24             	mov    0x24(%ebx),%ecx
4409f3:	8d 83 44 02 00 00    	lea    0x244(%ebx),%eax
4409f9:	8b 53 20             	mov    0x20(%ebx),%edx
4409fc:	89 85 3c ff ff ff    	mov    %eax,-0xc4(%ebp)
440a02:	8d 43 3c             	lea    0x3c(%ebx),%eax