425719:	f7 d0                	not    %eax
42571b:	83 e0 01             	and    $0x1,%eax
42571e:	eb 05                	jmp    0x425725
425720:	33 c0                	xor    %eax,%eax
425722:	89 07                	mov    %eax,(%edi)
425724:	40                   	inc    %eax
425725:	8b 4d fc             	mov    -0x4(%ebp),%ecx
425728:	5f                   	pop    %edi
425729:	5e                   	pop    %esi
42572a:	33 cd                	xor    %ebp,%ecx
42572c:	5b                   	pop    %ebx
42572d:	e8 75 45 fe ff       	call   0x409ca7
425732:	c9                   	leave
425733:	c2 04 00             	ret    $0x4
425736:	8b ff                	mov    %edi,%edi
425738:	55                   	push   %ebp
425739:	8b ec                	mov    %esp,%ebp
42573b:	81 ec f4 00 00 00    	sub    $0xf4,%esp
425741:	a1 c0 d0 43 00       	mov    0x43d0c0,%eax
425746:	33 c5                	xor    %ebp,%eax
425748:	89 45 fc             	mov    %eax,-0x4(%ebp)
42574b:	53                   	push   %ebx
42574c:	56                   	push   %esi
42574d:	8b 75 08             	mov    0x8(%ebp),%esi
425750:	57                   	push   %edi
425751:	e8 93 6b ff ff       	call   0x41c2e9
425756:	8b d8                	mov    %eax,%ebx
425758:	e8 8c 6b ff ff       	call   0x41c2e9
42575d:	56                   	push   %esi
42575e:	8b b8 4c 03 00 00    	mov    0x34c(%eax),%edi
425764:	e8 a2 00 00 00       	call   0x42580b
425769:	59                   	pop    %ecx
42576a:	8b 4b 60             	mov    0x60(%ebx),%ecx
42576d:	8b f0                	mov    %eax,%esi
42576f:	f7 d9                	neg    %ecx
425771:	8d 85 0c ff ff ff    	lea    -0xf4(%ebp),%eax
425777:	6a 78                	push   $0x78
425779:	1b c9                	sbb    %ecx,%ecx
42577b:	81 e1 02 f0 ff ff    	and    $0xfffff002,%ecx
425781:	50                   	push   %eax
425782:	81 c1 01 10 00 00    	add    $0x1001,%ecx
425788:	51                   	push   %ecx
425789:	56                   	push   %esi
42578a:	ff 15 98 10 43 00    	call   *0x431098
425790:	85 c0                	test   %eax,%eax
425792:	75 05                	jne    0x425799
425794:	21 07                	and    %eax,(%edi)
425796:	40                   	inc    %eax
425797:	eb 61                	jmp    0x4257fa
425799:	8d 85 0c ff ff ff    	lea    -0xf4(%ebp),%eax
42579f:	50                   	push   %eax
4257a0:	ff 73 50             	push   0x50(%ebx)
4257a3:	e8 8d 2f ff ff       	call   0x418735
4257a8:	59                   	pop    %ecx
4257a9:	59                   	pop    %ecx
4257aa:	8b 4b 60             	mov    0x60(%ebx),%ecx
4257ad:	85 c0                	test   %eax,%eax
4257af:	75 09                	jne    0x4257ba
4257b1:	85 c9                	test   %ecx,%ecx
4257b3:	75 32                	jne    0x4257e7
4257b5:	57                   	push   %edi
4257b6:	6a 01                	push   $0x1
4257b8:	eb 20                	jmp    0x4257da
4257ba:	85 c9                	test   %ecx,%ecx
4257bc:	75 32                	jne    0x4257f0
4257be:	39 4b 5c             	cmp    %ecx,0x5c(%ebx)
4257c1:	74 2d                	je     0x4257f0
4257c3:	8d 85 0c ff ff ff    	lea    -0xf4(%ebp),%eax
4257c9:	50                   	push   %eax
4257ca:	ff 73 50             	push   0x50(%ebx)
4257cd:	e8 63 2f ff ff       	call   0x418735
4257d2:	59                   	pop    %ecx
4257d3:	59                   	pop    %ecx
4257d4:	85 c0                	test   %eax,%eax
4257d6:	75 18                	jne    0x4257f0
4257d8:	57                   	push   %edi
4257d9:	50                   	push   %eax
4257da:	56                   	push   %esi
4257db:	e8 85 01 00 00       	call   0x425965
4257e0:	83 c4 0c             	add    $0xc,%esp
4257e3:	85 c0                	test   %eax,%eax
4257e5:	74 09                	je     0x4257f0
4257e7:	83 0f 04             	orl    $0x4,(%edi)
4257ea:	89 77 04             	mov    %esi,0x4(%edi)
4257ed:	89 77 08             	mov    %esi,0x8(%edi)
4257f0:	8b 07                	mov    (%edi),%eax
4257f2:	c1 e8 02             	shr    $0x2,%eax
4257f5:	f7 d0                	not    %eax
4257f7:	83 e0 01             	and    $0x1,%eax
4257fa:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4257fd:	5f                   	pop    %edi
4257fe:	5e                   	pop    %esi
4257ff:	33 cd                	xor    %ebp,%ecx
425801:	5b                   	pop    %ebx
425802:	e8 a0 44 fe ff       	call   0x409ca7
425807:	c9                   	leave
425808:	c2 04 00             	ret    $0x4
42580b:	8b ff                	mov    %edi,%edi
42580d:	55                   	push   %ebp
42580e:	8b ec                	mov    %esp,%ebp
425810:	8b 55 08             	mov    0x8(%ebp),%edx
425813:	56                   	push   %esi
425814:	33 f6                	xor    %esi,%esi
425816:	0f b7 0a             	movzwl (%edx),%ecx
425819:	83 c2 02             	add    $0x2,%edx
42581c:	66 85 c9             	test   %cx,%cx
42581f:	74 39                	je     0x42585a
425821:	57                   	push   %edi
425822:	6a 05                	push   $0x5
425824:	5f                   	pop    %edi
425825:	8d 41 9f             	lea    -0x61(%ecx),%eax
425828:	66 3b c7             	cmp    %di,%ax
42582b:	77 08                	ja     0x425835
42582d:	81 c1 d9 ff 00 00    	add    $0xffd9,%ecx
425833:	eb 0e                	jmp    0x425843
425835:	8d 41 bf             	lea    -0x41(%ecx),%eax
425838:	66 3b c7             	cmp    %di,%ax
42583b:	77 06                	ja     0x425843
42583d:	81 c1 f9 ff 00 00    	add    $0xfff9,%ecx
425843:	c1 e6 04             	shl    $0x4,%esi
425846:	0f b7 c1             	movzwl %cx,%eax
425849:	83 c6 d0             	add    $0xffffffd0,%esi
42584c:	0f b7 0a             	movzwl (%edx),%ecx
42584f:	03 f0                	add    %eax,%esi
425851:	83 c2 02             	add    $0x2,%edx
425854:	66 85 c9             	test   %cx,%cx
425857:	75 cc                	jne    0x425825
425859:	5f                   	pop    %edi
42585a:	8b c6                	mov    %esi,%eax
42585c:	5e                   	pop    %esi
42585d:	5d                   	pop    %ebp
42585e:	c3                   	ret
42585f:	8b ff                	mov    %edi,%edi
425861:	55                   	push   %ebp
425862:	8b ec                	mov    %esp,%ebp
425864:	51                   	push   %ecx
425865:	8b 4d 08             	mov    0x8(%ebp),%ecx
425868:	56                   	push   %esi
425869:	57                   	push   %edi
42586a:	85 c9                	test   %ecx,%ecx
42586c:	0f 84 9e 00 00 00    	je     0x425910
425872:	33 c0                	xor    %eax,%eax
425874:	66 39 01             	cmp    %ax,(%ecx)
425877:	0f 84 93 00 00 00    	je     0x425910
42587d:	be f8 56 43 00       	mov    $0x4356f8,%esi
425882:	8b d1                	mov    %ecx,%edx
425884:	66 8b 3a             	mov    (%edx),%di
425887:	66 3b 3e             	cmp    (%esi),%di
42588a:	75 1e                	jne    0x4258aa
42588c:	66 85 ff             	test   %di,%di
42588f:	74 15                	je     0x4258a6
425891:	66 8b 7a 02          	mov    0x2(%edx),%di
425895:	66 3b 7e 02          	cmp    0x2(%esi),%di
425899:	75 0f                	jne    0x4258aa
42589b:	83 c2 04             	add    $0x4,%edx
42589e:	83 c6 04             	add    $0x4,%esi
4258a1:	66 85 ff             	test   %di,%di
4258a4:	75 de                	jne    0x425884
4258a6:	8b d0                	mov    %eax,%edx
4258a8:	eb 05                	jmp    0x4258af
4258aa:	1b d2                	sbb    %edx,%edx
4258ac:	83 ca 01             	or     $0x1,%edx
4258af:	85 d2                	test   %edx,%edx
4258b1:	74 5d                	je     0x425910
4258b3:	be 0c 57 43 00       	mov    $0x43570c,%esi
4258b8:	8b d1                	mov    %ecx,%edx
4258ba:	66 8b 3a             	mov    (%edx),%di
4258bd:	66 3b 3e             	cmp    (%esi),%di
4258c0:	75 1c                	jne    0x4258de
4258c2:	66 85 ff             	test   %di,%di
4258c5:	74 1c                	je     0x4258e3
4258c7:	66 8b 7a 02          	mov    0x2(%edx),%di
4258cb:	66 3b 7e 02          	cmp    0x2(%esi),%di
4258cf:	75 0d                	jne    0x4258de
4258d1:	83 c2 04             	add    $0x4,%edx
4258d4:	83 c6 04             	add    $0x4,%esi
4258d7:	66 85 ff             	test   %di,%di
4258da:	75 de                	jne    0x4258ba
4258dc:	eb 05                	jmp    0x4258e3
4258de:	1b c0                	sbb    %eax,%eax
4258e0:	83 c8 01             	or     $0x1,%eax
4258e3:	85 c0                	test   %eax,%eax
4258e5:	75 20                	jne    0x425907
4258e7:	6a 02                	push   $0x2
4258e9:	8d 45 fc             	lea    -0x4(%ebp),%eax
4258ec:	50                   	push   %eax
4258ed:	8b 45 0c             	mov    0xc(%ebp),%eax
4258f0:	68 0b 00 00 20       	push   $0x2000000b
4258f5:	ff 70 08             	push   0x8(%eax)
4258f8:	ff 15 98 10 43 00    	call   *0x431098
4258fe:	85 c0                	test   %eax,%eax
425900:	74 29                	je     0x42592b
425902:	8b 45 fc             	mov    -0x4(%ebp),%eax
425905:	eb 35                	jmp    0x42593c
425907:	51                   	push   %ecx
425908:	e8 36 d0 fe ff       	call   0x412943
42590d:	59                   	pop    %ecx
42590e:	eb 2c                	jmp    0x42593c
425910:	6a 02                	push   $0x2
425912:	8d 45 fc             	lea    -0x4(%ebp),%eax
425915:	50                   	push   %eax
425916:	8b 45 0c             	mov    0xc(%ebp),%eax
425919:	68 04 10 00 20       	push   $0x20001004
42591e:	ff 70 08             	push   0x8(%eax)
425921:	ff 15 98 10 43 00    	call   *0x431098
425927:	85 c0                	test   %eax,%eax
425929:	75 04                	jne    0x42592f
42592b:	33 c0                	xor    %eax,%eax
42592d:	eb 0d                	jmp    0x42593c
42592f:	8b 45 fc             	mov    -0x4(%ebp),%eax
425932:	85 c0                	test   %eax,%eax
425934:	75 06                	jne    0x42593c
425936:	ff 15 6c 10 43 00    	call   *0x43106c
42593c:	5f                   	pop    %edi
42593d:	5e                   	pop    %esi
42593e:	c9                   	leave
42593f:	c3                   	ret
425940:	8b ff                	mov    %edi,%edi
425942:	55                   	push   %ebp
425943:	8b ec                	mov    %esp,%ebp
425945:	0f b7 4d 08          	movzwl 0x8(%ebp),%ecx
425949:	33 c0                	xor    %eax,%eax
42594b:	66 3b 88 14 57 43 00 	cmp    0x435714(%eax),%cx
425952:	74 0d                	je     0x425961
425954:	83 c0 02             	add    $0x2,%eax
425957:	83 f8 14             	cmp    $0x14,%eax
42595a:	72 ef                	jb     0x42594b
42595c:	33 c0                	xor    %eax,%eax
42595e:	40                   	inc    %eax
42595f:	5d                   	pop    %ebp
425960:	c3                   	ret
425961:	33 c0                	xor    %eax,%eax
425963:	5d                   	pop    %ebp
425964:	c3                   	ret
425965:	8b ff                	mov    %edi,%edi
425967:	55                   	push   %ebp
425968:	8b ec                	mov    %esp,%ebp
42596a:	51                   	push   %ecx
42596b:	56                   	push   %esi
42596c:	57                   	push   %edi
42596d:	e8 77 69 ff ff       	call   0x41c2e9
425972:	8b 75 08             	mov    0x8(%ebp),%esi
425975:	8b f8                	mov    %eax,%edi
425977:	6a 02                	push   $0x2
425979:	8d 45 fc             	lea    -0x4(%ebp),%eax
42597c:	8b ce                	mov    %esi,%ecx
42597e:	50                   	push   %eax
42597f:	81 e1 ff 03 00 00    	and    $0x3ff,%ecx
425985:	68 01 00 00 20       	push   $0x20000001
42598a:	81 c9 00 04 00 00    	or     $0x400,%ecx
425990:	51                   	push   %ecx
425991:	ff 15 98 10 43 00    	call   *0x431098
425997:	85 c0                	test   %eax,%eax
425999:	74 39                	je     0x4259d4
42599b:	3b 75 fc             	cmp    -0x4(%ebp),%esi
42599e:	74 2f                	je     0x4259cf
4259a0:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
4259a4:	74 29                	je     0x4259cf
4259a6:	8b 77 50             	mov    0x50(%edi),%esi
4259a9:	8d 4e 02             	lea    0x2(%esi),%ecx
4259ac:	66 8b 06             	mov    (%esi),%ax
4259af:	83 c6 02             	add    $0x2,%esi
4259b2:	66 85 c0             	test   %ax,%ax
4259b5:	75 f5                	jne    0x4259ac
4259b7:	ff 77 50             	push   0x50(%edi)
4259ba:	2b f1                	sub    %ecx,%esi
4259bc:	d1 fe                	sar    $1,%esi
4259be:	e8 f4 fa ff ff       	call   0x4254b7
4259c3:	59                   	pop    %ecx
4259c4:	33 c9                	xor    %ecx,%ecx
4259c6:	3b c6                	cmp    %esi,%eax
4259c8:	0f 95 c1             	setne  %cl
4259cb:	8b c1                	mov    %ecx,%eax
4259cd:	eb 07                	jmp    0x4259d6
4259cf:	33 c0                	xor    %eax,%eax
4259d1:	40                   	inc    %eax
4259d2:	eb 02                	jmp    0x4259d6
4259d4:	33 c0                	xor    %eax,%eax
4259d6:	5f                   	pop    %edi
4259d7:	5e                   	pop    %esi
4259d8:	c9                   	leave
4259d9:	c3                   	ret
4259da:	8b ff                	mov    %edi,%edi
4259dc:	55                   	push   %ebp
4259dd:	8b ec                	mov    %esp,%ebp
4259df:	51                   	push   %ecx
4259e0:	53                   	push   %ebx
4259e1:	56                   	push   %esi
4259e2:	8b 75 0c             	mov    0xc(%ebp),%esi
4259e5:	57                   	push   %edi
4259e6:	33 ff                	xor    %edi,%edi
4259e8:	85 f6                	test   %esi,%esi
4259ea:	78 34                	js     0x425a20
4259ec:	8d 04 37             	lea    (%edi,%esi,1),%eax
4259ef:	99                   	cltd
4259f0:	2b c2                	sub    %edx,%eax
4259f2:	8b d8                	mov    %eax,%ebx
4259f4:	8b 45 08             	mov    0x8(%ebp),%eax
4259f7:	d1 fb                	sar    $1,%ebx
4259f9:	6b cb 0c             	imul   $0xc,%ebx,%ecx
4259fc:	89 4d fc             	mov    %ecx,-0x4(%ebp)
4259ff:	ff 34 01             	push   (%ecx,%eax,1)
425a02:	8b 45 10             	mov    0x10(%ebp),%eax
425a05:	ff 30                	push   (%eax)
425a07:	e8 29 2d ff ff       	call   0x418735
425a0c:	59                   	pop    %ecx
425a0d:	59                   	pop    %ecx
425a0e:	85 c0                	test   %eax,%eax
425a10:	74 15                	je     0x425a27
425a12:	79 05                	jns    0x425a19
425a14:	8d 73 ff             	lea    -0x1(%ebx),%esi
425a17:	eb 03                	jmp    0x425a1c
425a19:	8d 7b 01             	lea    0x1(%ebx),%edi
425a1c:	3b fe                	cmp    %esi,%edi
425a1e:	7e cc                	jle    0x4259ec
425a20:	32 c0                	xor    %al,%al
425a22:	5f                   	pop    %edi
425a23:	5e                   	pop    %esi
425a24:	5b                   	pop    %ebx
425a25:	c9                   	leave
425a26:	c3                   	ret
425a27:	8b 4d fc             	mov    -0x4(%ebp),%ecx
425a2a:	8b 45 08             	mov    0x8(%ebp),%eax
425a2d:	83 c1 04             	add    $0x4,%ecx
425a30:	03 c1                	add    %ecx,%eax
425a32:	8b 4d 10             	mov    0x10(%ebp),%ecx
425a35:	89 01                	mov    %eax,(%ecx)
425a37:	b0 01                	mov    $0x1,%al
425a39:	eb e7                	jmp    0x425a22
425a3b:	8b ff                	mov    %edi,%edi
425a3d:	55                   	push   %ebp
425a3e:	8b ec                	mov    %esp,%ebp
425a40:	83 ec 18             	sub    $0x18,%esp
425a43:	a1 c0 d0 43 00       	mov    0x43d0c0,%eax
425a48:	33 c5                	xor    %ebp,%eax
425a4a:	89 45 fc             	mov    %eax,-0x4(%ebp)
425a4d:	8b 45 0c             	mov    0xc(%ebp),%eax
425a50:	53                   	push   %ebx
425a51:	8b 5d 10             	mov    0x10(%ebp),%ebx
425a54:	56                   	push   %esi
425a55:	8b 75 08             	mov    0x8(%ebp),%esi
425a58:	57                   	push   %edi
425a59:	89 45 e8             	mov    %eax,-0x18(%ebp)
425a5c:	e8 88 68 ff ff       	call   0x41c2e9
425a61:	83 c0 50             	add    $0x50,%eax
425a64:	8d 7d f0             	lea    -0x10(%ebp),%edi
425a67:	89 45 ec             	mov    %eax,-0x14(%ebp)
425a6a:	33 c0                	xor    %eax,%eax
425a6c:	ab                   	stos   %eax,%es:(%edi)
425a6d:	ab                   	stos   %eax,%es:(%edi)