40267e:	8b 42 04             	mov    0x4(%edx),%eax
402681:	89 41 04             	mov    %eax,0x4(%ecx)
402684:	5d                   	pop    %ebp
402685:	c2 08 00             	ret    $0x8
402688:	55                   	push   %ebp
402689:	8b ec                	mov    %esp,%ebp
40268b:	8b 45 08             	mov    0x8(%ebp),%eax
40268e:	3d 00 10 00 00       	cmp    $0x1000,%eax
402693:	72 09                	jb     0x40269e
402695:	50                   	push   %eax
402696:	e8 13 00 00 00       	call   0x4026ae
40269b:	59                   	pop    %ecx
40269c:	5d                   	pop    %ebp
40269d:	c3                   	ret
40269e:	85 c0                	test   %eax,%eax
4026a0:	74 08                	je     0x4026aa
4026a2:	50                   	push   %eax
4026a3:	e8 fb cb 03 00       	call   0x43f2a3
4026a8:	eb f1                	jmp    0x40269b
4026aa:	33 c0                	xor    %eax,%eax
4026ac:	5d                   	pop    %ebp
4026ad:	c3                   	ret
4026ae:	55                   	push   %ebp
4026af:	8b ec                	mov    %esp,%ebp
4026b1:	8b 45 08             	mov    0x8(%ebp),%eax
4026b4:	83 ca ff             	or     $0xffffffff,%edx
4026b7:	8d 48 23             	lea    0x23(%eax),%ecx
4026ba:	3b c8                	cmp    %eax,%ecx
4026bc:	0f 46 ca             	cmovbe %edx,%ecx
4026bf:	51                   	push   %ecx
4026c0:	e8 de cb 03 00       	call   0x43f2a3
4026c5:	59                   	pop    %ecx
4026c6:	8b c8                	mov    %eax,%ecx
4026c8:	85 c9                	test   %ecx,%ecx
4026ca:	74 0b                	je     0x4026d7
4026cc:	8d 41 23             	lea    0x23(%ecx),%eax
4026cf:	83 e0 e0             	and    $0xffffffe0,%eax
4026d2:	89 48 fc             	mov    %ecx,-0x4(%eax)
4026d5:	5d                   	pop    %ebp
4026d6:	c3                   	ret
4026d7:	e9 0a a6 04 00       	jmp    0x44cce6
4026dc:	55                   	push   %ebp
4026dd:	8b ec                	mov    %esp,%ebp
4026df:	51                   	push   %ecx
4026e0:	53                   	push   %ebx
4026e1:	56                   	push   %esi
4026e2:	8b 75 0c             	mov    0xc(%ebp),%esi
4026e5:	57                   	push   %edi
4026e6:	8b f9                	mov    %ecx,%edi
4026e8:	8b 4d 08             	mov    0x8(%ebp),%ecx
4026eb:	2b f1                	sub    %ecx,%esi
4026ed:	c1 fe 02             	sar    $0x2,%esi
4026f0:	8b 1f                	mov    (%edi),%ebx
4026f2:	8b 57 08             	mov    0x8(%edi),%edx
4026f5:	8b 47 04             	mov    0x4(%edi),%eax
4026f8:	2b d3                	sub    %ebx,%edx
4026fa:	2b c3                	sub    %ebx,%eax
4026fc:	c1 fa 02             	sar    $0x2,%edx
4026ff:	c1 f8 02             	sar    $0x2,%eax
402702:	89 55 fc             	mov    %edx,-0x4(%ebp)
402705:	3b f2                	cmp    %edx,%esi
402707:	76 40                	jbe    0x402749
402709:	81 fe ff ff ff 3f    	cmp    $0x3fffffff,%esi
40270f:	77 72                	ja     0x402783
402711:	56                   	push   %esi
402712:	8b cf                	mov    %edi,%ecx
402714:	e8 ca 45 01 00       	call   0x416ce3
402719:	8b f0                	mov    %eax,%esi
40271b:	85 db                	test   %ebx,%ebx
40271d:	74 0f                	je     0x40272e
40271f:	8b 4d fc             	mov    -0x4(%ebp),%ecx
402722:	c1 e1 02             	shl    $0x2,%ecx
402725:	51                   	push   %ecx
402726:	53                   	push   %ebx
402727:	e8 fe 0d 00 00       	call   0x40352a
40272c:	59                   	pop    %ecx
40272d:	59                   	pop    %ecx
40272e:	56                   	push   %esi
40272f:	8b cf                	mov    %edi,%ecx
402731:	e8 2c 43 01 00       	call   0x416a62
402736:	57                   	push   %edi
402737:	ff 37                	push   (%edi)
402739:	ff 75 0c             	push   0xc(%ebp)
40273c:	ff 75 08             	push   0x8(%ebp)
40273f:	e8 7f 3c 00 00       	call   0x4063c3
402744:	83 c4 10             	add    $0x10,%esp
402747:	eb 30                	jmp    0x402779
402749:	53                   	push   %ebx
40274a:	3b f0                	cmp    %eax,%esi
40274c:	76 1c                	jbe    0x40276a
40274e:	8d 34 81             	lea    (%ecx,%eax,4),%esi
402751:	56                   	push   %esi
402752:	51                   	push   %ecx
402753:	e8 6a 0b 00 00       	call   0x4032c2
402758:	57                   	push   %edi
402759:	ff 77 04             	push   0x4(%edi)
40275c:	ff 75 0c             	push   0xc(%ebp)
40275f:	56                   	push   %esi
402760:	e8 5e 3c 00 00       	call   0x4063c3
402765:	83 c4 1c             	add    $0x1c,%esp
402768:	eb 0f                	jmp    0x402779
40276a:	ff 75 0c             	push   0xc(%ebp)
40276d:	51                   	push   %ecx
40276e:	e8 4f 0b 00 00       	call   0x4032c2
402773:	83 c4 0c             	add    $0xc,%esp
402776:	8d 04 b3             	lea    (%ebx,%esi,4),%eax
402779:	89 47 04             	mov    %eax,0x4(%edi)
40277c:	5f                   	pop    %edi
40277d:	5e                   	pop    %esi
40277e:	5b                   	pop    %ebx
40277f:	c9                   	leave
402780:	c2 0c 00             	ret    $0xc
402783:	e8 b0 af 01 00       	call   0x41d738
402788:	cc                   	int3
402789:	55                   	push   %ebp
40278a:	8b ec                	mov    %esp,%ebp
40278c:	51                   	push   %ecx
40278d:	53                   	push   %ebx
40278e:	56                   	push   %esi
40278f:	8b 75 0c             	mov    0xc(%ebp),%esi
402792:	57                   	push   %edi
402793:	8b f9                	mov    %ecx,%edi
402795:	8b 4d 08             	mov    0x8(%ebp),%ecx
402798:	2b f1                	sub    %ecx,%esi
40279a:	c1 fe 03             	sar    $0x3,%esi
40279d:	8b 1f                	mov    (%edi),%ebx
40279f:	8b 57 08             	mov    0x8(%edi),%edx
4027a2:	8b 47 04             	mov    0x4(%edi),%eax
4027a5:	2b d3                	sub    %ebx,%edx
4027a7:	2b c3                	sub    %ebx,%eax
4027a9:	c1 fa 03             	sar    $0x3,%edx
4027ac:	c1 f8 03             	sar    $0x3,%eax
4027af:	89 55 fc             	mov    %edx,-0x4(%ebp)
4027b2:	3b f2                	cmp    %edx,%esi
4027b4:	76 40                	jbe    0x4027f6
4027b6:	81 fe ff ff ff 1f    	cmp    $0x1fffffff,%esi
4027bc:	77 72                	ja     0x402830
4027be:	56                   	push   %esi
4027bf:	8b cf                	mov    %edi,%ecx
4027c1:	e8 71 45 01 00       	call   0x416d37
4027c6:	8b f0                	mov    %eax,%esi
4027c8:	85 db                	test   %ebx,%ebx
4027ca:	74 0f                	je     0x4027db
4027cc:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4027cf:	c1 e1 03             	shl    $0x3,%ecx
4027d2:	51                   	push   %ecx
4027d3:	53                   	push   %ebx
4027d4:	e8 51 0d 00 00       	call   0x40352a
4027d9:	59                   	pop    %ecx
4027da:	59                   	pop    %ecx
4027db:	56                   	push   %esi
4027dc:	8b cf                	mov    %edi,%ecx
4027de:	e8 c2 42 01 00       	call   0x416aa5
4027e3:	57                   	push   %edi
4027e4:	ff 37                	push   (%edi)
4027e6:	ff 75 0c             	push   0xc(%ebp)
4027e9:	ff 75 08             	push   0x8(%ebp)
4027ec:	e8 fb 3b 00 00       	call   0x4063ec
4027f1:	83 c4 10             	add    $0x10,%esp
4027f4:	eb 30                	jmp    0x402826
4027f6:	53                   	push   %ebx
4027f7:	3b f0                	cmp    %eax,%esi
4027f9:	76 1c                	jbe    0x402817
4027fb:	8d 34 c1             	lea    (%ecx,%eax,8),%esi
4027fe:	56                   	push   %esi
4027ff:	51                   	push   %ecx
402800:	e8 df 0a 00 00       	call   0x4032e4
402805:	57                   	push   %edi
402806:	ff 77 04             	push   0x4(%edi)
402809:	ff 75 0c             	push   0xc(%ebp)
40280c:	56                   	push   %esi
40280d:	e8 da 3b 00 00       	call   0x4063ec
402812:	83 c4 1c             	add    $0x1c,%esp
402815:	eb 0f                	jmp    0x402826
402817:	ff 75 0c             	push   0xc(%ebp)
40281a:	51                   	push   %ecx
40281b:	e8 c4 0a 00 00       	call   0x4032e4
402820:	83 c4 0c             	add    $0xc,%esp
402823:	8d 04 f3             	lea    (%ebx,%esi,8),%eax
402826:	89 47 04             	mov    %eax,0x4(%edi)
402829:	5f                   	pop    %edi
40282a:	5e                   	pop    %esi
40282b:	5b                   	pop    %ebx
40282c:	c9                   	leave
40282d:	c2 0c 00             	ret    $0xc
402830:	e8 19 af 01 00       	call   0x41d74e
402835:	cc                   	int3
402836:	55                   	push   %ebp
402837:	8b ec                	mov    %esp,%ebp
402839:	51                   	push   %ecx
40283a:	53                   	push   %ebx
40283b:	56                   	push   %esi
40283c:	8b 75 0c             	mov    0xc(%ebp),%esi
40283f:	57                   	push   %edi
402840:	8b f9                	mov    %ecx,%edi
402842:	8b 4d 08             	mov    0x8(%ebp),%ecx
402845:	2b f1                	sub    %ecx,%esi
402847:	c1 fe 03             	sar    $0x3,%esi
40284a:	8b 1f                	mov    (%edi),%ebx
40284c:	8b 57 08             	mov    0x8(%edi),%edx
40284f:	8b 47 04             	mov    0x4(%edi),%eax
402852:	2b d3                	sub    %ebx,%edx
402854:	2b c3                	sub    %ebx,%eax
402856:	c1 fa 03             	sar    $0x3,%edx
402859:	c1 f8 03             	sar    $0x3,%eax
40285c:	89 55 fc             	mov    %edx,-0x4(%ebp)
40285f:	3b f2                	cmp    %edx,%esi
402861:	76 44                	jbe    0x4028a7
402863:	81 fe ff ff ff 1f    	cmp    $0x1fffffff,%esi
402869:	77 73                	ja     0x4028de
40286b:	56                   	push   %esi
40286c:	8b cf                	mov    %edi,%ecx
40286e:	e8 ed 44 01 00       	call   0x416d60
402873:	8b f0                	mov    %eax,%esi
402875:	85 db                	test   %ebx,%ebx
402877:	74 0f                	je     0x402888
402879:	8b 4d fc             	mov    -0x4(%ebp),%ecx
40287c:	c1 e1 03             	shl    $0x3,%ecx
40287f:	51                   	push   %ecx
402880:	53                   	push   %ebx
402881:	e8 a4 0c 00 00       	call   0x40352a
402886:	59                   	pop    %ecx
402887:	59                   	pop    %ecx
402888:	56                   	push   %esi
402889:	8b cf                	mov    %edi,%ecx
40288b:	e8 58 42 01 00       	call   0x416ae8
402890:	51                   	push   %ecx
402891:	ff 75 0c             	push   0xc(%ebp)
402894:	57                   	push   %edi
402895:	ff 37                	push   (%edi)
402897:	ff 75 0c             	push   0xc(%ebp)
40289a:	ff 75 08             	push   0x8(%ebp)
40289d:	e8 dd 3c 00 00       	call   0x40657f
4028a2:	83 c4 18             	add    $0x18,%esp
4028a5:	eb 2d                	jmp    0x4028d4
4028a7:	53                   	push   %ebx
4028a8:	3b f0                	cmp    %eax,%esi
4028aa:	76 19                	jbe    0x4028c5
4028ac:	8d 34 c1             	lea    (%ecx,%eax,8),%esi
4028af:	56                   	push   %esi
4028b0:	51                   	push   %ecx
4028b1:	e8 d3 0b 00 00       	call   0x403489
4028b6:	59                   	pop    %ecx
4028b7:	59                   	pop    %ecx
4028b8:	ff 75 0c             	push   0xc(%ebp)
4028bb:	57                   	push   %edi
4028bc:	ff 77 04             	push   0x4(%edi)
4028bf:	ff 75 0c             	push   0xc(%ebp)
4028c2:	56                   	push   %esi
4028c3:	eb d8                	jmp    0x40289d
4028c5:	ff 75 0c             	push   0xc(%ebp)
4028c8:	51                   	push   %ecx
4028c9:	e8 bb 0b 00 00       	call   0x403489
4028ce:	83 c4 0c             	add    $0xc,%esp
4028d1:	8d 04 f3             	lea    (%ebx,%esi,8),%eax
4028d4:	89 47 04             	mov    %eax,0x4(%edi)
4028d7:	5f                   	pop    %edi
4028d8:	5e                   	pop    %esi
4028d9:	5b                   	pop    %ebx
4028da:	c9                   	leave
4028db:	c2 0c 00             	ret    $0xc
4028de:	e8 76 ae 01 00       	call   0x41d759
4028e3:	cc                   	int3
4028e4:	55                   	push   %ebp
4028e5:	8b ec                	mov    %esp,%ebp
4028e7:	51                   	push   %ecx
4028e8:	53                   	push   %ebx
4028e9:	56                   	push   %esi
4028ea:	8b 75 0c             	mov    0xc(%ebp),%esi
4028ed:	57                   	push   %edi
4028ee:	8b f9                	mov    %ecx,%edi
4028f0:	8b 4d 08             	mov    0x8(%ebp),%ecx
4028f3:	2b f1                	sub    %ecx,%esi
4028f5:	c1 fe 03             	sar    $0x3,%esi
4028f8:	8b 1f                	mov    (%edi),%ebx
4028fa:	8b 57 08             	mov    0x8(%edi),%edx
4028fd:	8b 47 04             	mov    0x4(%edi),%eax
402900:	2b d3                	sub    %ebx,%edx
402902:	2b c3                	sub    %ebx,%eax
402904:	c1 fa 03             	sar    $0x3,%edx
402907:	c1 f8 03             	sar    $0x3,%eax
40290a:	89 55 fc             	mov    %edx,-0x4(%ebp)
40290d:	3b f2                	cmp    %edx,%esi
40290f:	76 44                	jbe    0x402955
402911:	81 fe ff ff ff 1f    	cmp    $0x1fffffff,%esi
402917:	77 73                	ja     0x40298c
402919:	56                   	push   %esi
40291a:	8b cf                	mov    %edi,%ecx
40291c:	e8 68 44 01 00       	call   0x416d89
402921:	8b f0                	mov    %eax,%esi
402923:	85 db                	test   %ebx,%ebx
402925:	74 0f                	je     0x402936
402927:	8b 4d fc             	mov    -0x4(%ebp),%ecx
40292a:	c1 e1 03             	shl    $0x3,%ecx
40292d:	51                   	push   %ecx
40292e:	53                   	push   %ebx
40292f:	e8 f6 0b 00 00       	call   0x40352a
402934:	59                   	pop    %ecx
402935:	59                   	pop    %ecx
402936:	56                   	push   %esi
402937:	8b cf                	mov    %edi,%ecx
402939:	e8 ed 41 01 00       	call   0x416b2b
40293e:	51                   	push   %ecx
40293f:	ff 75 0c             	push   0xc(%ebp)
402942:	57                   	push   %edi
402943:	ff 37                	push   (%edi)
402945:	ff 75 0c             	push   0xc(%ebp)
402948:	ff 75 08             	push   0x8(%ebp)
40294b:	e8 55 3c 00 00       	call   0x4065a5
402950:	83 c4 18             	add    $0x18,%esp
402953:	eb 2d                	jmp    0x402982
402955:	53                   	push   %ebx
402956:	3b f0                	cmp    %eax,%esi
402958:	76 19                	jbe    0x402973
40295a:	8d 34 c1             	lea    (%ecx,%eax,8),%esi
40295d:	56                   	push   %esi
40295e:	51                   	push   %ecx
40295f:	e8 4d 0b 00 00       	call   0x4034b1
402964:	59                   	pop    %ecx
402965:	59                   	pop    %ecx
402966:	ff 75 0c             	push   0xc(%ebp)
402969:	57                   	push   %edi
40296a:	ff 77 04             	push   0x4(%edi)
40296d:	ff 75 0c             	push   0xc(%ebp)
402970:	56                   	push   %esi
402971:	eb d8                	jmp    0x40294b
402973:	ff 75 0c             	push   0xc(%ebp)
402976:	51                   	push   %ecx
402977:	e8 35 0b 00 00       	call   0x4034b1
40297c:	83 c4 0c             	add    $0xc,%esp
40297f:	8d 04 f3             	lea    (%ebx,%esi,8),%eax
402982:	89 47 04             	mov    %eax,0x4(%edi)
402985:	5f                   	pop    %edi
402986:	5e                   	pop    %esi
402987:	5b                   	pop    %ebx
402988:	c9                   	leave
402989:	c2 0c 00             	ret    $0xc
40298c:	e8 d3 ad 01 00       	call   0x41d764
402991:	cc                   	int3
402992:	55                   	push   %ebp
402993:	8b ec                	mov    %esp,%ebp
402995:	53                   	push   %ebx
402996:	56                   	push   %esi
402997:	8b 75 08             	mov    0x8(%ebp),%esi
40299a:	8b de                	mov    %esi,%ebx
40299c:	57                   	push   %edi
40299d:	8b 7d 10             	mov    0x10(%ebp),%edi
4029a0:	3b 75 0c             	cmp    0xc(%ebp),%esi
4029a3:	74 21                	je     0x4029c6
4029a5:	3b 7d 14             	cmp    0x14(%ebp),%edi