46e758:	56                   	push   %esi
46e759:	e8 7c 10 fb ff       	call   0x41f7da
46e75e:	83 c4 08             	add    $0x8,%esp
46e761:	8b c6                	mov    %esi,%eax
46e763:	5e                   	pop    %esi
46e764:	c2 04 00             	ret    $0x4
46e767:	cc                   	int3
46e768:	cc                   	int3
46e769:	cc                   	int3
46e76a:	cc                   	int3
46e76b:	cc                   	int3
46e76c:	cc                   	int3
46e76d:	cc                   	int3
46e76e:	cc                   	int3
46e76f:	cc                   	int3
46e770:	cc                   	int3
46e771:	cc                   	int3
46e772:	cc                   	int3
46e773:	cc                   	int3
46e774:	cc                   	int3
46e775:	cc                   	int3
46e776:	cc                   	int3
46e777:	cc                   	int3
46e778:	cc                   	int3
46e779:	cc                   	int3
46e77a:	cc                   	int3
46e77b:	cc                   	int3
46e77c:	cc                   	int3
46e77d:	cc                   	int3
46e77e:	cc                   	int3
46e77f:	cc                   	int3
46e780:	56                   	push   %esi
46e781:	8b f1                	mov    %ecx,%esi
46e783:	e8 64 5e fa ff       	call   0x4145ec
46e788:	8b 44 24 08          	mov    0x8(%esp),%eax
46e78c:	a8 01                	test   $0x1,%al
46e78e:	74 21                	je     0x46e7b1
46e790:	a8 04                	test   $0x4,%al
46e792:	75 0f                	jne    0x46e7a3
46e794:	56                   	push   %esi
46e795:	e8 f5 2f f9 ff       	call   0x40178f
46e79a:	83 c4 04             	add    $0x4,%esp
46e79d:	8b c6                	mov    %esi,%eax
46e79f:	5e                   	pop    %esi
46e7a0:	c2 04 00             	ret    $0x4
46e7a3:	68 88 01 00 00       	push   $0x188
46e7a8:	56                   	push   %esi
46e7a9:	e8 2c 10 fb ff       	call   0x41f7da
46e7ae:	83 c4 08             	add    $0x8,%esp
46e7b1:	8b c6                	mov    %esi,%eax
46e7b3:	5e                   	pop    %esi
46e7b4:	c2 04 00             	ret    $0x4
46e7b7:	cc                   	int3
46e7b8:	cc                   	int3
46e7b9:	cc                   	int3
46e7ba:	cc                   	int3
46e7bb:	cc                   	int3
46e7bc:	cc                   	int3
46e7bd:	cc                   	int3
46e7be:	cc                   	int3
46e7bf:	cc                   	int3
46e7c0:	cc                   	int3
46e7c1:	cc                   	int3
46e7c2:	cc                   	int3
46e7c3:	cc                   	int3
46e7c4:	cc                   	int3
46e7c5:	cc                   	int3
46e7c6:	cc                   	int3
46e7c7:	cc                   	int3
46e7c8:	cc                   	int3
46e7c9:	cc                   	int3
46e7ca:	cc                   	int3
46e7cb:	cc                   	int3
46e7cc:	cc                   	int3
46e7cd:	cc                   	int3
46e7ce:	cc                   	int3
46e7cf:	cc                   	int3
46e7d0:	56                   	push   %esi
46e7d1:	8b f1                	mov    %ecx,%esi
46e7d3:	e8 34 19 fc ff       	call   0x43010c
46e7d8:	f6 44 24 08 01       	testb  $0x1,0x8(%esp)
46e7dd:	74 0b                	je     0x46e7ea
46e7df:	6a 40                	push   $0x40
46e7e1:	56                   	push   %esi
46e7e2:	e8 b5 36 f9 ff       	call   0x401e9c
46e7e7:	83 c4 08             	add    $0x8,%esp
46e7ea:	8b c6                	mov    %esi,%eax
46e7ec:	5e                   	pop    %esi
46e7ed:	c2 04 00             	ret    $0x4
46e7f0:	cc                   	int3
46e7f1:	cc                   	int3
46e7f2:	cc                   	int3
46e7f3:	cc                   	int3
46e7f4:	cc                   	int3
46e7f5:	cc                   	int3
46e7f6:	cc                   	int3
46e7f7:	cc                   	int3
46e7f8:	cc                   	int3
46e7f9:	cc                   	int3
46e7fa:	cc                   	int3
46e7fb:	cc                   	int3
46e7fc:	cc                   	int3
46e7fd:	cc                   	int3
46e7fe:	cc                   	int3
46e7ff:	cc                   	int3
46e800:	8b 44 24 04          	mov    0x4(%esp),%eax
46e804:	8b 00                	mov    (%eax),%eax
46e806:	ff 70 f4             	push   -0xc(%eax)
46e809:	50                   	push   %eax
46e80a:	e8 5f 6d fa ff       	call   0x41556e
46e80f:	c2 04 00             	ret    $0x4
46e812:	cc                   	int3
46e813:	cc                   	int3
46e814:	cc                   	int3
46e815:	cc                   	int3
46e816:	cc                   	int3
46e817:	cc                   	int3
46e818:	cc                   	int3
46e819:	cc                   	int3
46e81a:	cc                   	int3
46e81b:	cc                   	int3
46e81c:	cc                   	int3
46e81d:	cc                   	int3
46e81e:	cc                   	int3
46e81f:	cc                   	int3
46e820:	8b 44 24 08          	mov    0x8(%esp),%eax
46e824:	8b 88 08 01 00 00    	mov    0x108(%eax),%ecx
46e82a:	8b 44 24 04          	mov    0x4(%esp),%eax
46e82e:	51                   	push   %ecx
46e82f:	ff b0 08 01 00 00    	push   0x108(%eax)
46e835:	e8 a1 4c f9 ff       	call   0x4034db
46e83a:	83 c4 08             	add    $0x8,%esp
46e83d:	c3                   	ret
46e83e:	cc                   	int3
46e83f:	cc                   	int3
46e840:	cc                   	int3
46e841:	cc                   	int3
46e842:	cc                   	int3
46e843:	cc                   	int3
46e844:	cc                   	int3
46e845:	cc                   	int3
46e846:	cc                   	int3
46e847:	cc                   	int3
46e848:	cc                   	int3
46e849:	cc                   	int3
46e84a:	cc                   	int3
46e84b:	cc                   	int3
46e84c:	cc                   	int3
46e84d:	cc                   	int3
46e84e:	cc                   	int3
46e84f:	cc                   	int3
46e850:	55                   	push   %ebp
46e851:	8b ec                	mov    %esp,%ebp
46e853:	6a ff                	push   $0xffffffff
46e855:	68 7a 4c b3 00       	push   $0xb34c7a
46e85a:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
46e860:	50                   	push   %eax
46e861:	51                   	push   %ecx
46e862:	a1 24 f6 d5 00       	mov    0xd5f624,%eax
46e867:	33 c5                	xor    %ebp,%eax
46e869:	50                   	push   %eax
46e86a:	8d 45 f4             	lea    -0xc(%ebp),%eax
46e86d:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
46e873:	68 88 01 00 00       	push   $0x188
46e878:	e8 00 c1 fb ff       	call   0x42a97d
46e87d:	83 c4 04             	add    $0x4,%esp
46e880:	89 45 f0             	mov    %eax,-0x10(%ebp)
46e883:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
46e88a:	85 c0                	test   %eax,%eax
46e88c:	74 16                	je     0x46e8a4
46e88e:	8b c8                	mov    %eax,%ecx
46e890:	e8 52 fe f9 ff       	call   0x40e6e7
46e895:	8b 4d f4             	mov    -0xc(%ebp),%ecx
46e898:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
46e89f:	59                   	pop    %ecx
46e8a0:	8b e5                	mov    %ebp,%esp
46e8a2:	5d                   	pop    %ebp
46e8a3:	c3                   	ret
46e8a4:	33 c0                	xor    %eax,%eax
46e8a6:	8b 4d f4             	mov    -0xc(%ebp),%ecx
46e8a9:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
46e8b0:	59                   	pop    %ecx
46e8b1:	8b e5                	mov    %ebp,%esp
46e8b3:	5d                   	pop    %ebp
46e8b4:	c3                   	ret
46e8b5:	cc                   	int3
46e8b6:	cc                   	int3
46e8b7:	cc                   	int3
46e8b8:	cc                   	int3
46e8b9:	cc                   	int3
46e8ba:	cc                   	int3
46e8bb:	cc                   	int3
46e8bc:	cc                   	int3
46e8bd:	cc                   	int3
46e8be:	cc                   	int3
46e8bf:	cc                   	int3
46e8c0:	cc                   	int3
46e8c1:	cc                   	int3
46e8c2:	cc                   	int3
46e8c3:	cc                   	int3
46e8c4:	cc                   	int3
46e8c5:	cc                   	int3
46e8c6:	cc                   	int3
46e8c7:	cc                   	int3
46e8c8:	cc                   	int3
46e8c9:	cc                   	int3
46e8ca:	cc                   	int3
46e8cb:	cc                   	int3
46e8cc:	cc                   	int3
46e8cd:	cc                   	int3
46e8ce:	cc                   	int3
46e8cf:	cc                   	int3
46e8d0:	6a 00                	push   $0x0
46e8d2:	6a 00                	push   $0x0
46e8d4:	68 09 10 00 00       	push   $0x1009
46e8d9:	ff 71 20             	push   0x20(%ecx)
46e8dc:	ff 15 20 40 d8 00    	call   *0xd84020
46e8e2:	c3                   	ret
46e8e3:	cc                   	int3
46e8e4:	cc                   	int3
46e8e5:	cc                   	int3
46e8e6:	cc                   	int3
46e8e7:	cc                   	int3
46e8e8:	cc                   	int3
46e8e9:	cc                   	int3
46e8ea:	cc                   	int3
46e8eb:	cc                   	int3
46e8ec:	cc                   	int3
46e8ed:	cc                   	int3
46e8ee:	cc                   	int3
46e8ef:	cc                   	int3
46e8f0:	8d 81 00 01 00 00    	lea    0x100(%ecx),%eax
46e8f6:	50                   	push   %eax
46e8f7:	68 eb 03 00 00       	push   $0x3eb
46e8fc:	ff 74 24 0c          	push   0xc(%esp)
46e900:	e8 96 57 fb ff       	call   0x42409b
46e905:	c2 04 00             	ret    $0x4
46e908:	cc                   	int3
46e909:	cc                   	int3
46e90a:	cc                   	int3
46e90b:	cc                   	int3
46e90c:	cc                   	int3
46e90d:	cc                   	int3
46e90e:	cc                   	int3
46e90f:	cc                   	int3
46e910:	83 ec 14             	sub    $0x14,%esp
46e913:	56                   	push   %esi
46e914:	8b f1                	mov    %ecx,%esi
46e916:	57                   	push   %edi
46e917:	8b 8e d4 00 00 00    	mov    0xd4(%esi),%ecx
46e91d:	8d 86 c0 00 00 00    	lea    0xc0(%esi),%eax
46e923:	50                   	push   %eax
46e924:	8b 11                	mov    (%ecx),%edx
46e926:	ff 52 3c             	call   *0x3c(%edx)
46e929:	8b 86 d0 00 00 00    	mov    0xd0(%esi),%eax
46e92f:	8d be c8 00 00 00    	lea    0xc8(%esi),%edi
46e935:	2b 07                	sub    (%edi),%eax
46e937:	c1 f8 06             	sar    $0x6,%eax
46e93a:	83 f8 64             	cmp    $0x64,%eax
46e93d:	73 09                	jae    0x46e948
46e93f:	6a 64                	push   $0x64
46e941:	8b cf                	mov    %edi,%ecx
46e943:	e8 3a 44 fa ff       	call   0x412d82
46e948:	8b 8e d4 00 00 00    	mov    0xd4(%esi),%ecx
46e94e:	8d 86 e0 00 00 00    	lea    0xe0(%esi),%eax
46e954:	50                   	push   %eax
46e955:	8b 11                	mov    (%ecx),%edx
46e957:	ff 52 08             	call   *0x8(%edx)
46e95a:	8b 8e d4 00 00 00    	mov    0xd4(%esi),%ecx
46e960:	8b 01                	mov    (%ecx),%eax
46e962:	ff 50 18             	call   *0x18(%eax)
46e965:	8b 8e d4 00 00 00    	mov    0xd4(%esi),%ecx
46e96b:	8d 54 24 10          	lea    0x10(%esp),%edx
46e96f:	52                   	push   %edx
46e970:	8b 01                	mov    (%ecx),%eax
46e972:	ff 50 20             	call   *0x20(%eax)
46e975:	50                   	push   %eax
46e976:	8b cf                	mov    %edi,%ecx
46e978:	e8 71 94 fc ff       	call   0x437dee
46e97d:	8b 44 24 10          	mov    0x10(%esp),%eax
46e981:	85 c0                	test   %eax,%eax
46e983:	74 2e                	je     0x46e9b3
46e985:	ff 74 24 0c          	push   0xc(%esp)
46e989:	8d 4c 24 14          	lea    0x14(%esp),%ecx
46e98d:	51                   	push   %ecx
46e98e:	ff 74 24 1c          	push   0x1c(%esp)
46e992:	50                   	push   %eax
46e993:	e8 b5 86 fb ff       	call   0x42704d
46e998:	8b 4c 24 20          	mov    0x20(%esp),%ecx
46e99c:	83 c4 10             	add    $0x10,%esp
46e99f:	8b 44 24 18          	mov    0x18(%esp),%eax
46e9a3:	2b c1                	sub    %ecx,%eax
46e9a5:	c1 f8 06             	sar    $0x6,%eax
46e9a8:	50                   	push   %eax
46e9a9:	51                   	push   %ecx
46e9aa:	8d 4c 24 18          	lea    0x18(%esp),%ecx
46e9ae:	e8 b8 a4 fb ff       	call   0x428e6b
46e9b3:	8a 54 24 08          	mov    0x8(%esp),%dl
46e9b7:	8b 86 cc 00 00 00    	mov    0xcc(%esi),%eax
46e9bd:	8b 0f                	mov    (%edi),%ecx
46e9bf:	88 54 24 08          	mov    %dl,0x8(%esp)
46e9c3:	8d 54 24 08          	lea    0x8(%esp),%edx
46e9c7:	52                   	push   %edx
46e9c8:	8b d0                	mov    %eax,%edx
46e9ca:	2b d1                	sub    %ecx,%edx
46e9cc:	c1 fa 06             	sar    $0x6,%edx
46e9cf:	52                   	push   %edx
46e9d0:	50                   	push   %eax
46e9d1:	51                   	push   %ecx
46e9d2:	e8 f9 5c fc ff       	call   0x4346d0
46e9d7:	66 c7 86 dc 00 00 00 	movw   $0x101,0xdc(%esi)
46e9de:	01 01
46e9e0:	83 c4 10             	add    $0x10,%esp
46e9e3:	8b 07                	mov    (%edi),%eax
46e9e5:	3b 86 cc 00 00 00    	cmp    0xcc(%esi),%eax
46e9eb:	74 40                	je     0x46ea2d
46e9ed:	0f 1f 00             	nopl   (%eax)
46e9f0:	8b 48 38             	mov    0x38(%eax),%ecx
46e9f3:	83 f9 07             	cmp    $0x7,%ecx
46e9f6:	74 0f                	je     0x46ea07
46e9f8:	83 f9 08             	cmp    $0x8,%ecx
46e9fb:	74 0a                	je     0x46ea07
46e9fd:	83 f9 06             	cmp    $0x6,%ecx
46ea00:	74 05                	je     0x46ea07
46ea02:	83 f9 05             	cmp    $0x5,%ecx
46ea05:	75 07                	jne    0x46ea0e
46ea07:	c6 86 dd 00 00 00 00 	movb   $0x0,0xdd(%esi)
46ea0e:	8b 48 38             	mov    0x38(%eax),%ecx
46ea11:	83 f9 01             	cmp    $0x1,%ecx
46ea14:	74 05                	je     0x46ea1b
46ea16:	83 f9 02             	cmp    $0x2,%ecx
46ea19:	75 07                	jne    0x46ea22
46ea1b:	c6 86 dc 00 00 00 00 	movb   $0x0,0xdc(%esi)
46ea22:	83 c0 40             	add    $0x40,%eax
46ea25:	3b 86 cc 00 00 00    	cmp    0xcc(%esi),%eax
46ea2b:	75 c3                	jne    0x46e9f0
46ea2d:	8b 47 04             	mov    0x4(%edi),%eax
46ea30:	2b 07                	sub    (%edi),%eax
46ea32:	5f                   	pop    %edi
46ea33:	5e                   	pop    %esi
46ea34:	a9 c0 ff ff ff       	test   $0xffffffc0,%eax
46ea39:	75 0e                	jne    0x46ea49
46ea3b:	6a 00                	push   $0x0
46ea3d:	6a 40                	push   $0x40
46ea3f:	68 40 40 bd 00       	push   $0xbd4040
46ea44:	e8 ff 73 f9 ff       	call   0x405e48
46ea49:	83 c4 14             	add    $0x14,%esp
46ea4c:	c3                   	ret
46ea4d:	cc                   	int3
46ea4e:	cc                   	int3