41684b:	8b 40 0c             	mov    0xc(%eax),%eax
41684e:	8b 70 08             	mov    0x8(%eax),%esi
416851:	4e                   	dec    %esi
416852:	85 f6                	test   %esi,%esi
416854:	7c 38                	jl     0x41688e
416856:	46                   	inc    %esi
416857:	33 ff                	xor    %edi,%edi
416859:	8b 04 24             	mov    (%esp),%eax
41685c:	8b 40 0c             	mov    0xc(%eax),%eax
41685f:	8b d7                	mov    %edi,%edx
416861:	e8 0a 13 00 00       	call   0x417b70
416866:	8b d8                	mov    %eax,%ebx
416868:	8b d3                	mov    %ebx,%edx
41686a:	8b 44 24 04          	mov    0x4(%esp),%eax
41686e:	e8 ad d2 fe ff       	call   0x403b20
416873:	84 c0                	test   %al,%al
416875:	74 13                	je     0x41688a
416877:	85 ed                	test   %ebp,%ebp
416879:	74 0d                	je     0x416888
41687b:	8b d5                	mov    %ebp,%edx
41687d:	8b c3                	mov    %ebx,%eax
41687f:	e8 9c d2 fe ff       	call   0x403b20
416884:	84 c0                	test   %al,%al
416886:	74 02                	je     0x41688a
416888:	8b eb                	mov    %ebx,%ebp
41688a:	47                   	inc    %edi
41688b:	4e                   	dec    %esi
41688c:	75 cb                	jne    0x416859
41688e:	8b c5                	mov    %ebp,%eax
416890:	59                   	pop    %ecx
416891:	5a                   	pop    %edx
416892:	5d                   	pop    %ebp
416893:	5f                   	pop    %edi
416894:	5e                   	pop    %esi
416895:	5b                   	pop    %ebx
416896:	c3                   	ret
416897:	90                   	nop
416898:	55                   	push   %ebp
416899:	8b ec                	mov    %esp,%ebp
41689b:	51                   	push   %ecx
41689c:	53                   	push   %ebx
41689d:	56                   	push   %esi
41689e:	57                   	push   %edi
41689f:	89 4d fc             	mov    %ecx,-0x4(%ebp)
4168a2:	8b fa                	mov    %edx,%edi
4168a4:	8b 5d 08             	mov    0x8(%ebp),%ebx
4168a7:	85 ff                	test   %edi,%edi
4168a9:	74 0d                	je     0x4168b8
4168ab:	8b d3                	mov    %ebx,%edx
4168ad:	8b c7                	mov    %edi,%eax
4168af:	e8 84 ff ff ff       	call   0x416838
4168b4:	8b f0                	mov    %eax,%esi
4168b6:	eb 02                	jmp    0x4168ba
4168b8:	33 f6                	xor    %esi,%esi
4168ba:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
4168be:	74 0e                	je     0x4168ce
4168c0:	8b d3                	mov    %ebx,%edx
4168c2:	8b 45 fc             	mov    -0x4(%ebp),%eax
4168c5:	e8 6e ff ff ff       	call   0x416838
4168ca:	8b d8                	mov    %eax,%ebx
4168cc:	eb 02                	jmp    0x4168d0
4168ce:	33 db                	xor    %ebx,%ebx
4168d0:	85 f6                	test   %esi,%esi
4168d2:	75 0d                	jne    0x4168e1
4168d4:	85 db                	test   %ebx,%ebx
4168d6:	75 04                	jne    0x4168dc
4168d8:	33 c0                	xor    %eax,%eax
4168da:	eb 21                	jmp    0x4168fd
4168dc:	8b 45 fc             	mov    -0x4(%ebp),%eax
4168df:	eb 1c                	jmp    0x4168fd
4168e1:	85 db                	test   %ebx,%ebx
4168e3:	75 04                	jne    0x4168e9
4168e5:	8b c7                	mov    %edi,%eax
4168e7:	eb 14                	jmp    0x4168fd
4168e9:	8b d3                	mov    %ebx,%edx
4168eb:	8b c6                	mov    %esi,%eax
4168ed:	e8 2e d2 fe ff       	call   0x403b20
4168f2:	84 c0                	test   %al,%al
4168f4:	74 04                	je     0x4168fa
4168f6:	8b c7                	mov    %edi,%eax
4168f8:	eb 03                	jmp    0x4168fd
4168fa:	8b 45 fc             	mov    -0x4(%ebp),%eax
4168fd:	5f                   	pop    %edi
4168fe:	5e                   	pop    %esi
4168ff:	5b                   	pop    %ebx
416900:	59                   	pop    %ecx
416901:	5d                   	pop    %ebp
416902:	c2 04 00             	ret    $0x4
416905:	8d 40 00             	lea    0x0(%eax),%eax
416908:	55                   	push   %ebp
416909:	8b ec                	mov    %esp,%ebp
41690b:	51                   	push   %ecx
41690c:	53                   	push   %ebx
41690d:	56                   	push   %esi
41690e:	57                   	push   %edi
41690f:	84 d2                	test   %dl,%dl
416911:	74 08                	je     0x41691b
416913:	83 c4 f0             	add    $0xfffffff0,%esp
416916:	e8 fd d2 fe ff       	call   0x403c18
41691b:	8b f9                	mov    %ecx,%edi
41691d:	88 55 ff             	mov    %dl,-0x1(%ebp)
416920:	8b d8                	mov    %eax,%ebx
416922:	33 d2                	xor    %edx,%edx
416924:	8b c3                	mov    %ebx,%eax
416926:	e8 99 cf fe ff       	call   0x4038c4
41692b:	b2 01                	mov    $0x1,%dl
41692d:	a1 c4 57 41 00       	mov    0x4157c4,%eax
416932:	e8 8d cf fe ff       	call   0x4038c4
416937:	8b f0                	mov    %eax,%esi
416939:	89 73 0c             	mov    %esi,0xc(%ebx)
41693c:	8b c6                	mov    %esi,%eax
41693e:	8b d7                	mov    %edi,%edx
416940:	e8 cb 10 00 00       	call   0x417a10
416945:	8b c3                	mov    %ebx,%eax
416947:	80 7d ff 00          	cmpb   $0x0,-0x1(%ebp)
41694b:	74 0f                	je     0x41695c
41694d:	e8 1e d3 fe ff       	call   0x403c70
416952:	64 8f 05 00 00 00 00 	pop    %fs:0x0
416959:	83 c4 0c             	add    $0xc,%esp
41695c:	8b c3                	mov    %ebx,%eax
41695e:	5f                   	pop    %edi
41695f:	5e                   	pop    %esi
416960:	5b                   	pop    %ebx
416961:	59                   	pop    %ecx
416962:	5d                   	pop    %ebp
416963:	c3                   	ret
416964:	53                   	push   %ebx
416965:	56                   	push   %esi
416966:	e8 55 d3 fe ff       	call   0x403cc0
41696b:	8b da                	mov    %edx,%ebx
41696d:	8b f0                	mov    %eax,%esi
41696f:	8b d3                	mov    %ebx,%edx
416971:	80 e2 fc             	and    $0xfc,%dl
416974:	8b c6                	mov    %esi,%eax
416976:	e8 69 cf fe ff       	call   0x4038e4
41697b:	8b 46 04             	mov    0x4(%esi),%eax
41697e:	e8 71 cf fe ff       	call   0x4038f4
416983:	8b 46 08             	mov    0x8(%esi),%eax
416986:	e8 69 cf fe ff       	call   0x4038f4
41698b:	8b 46 0c             	mov    0xc(%esi),%eax
41698e:	e8 61 cf fe ff       	call   0x4038f4
416993:	84 db                	test   %bl,%bl
416995:	7e 07                	jle    0x41699e
416997:	8b c6                	mov    %esi,%eax
416999:	e8 ca d2 fe ff       	call   0x403c68
41699e:	5e                   	pop    %esi
41699f:	5b                   	pop    %ebx
4169a0:	c3                   	ret
4169a1:	8d 40 00             	lea    0x0(%eax),%eax
4169a4:	53                   	push   %ebx
4169a5:	56                   	push   %esi
4169a6:	57                   	push   %edi
4169a7:	55                   	push   %ebp
4169a8:	51                   	push   %ecx
4169a9:	89 14 24             	mov    %edx,(%esp)
4169ac:	8b d8                	mov    %eax,%ebx
4169ae:	8b 43 04             	mov    0x4(%ebx),%eax
4169b1:	85 c0                	test   %eax,%eax
4169b3:	74 29                	je     0x4169de
4169b5:	8b 68 08             	mov    0x8(%eax),%ebp
4169b8:	4d                   	dec    %ebp
4169b9:	85 ed                	test   %ebp,%ebp
4169bb:	7c 21                	jl     0x4169de
4169bd:	45                   	inc    %ebp
4169be:	33 f6                	xor    %esi,%esi
4169c0:	8b d6                	mov    %esi,%edx
4169c2:	8b 43 04             	mov    0x4(%ebx),%eax
4169c5:	e8 a6 11 00 00       	call   0x417b70
4169ca:	8b f8                	mov    %eax,%edi
4169cc:	8b 14 24             	mov    (%esp),%edx
4169cf:	8b c7                	mov    %edi,%eax
4169d1:	e8 12 ce fe ff       	call   0x4037e8
4169d6:	84 c0                	test   %al,%al
4169d8:	75 29                	jne    0x416a03
4169da:	46                   	inc    %esi
4169db:	4d                   	dec    %ebp
4169dc:	75 e2                	jne    0x4169c0
4169de:	8b 43 08             	mov    0x8(%ebx),%eax
4169e1:	85 c0                	test   %eax,%eax
4169e3:	74 1c                	je     0x416a01
4169e5:	8b 14 24             	mov    (%esp),%edx
4169e8:	8b 08                	mov    (%eax),%ecx
4169ea:	ff 51 54             	call   *0x54(%ecx)
4169ed:	8b f0                	mov    %eax,%esi
4169ef:	85 f6                	test   %esi,%esi
4169f1:	7c 0e                	jl     0x416a01
4169f3:	8b d6                	mov    %esi,%edx
4169f5:	8b 43 08             	mov    0x8(%ebx),%eax
4169f8:	8b 08                	mov    (%eax),%ecx
4169fa:	ff 51 18             	call   *0x18(%ecx)
4169fd:	8b f8                	mov    %eax,%edi
4169ff:	eb 02                	jmp    0x416a03
416a01:	33 ff                	xor    %edi,%edi
416a03:	8b c7                	mov    %edi,%eax
416a05:	5a                   	pop    %edx
416a06:	5d                   	pop    %ebp
416a07:	5f                   	pop    %edi
416a08:	5e                   	pop    %esi
416a09:	5b                   	pop    %ebx
416a0a:	c3                   	ret
416a0b:	90                   	nop
416a0c:	53                   	push   %ebx
416a0d:	56                   	push   %esi
416a0e:	57                   	push   %edi
416a0f:	55                   	push   %ebp
416a10:	51                   	push   %ecx
416a11:	8b ea                	mov    %edx,%ebp
416a13:	8b f8                	mov    %eax,%edi
416a15:	c6 04 24 01          	movb   $0x1,(%esp)
416a19:	8b 47 0c             	mov    0xc(%edi),%eax
416a1c:	8b 58 08             	mov    0x8(%eax),%ebx
416a1f:	4b                   	dec    %ebx
416a20:	85 db                	test   %ebx,%ebx
416a22:	7c 1e                	jl     0x416a42
416a24:	43                   	inc    %ebx
416a25:	33 f6                	xor    %esi,%esi
416a27:	8b 47 0c             	mov    0xc(%edi),%eax
416a2a:	8b d6                	mov    %esi,%edx
416a2c:	e8 3f 11 00 00       	call   0x417b70
416a31:	8b d0                	mov    %eax,%edx
416a33:	8b c5                	mov    %ebp,%eax
416a35:	e8 e6 d0 fe ff       	call   0x403b20
416a3a:	84 c0                	test   %al,%al
416a3c:	75 08                	jne    0x416a46
416a3e:	46                   	inc    %esi
416a3f:	4b                   	dec    %ebx
416a40:	75 e5                	jne    0x416a27
416a42:	c6 04 24 00          	movb   $0x0,(%esp)
416a46:	0f b6 04 24          	movzbl (%esp),%eax
416a4a:	5a                   	pop    %edx
416a4b:	5d                   	pop    %ebp
416a4c:	5f                   	pop    %edi
416a4d:	5e                   	pop    %esi
416a4e:	5b                   	pop    %ebx
416a4f:	c3                   	ret
416a50:	55                   	push   %ebp
416a51:	8b ec                	mov    %esp,%ebp
416a53:	81 c4 f4 fe ff ff    	add    $0xfffffef4,%esp
416a59:	53                   	push   %ebx
416a5a:	56                   	push   %esi
416a5b:	33 c9                	xor    %ecx,%ecx
416a5d:	89 4d fc             	mov    %ecx,-0x4(%ebp)
416a60:	8b f2                	mov    %edx,%esi
416a62:	8b d8                	mov    %eax,%ebx
416a64:	33 c0                	xor    %eax,%eax
416a66:	55                   	push   %ebp
416a67:	68 00 6b 41 00       	push   $0x416b00
416a6c:	64 ff 30             	push   %fs:(%eax)
416a6f:	64 89 20             	mov    %esp,%fs:(%eax)
416a72:	8d 95 fc fe ff ff    	lea    -0x104(%ebp),%edx
416a78:	8b c6                	mov    %esi,%eax
416a7a:	e8 55 cd fe ff       	call   0x4037d4
416a7f:	8d 95 fc fe ff ff    	lea    -0x104(%ebp),%edx
416a85:	8d 45 fc             	lea    -0x4(%ebp),%eax
416a88:	e8 f7 de fe ff       	call   0x404984
416a8d:	8b 55 fc             	mov    -0x4(%ebp),%edx
416a90:	8b c3                	mov    %ebx,%eax
416a92:	e8 0d ff ff ff       	call   0x4169a4
416a97:	85 c0                	test   %eax,%eax
416a99:	74 30                	je     0x416acb
416a9b:	8b 45 fc             	mov    -0x4(%ebp),%eax
416a9e:	89 85 f4 fe ff ff    	mov    %eax,-0x10c(%ebp)
416aa4:	c6 85 f8 fe ff ff 0b 	movb   $0xb,-0x108(%ebp)
416aab:	8d 85 f4 fe ff ff    	lea    -0x10c(%ebp),%eax
416ab1:	50                   	push   %eax
416ab2:	6a 00                	push   $0x0
416ab4:	8b 0d 94 d6 46 00    	mov    0x46d694,%ecx
416aba:	b2 01                	mov    $0x1,%dl
416abc:	a1 dc 53 41 00       	mov    0x4153dc,%eax
416ac1:	e8 6e 58 ff ff       	call   0x40c334
416ac6:	e8 9d d6 fe ff       	call   0x404168
416acb:	83 7b 04 00          	cmpl   $0x0,0x4(%ebx)
416acf:	75 0f                	jne    0x416ae0
416ad1:	b2 01                	mov    $0x1,%dl
416ad3:	a1 c4 57 41 00       	mov    0x4157c4,%eax
416ad8:	e8 e7 cd fe ff       	call   0x4038c4
416add:	89 43 04             	mov    %eax,0x4(%ebx)
416ae0:	8b d6                	mov    %esi,%edx
416ae2:	8b 43 04             	mov    0x4(%ebx),%eax
416ae5:	e8 26 0f 00 00       	call   0x417a10
416aea:	33 c0                	xor    %eax,%eax
416aec:	5a                   	pop    %edx
416aed:	59                   	pop    %ecx
416aee:	59                   	pop    %ecx
416aef:	64 89 10             	mov    %edx,%fs:(%eax)
416af2:	68 07 6b 41 00       	push   $0x416b07
416af7:	8d 45 fc             	lea    -0x4(%ebp),%eax
416afa:	e8 21 dc fe ff       	call   0x404720
416aff:	c3                   	ret
416b00:	e9 83 d5 fe ff       	jmp    0x404088
416b05:	eb f0                	jmp    0x416af7
416b07:	5e                   	pop    %esi
416b08:	5b                   	pop    %ebx
416b09:	8b e5                	mov    %ebp,%esp
416b0b:	5d                   	pop    %ebp
416b0c:	c3                   	ret
416b0d:	8d 40 00             	lea    0x0(%eax),%eax
416b10:	53                   	push   %ebx
416b11:	56                   	push   %esi
416b12:	57                   	push   %edi
416b13:	8b fa                	mov    %edx,%edi
416b15:	8b d8                	mov    %eax,%ebx
416b17:	8b 73 04             	mov    0x4(%ebx),%esi
416b1a:	85 f6                	test   %esi,%esi
416b1c:	74 10                	je     0x416b2e
416b1e:	8b d7                	mov    %edi,%edx
416b20:	8b c6                	mov    %esi,%eax
416b22:	e8 a5 10 00 00       	call   0x417bcc
416b27:	85 c0                	test   %eax,%eax
416b29:	0f 9d c0             	setge  %al
416b2c:	eb 02                	jmp    0x416b30
416b2e:	33 c0                	xor    %eax,%eax
416b30:	5f                   	pop    %edi
416b31:	5e                   	pop    %esi
416b32:	5b                   	pop    %ebx
416b33:	c3                   	ret
416b34:	53                   	push   %ebx
416b35:	56                   	push   %esi
416b36:	8b da                	mov    %edx,%ebx
416b38:	8b f0                	mov    %eax,%esi
416b3a:	85 db                	test   %ebx,%ebx
416b3c:	74 10                	je     0x416b4e
416b3e:	8b c6                	mov    %esi,%eax
416b40:	e8 6b ef fe ff       	call   0x405ab0
416b45:	3b d8                	cmp    %eax,%ebx
416b47:	74 05                	je     0x416b4e
416b49:	33 c0                	xor    %eax,%eax
416b4b:	5e                   	pop    %esi
416b4c:	5b                   	pop    %ebx
416b4d:	c3                   	ret
416b4e:	b0 01                	mov    $0x1,%al
416b50:	5e                   	pop    %esi
416b51:	5b                   	pop    %ebx
416b52:	c3                   	ret
416b53:	90                   	nop
416b54:	53                   	push   %ebx
416b55:	56                   	push   %esi
416b56:	57                   	push   %edi
416b57:	8b fa                	mov    %edx,%edi
416b59:	8b f0                	mov    %eax,%esi
416b5b:	8b 46 0c             	mov    0xc(%esi),%eax
416b5e:	8b 58 08             	mov    0x8(%eax),%ebx
416b61:	4b                   	dec    %ebx
416b62:	83 fb 00             	cmp    $0x0,%ebx
416b65:	7c 25                	jl     0x416b8c
416b67:	8b d3                	mov    %ebx,%edx
416b69:	8b 46 0c             	mov    0xc(%esi),%eax
416b6c:	e8 ff 0f 00 00       	call   0x417b70
416b71:	8b d7                	mov    %edi,%edx
416b73:	e8 bc ff ff ff       	call   0x416b34