43569a:	5e                   	pop    %esi
43569b:	33 cd                	xor    %ebp,%ecx
43569d:	5b                   	pop    %ebx
43569e:	e8 07 45 fe ff       	call   0x419baa
4356a3:	c9                   	leave
4356a4:	c3                   	ret
4356a5:	cc                   	int3
4356a6:	cc                   	int3
4356a7:	cc                   	int3
4356a8:	cc                   	int3
4356a9:	cc                   	int3
4356aa:	cc                   	int3
4356ab:	cc                   	int3
4356ac:	cc                   	int3
4356ad:	cc                   	int3
4356ae:	cc                   	int3
4356af:	cc                   	int3
4356b0:	ff 15 48 e0 43 00    	call   *0x43e048
4356b6:	85 c0                	test   %eax,%eax
4356b8:	a3 a8 71 45 00       	mov    %eax,0x4571a8
4356bd:	0f 95 c0             	setne  %al
4356c0:	c3                   	ret
4356c1:	cc                   	int3
4356c2:	cc                   	int3
4356c3:	cc                   	int3
4356c4:	cc                   	int3
4356c5:	cc                   	int3
4356c6:	cc                   	int3
4356c7:	cc                   	int3
4356c8:	cc                   	int3
4356c9:	cc                   	int3
4356ca:	cc                   	int3
4356cb:	cc                   	int3
4356cc:	cc                   	int3
4356cd:	cc                   	int3
4356ce:	cc                   	int3
4356cf:	cc                   	int3
4356d0:	83 25 a8 71 45 00 00 	andl   $0x0,0x4571a8
4356d7:	b0 01                	mov    $0x1,%al
4356d9:	c3                   	ret
4356da:	8b ff                	mov    %edi,%edi
4356dc:	55                   	push   %ebp
4356dd:	8b ec                	mov    %esp,%ebp
4356df:	53                   	push   %ebx
4356e0:	56                   	push   %esi
4356e1:	57                   	push   %edi
4356e2:	8b 7d 08             	mov    0x8(%ebp),%edi
4356e5:	3b 7d 0c             	cmp    0xc(%ebp),%edi
4356e8:	74 51                	je     0x43573b
4356ea:	8b f7                	mov    %edi,%esi
4356ec:	8b 1e                	mov    (%esi),%ebx
4356ee:	85 db                	test   %ebx,%ebx
4356f0:	74 0e                	je     0x435700
4356f2:	8b cb                	mov    %ebx,%ecx
4356f4:	ff 15 5c e2 43 00    	call   *0x43e25c
4356fa:	ff d3                	call   *%ebx
4356fc:	84 c0                	test   %al,%al
4356fe:	74 08                	je     0x435708
435700:	83 c6 08             	add    $0x8,%esi
435703:	3b 75 0c             	cmp    0xc(%ebp),%esi
435706:	75 e4                	jne    0x4356ec
435708:	3b 75 0c             	cmp    0xc(%ebp),%esi
43570b:	74 2e                	je     0x43573b
43570d:	3b f7                	cmp    %edi,%esi
43570f:	74 26                	je     0x435737
435711:	83 c6 fc             	add    $0xfffffffc,%esi
435714:	83 7e fc 00          	cmpl   $0x0,-0x4(%esi)
435718:	74 13                	je     0x43572d
43571a:	8b 1e                	mov    (%esi),%ebx
43571c:	85 db                	test   %ebx,%ebx
43571e:	74 0d                	je     0x43572d
435720:	6a 00                	push   $0x0
435722:	8b cb                	mov    %ebx,%ecx
435724:	ff 15 5c e2 43 00    	call   *0x43e25c
43572a:	ff d3                	call   *%ebx
43572c:	59                   	pop    %ecx
43572d:	83 ee 08             	sub    $0x8,%esi
435730:	8d 46 04             	lea    0x4(%esi),%eax
435733:	3b c7                	cmp    %edi,%eax
435735:	75 dd                	jne    0x435714
435737:	32 c0                	xor    %al,%al
435739:	eb 02                	jmp    0x43573d
43573b:	b0 01                	mov    $0x1,%al
43573d:	5f                   	pop    %edi
43573e:	5e                   	pop    %esi
43573f:	5b                   	pop    %ebx
435740:	5d                   	pop    %ebp
435741:	c3                   	ret
435742:	8b ff                	mov    %edi,%edi
435744:	55                   	push   %ebp
435745:	8b ec                	mov    %esp,%ebp
435747:	56                   	push   %esi
435748:	8b 75 0c             	mov    0xc(%ebp),%esi
43574b:	39 75 08             	cmp    %esi,0x8(%ebp)
43574e:	74 1e                	je     0x43576e
435750:	57                   	push   %edi
435751:	8b 7e fc             	mov    -0x4(%esi),%edi
435754:	85 ff                	test   %edi,%edi
435756:	74 0d                	je     0x435765
435758:	6a 00                	push   $0x0
43575a:	8b cf                	mov    %edi,%ecx
43575c:	ff 15 5c e2 43 00    	call   *0x43e25c
435762:	ff d7                	call   *%edi
435764:	59                   	pop    %ecx
435765:	83 ee 08             	sub    $0x8,%esi
435768:	3b 75 08             	cmp    0x8(%ebp),%esi
43576b:	75 e4                	jne    0x435751
43576d:	5f                   	pop    %edi
43576e:	b0 01                	mov    $0x1,%al
435770:	5e                   	pop    %esi
435771:	5d                   	pop    %ebp
435772:	c3                   	ret
435773:	8b ff                	mov    %edi,%edi
435775:	55                   	push   %ebp
435776:	8b ec                	mov    %esp,%ebp
435778:	8b 4d 08             	mov    0x8(%ebp),%ecx
43577b:	8b c1                	mov    %ecx,%eax
43577d:	53                   	push   %ebx
43577e:	83 e0 10             	and    $0x10,%eax
435781:	bb 00 02 00 00       	mov    $0x200,%ebx
435786:	56                   	push   %esi
435787:	c1 e0 03             	shl    $0x3,%eax
43578a:	57                   	push   %edi
43578b:	f6 c1 08             	test   $0x8,%cl
43578e:	74 02                	je     0x435792
435790:	0b c3                	or     %ebx,%eax
435792:	f6 c1 04             	test   $0x4,%cl
435795:	74 05                	je     0x43579c
435797:	0d 00 04 00 00       	or     $0x400,%eax
43579c:	f6 c1 02             	test   $0x2,%cl
43579f:	74 05                	je     0x4357a6
4357a1:	0d 00 08 00 00       	or     $0x800,%eax
4357a6:	f6 c1 01             	test   $0x1,%cl
4357a9:	74 05                	je     0x4357b0
4357ab:	0d 00 10 00 00       	or     $0x1000,%eax
4357b0:	be 00 01 00 00       	mov    $0x100,%esi
4357b5:	f7 c1 00 00 08 00    	test   $0x80000,%ecx
4357bb:	74 02                	je     0x4357bf
4357bd:	0b c6                	or     %esi,%eax
4357bf:	8b d1                	mov    %ecx,%edx
4357c1:	bf 00 03 00 00       	mov    $0x300,%edi
4357c6:	23 d7                	and    %edi,%edx
4357c8:	74 1f                	je     0x4357e9
4357ca:	3b d6                	cmp    %esi,%edx
4357cc:	74 16                	je     0x4357e4
4357ce:	3b d3                	cmp    %ebx,%edx
4357d0:	74 0b                	je     0x4357dd
4357d2:	3b d7                	cmp    %edi,%edx
4357d4:	75 13                	jne    0x4357e9
4357d6:	0d 00 60 00 00       	or     $0x6000,%eax
4357db:	eb 0c                	jmp    0x4357e9
4357dd:	0d 00 40 00 00       	or     $0x4000,%eax
4357e2:	eb 05                	jmp    0x4357e9
4357e4:	0d 00 20 00 00       	or     $0x2000,%eax
4357e9:	ba 00 00 00 03       	mov    $0x3000000,%edx
4357ee:	5f                   	pop    %edi
4357ef:	23 ca                	and    %edx,%ecx
4357f1:	5e                   	pop    %esi
4357f2:	5b                   	pop    %ebx
4357f3:	81 f9 00 00 00 01    	cmp    $0x1000000,%ecx
4357f9:	74 18                	je     0x435813
4357fb:	81 f9 00 00 00 02    	cmp    $0x2000000,%ecx
435801:	74 0b                	je     0x43580e
435803:	3b ca                	cmp    %edx,%ecx
435805:	75 11                	jne    0x435818
435807:	0d 00 80 00 00       	or     $0x8000,%eax
43580c:	5d                   	pop    %ebp
43580d:	c3                   	ret
43580e:	83 c8 40             	or     $0x40,%eax
435811:	5d                   	pop    %ebp
435812:	c3                   	ret
435813:	0d 40 80 00 00       	or     $0x8040,%eax
435818:	5d                   	pop    %ebp
435819:	c3                   	ret
43581a:	8b ff                	mov    %edi,%edi
43581c:	55                   	push   %ebp
43581d:	8b ec                	mov    %esp,%ebp
43581f:	83 ec 0c             	sub    $0xc,%esp
435822:	56                   	push   %esi
435823:	dd 7d fc             	fnstsw -0x4(%ebp)
435826:	db e2                	fnclex
435828:	33 f6                	xor    %esi,%esi
43582a:	46                   	inc    %esi
43582b:	39 35 bc 68 45 00    	cmp    %esi,0x4568bc
435831:	0f 8c 82 00 00 00    	jl     0x4358b9
435837:	66 8b 45 fc          	mov    -0x4(%ebp),%ax
43583b:	33 c9                	xor    %ecx,%ecx
43583d:	8b d1                	mov    %ecx,%edx
43583f:	57                   	push   %edi
435840:	bf 00 00 08 00       	mov    $0x80000,%edi
435845:	a8 3f                	test   $0x3f,%al
435847:	74 29                	je     0x435872
435849:	0f b7 d0             	movzwl %ax,%edx
43584c:	23 d6                	and    %esi,%edx
43584e:	c1 e2 04             	shl    $0x4,%edx
435851:	a8 04                	test   $0x4,%al
435853:	74 03                	je     0x435858
435855:	83 ca 08             	or     $0x8,%edx
435858:	a8 08                	test   $0x8,%al
43585a:	74 03                	je     0x43585f
43585c:	83 ca 04             	or     $0x4,%edx
43585f:	a8 10                	test   $0x10,%al
435861:	74 03                	je     0x435866
435863:	83 ca 02             	or     $0x2,%edx
435866:	a8 20                	test   $0x20,%al
435868:	74 02                	je     0x43586c
43586a:	0b d6                	or     %esi,%edx
43586c:	a8 02                	test   $0x2,%al
43586e:	74 02                	je     0x435872
435870:	0b d7                	or     %edi,%edx
435872:	0f ae 5d f8          	stmxcsr -0x8(%ebp)
435876:	8b 45 f8             	mov    -0x8(%ebp),%eax
435879:	83 e0 c0             	and    $0xffffffc0,%eax
43587c:	89 45 f4             	mov    %eax,-0xc(%ebp)
43587f:	0f ae 55 f4          	ldmxcsr -0xc(%ebp)
435883:	8b 45 f8             	mov    -0x8(%ebp),%eax
435886:	a8 3f                	test   $0x3f,%al
435888:	74 28                	je     0x4358b2
43588a:	8b c8                	mov    %eax,%ecx
43588c:	23 ce                	and    %esi,%ecx
43588e:	c1 e1 04             	shl    $0x4,%ecx
435891:	a8 04                	test   $0x4,%al
435893:	74 03                	je     0x435898
435895:	83 c9 08             	or     $0x8,%ecx
435898:	a8 08                	test   $0x8,%al
43589a:	74 03                	je     0x43589f
43589c:	83 c9 04             	or     $0x4,%ecx
43589f:	a8 10                	test   $0x10,%al
4358a1:	74 03                	je     0x4358a6
4358a3:	83 c9 02             	or     $0x2,%ecx
4358a6:	a8 20                	test   $0x20,%al
4358a8:	74 02                	je     0x4358ac
4358aa:	0b ce                	or     %esi,%ecx
4358ac:	a8 02                	test   $0x2,%al
4358ae:	74 02                	je     0x4358b2
4358b0:	0b cf                	or     %edi,%ecx
4358b2:	0b ca                	or     %edx,%ecx
4358b4:	8b c1                	mov    %ecx,%eax
4358b6:	5f                   	pop    %edi
4358b7:	eb 3c                	jmp    0x4358f5
4358b9:	66 8b 4d fc          	mov    -0x4(%ebp),%cx
4358bd:	33 c0                	xor    %eax,%eax
4358bf:	f6 c1 3f             	test   $0x3f,%cl
4358c2:	74 31                	je     0x4358f5
4358c4:	0f b7 c1             	movzwl %cx,%eax
4358c7:	23 c6                	and    %esi,%eax
4358c9:	c1 e0 04             	shl    $0x4,%eax
4358cc:	f6 c1 04             	test   $0x4,%cl
4358cf:	74 03                	je     0x4358d4
4358d1:	83 c8 08             	or     $0x8,%eax
4358d4:	f6 c1 08             	test   $0x8,%cl
4358d7:	74 03                	je     0x4358dc
4358d9:	83 c8 04             	or     $0x4,%eax
4358dc:	f6 c1 10             	test   $0x10,%cl
4358df:	74 03                	je     0x4358e4
4358e1:	83 c8 02             	or     $0x2,%eax
4358e4:	f6 c1 20             	test   $0x20,%cl
4358e7:	74 02                	je     0x4358eb
4358e9:	0b c6                	or     %esi,%eax
4358eb:	f6 c1 02             	test   $0x2,%cl
4358ee:	74 05                	je     0x4358f5
4358f0:	0d 00 00 08 00       	or     $0x80000,%eax
4358f5:	5e                   	pop    %esi
4358f6:	c9                   	leave
4358f7:	c3                   	ret
4358f8:	8b ff                	mov    %edi,%edi
4358fa:	55                   	push   %ebp
4358fb:	8b ec                	mov    %esp,%ebp
4358fd:	83 ec 10             	sub    $0x10,%esp
435900:	9b d9 7d f8          	fstcw  -0x8(%ebp)
435904:	66 8b 45 f8          	mov    -0x8(%ebp),%ax
435908:	0f b7 c8             	movzwl %ax,%ecx
43590b:	83 e1 01             	and    $0x1,%ecx
43590e:	c1 e1 04             	shl    $0x4,%ecx
435911:	a8 04                	test   $0x4,%al
435913:	74 03                	je     0x435918
435915:	83 c9 08             	or     $0x8,%ecx
435918:	a8 08                	test   $0x8,%al
43591a:	74 03                	je     0x43591f
43591c:	83 c9 04             	or     $0x4,%ecx
43591f:	a8 10                	test   $0x10,%al
435921:	74 03                	je     0x435926
435923:	83 c9 02             	or     $0x2,%ecx
435926:	a8 20                	test   $0x20,%al
435928:	74 03                	je     0x43592d
43592a:	83 c9 01             	or     $0x1,%ecx
43592d:	a8 02                	test   $0x2,%al
43592f:	74 06                	je     0x435937
435931:	81 c9 00 00 08 00    	or     $0x80000,%ecx
435937:	53                   	push   %ebx
435938:	56                   	push   %esi
435939:	0f b7 f0             	movzwl %ax,%esi
43593c:	bb 00 0c 00 00       	mov    $0xc00,%ebx
435941:	8b d6                	mov    %esi,%edx
435943:	57                   	push   %edi
435944:	bf 00 02 00 00       	mov    $0x200,%edi
435949:	23 d3                	and    %ebx,%edx
43594b:	74 26                	je     0x435973
43594d:	81 fa 00 04 00 00    	cmp    $0x400,%edx
435953:	74 18                	je     0x43596d
435955:	81 fa 00 08 00 00    	cmp    $0x800,%edx
43595b:	74 0c                	je     0x435969
43595d:	3b d3                	cmp    %ebx,%edx
43595f:	75 12                	jne    0x435973
435961:	81 c9 00 03 00 00    	or     $0x300,%ecx
435967:	eb 0a                	jmp    0x435973
435969:	0b cf                	or     %edi,%ecx
43596b:	eb 06                	jmp    0x435973
43596d:	81 c9 00 01 00 00    	or     $0x100,%ecx
435973:	81 e6 00 03 00 00    	and    $0x300,%esi
435979:	74 0c                	je     0x435987
43597b:	3b f7                	cmp    %edi,%esi
43597d:	75 0e                	jne    0x43598d
43597f:	81 c9 00 00 01 00    	or     $0x10000,%ecx
435985:	eb 06                	jmp    0x43598d
435987:	81 c9 00 00 02 00    	or     $0x20000,%ecx
43598d:	0f b7 c0             	movzwl %ax,%eax
435990:	ba 00 10 00 00       	mov    $0x1000,%edx
435995:	85 c2                	test   %eax,%edx
435997:	74 06                	je     0x43599f
435999:	81 c9 00 00 04 00    	or     $0x40000,%ecx
43599f:	8b 7d 0c             	mov    0xc(%ebp),%edi
4359a2:	8b f7                	mov    %edi,%esi
4359a4:	8b 45 08             	mov    0x8(%ebp),%eax
4359a7:	f7 d6                	not    %esi
4359a9:	23 f1                	and    %ecx,%esi
4359ab:	23 c7                	and    %edi,%eax
4359ad:	0b f0                	or     %eax,%esi
4359af:	3b f1                	cmp    %ecx,%esi
4359b1:	0f 84 a8 00 00 00    	je     0x435a5f
4359b7:	56                   	push   %esi
4359b8:	e8 3c 02 00 00       	call   0x435bf9
4359bd:	59                   	pop    %ecx
4359be:	66 89 45 fc          	mov    %ax,-0x4(%ebp)
4359c2:	d9 6d fc             	fldcw  -0x4(%ebp)
4359c5:	9b d9 7d fc          	fstcw  -0x4(%ebp)
4359c9:	66 8b 45 fc          	mov    -0x4(%ebp),%ax
4359cd:	0f b7 f0             	movzwl %ax,%esi
4359d0:	83 e6 01             	and    $0x1,%esi
4359d3:	c1 e6 04             	shl    $0x4,%esi
4359d6:	a8 04                	test   $0x4,%al
4359d8:	74 03                	je     0x4359dd
4359da:	83 ce 08             	or     $0x8,%esi
4359dd:	a8 08                	test   $0x8,%al
4359df:	74 03                	je     0x4359e4
4359e1:	83 ce 04             	or     $0x4,%esi
4359e4:	a8 10                	test   $0x10,%al
4359e6:	74 03                	je     0x4359eb
4359e8:	83 ce 02             	or     $0x2,%esi
4359eb:	a8 20                	test   $0x20,%al