40486e:	5b                   	pop    %ebx
40486f:	c3                   	ret
404870:	e8 47 03 00 00       	call   0x404bbc
404875:	8b 03                	mov    (%ebx),%eax
404877:	89 f9                	mov    %edi,%ecx
404879:	eb e8                	jmp    0x404863
40487b:	c3                   	ret
40487c:	85 d2                	test   %edx,%edx
40487e:	74 61                	je     0x4048e1
404880:	85 c9                	test   %ecx,%ecx
404882:	0f 84 3c fd ff ff    	je     0x4045c4
404888:	3b 10                	cmp    (%eax),%edx
40488a:	74 5c                	je     0x4048e8
40488c:	3b 08                	cmp    (%eax),%ecx
40488e:	74 0e                	je     0x40489e
404890:	50                   	push   %eax
404891:	51                   	push   %ecx
404892:	e8 2d fd ff ff       	call   0x4045c4
404897:	5a                   	pop    %edx
404898:	58                   	pop    %eax
404899:	e9 9a ff ff ff       	jmp    0x404838
40489e:	53                   	push   %ebx
40489f:	56                   	push   %esi
4048a0:	57                   	push   %edi
4048a1:	89 d3                	mov    %edx,%ebx
4048a3:	89 ce                	mov    %ecx,%esi
4048a5:	50                   	push   %eax
4048a6:	8b 43 fc             	mov    -0x4(%ebx),%eax
4048a9:	03 46 fc             	add    -0x4(%esi),%eax
4048ac:	e8 83 fd ff ff       	call   0x404634
4048b1:	89 c7                	mov    %eax,%edi
4048b3:	89 c2                	mov    %eax,%edx
4048b5:	89 d8                	mov    %ebx,%eax
4048b7:	8b 4b fc             	mov    -0x4(%ebx),%ecx
4048ba:	e8 99 e3 ff ff       	call   0x402c58
4048bf:	89 fa                	mov    %edi,%edx
4048c1:	89 f0                	mov    %esi,%eax
4048c3:	8b 4e fc             	mov    -0x4(%esi),%ecx
4048c6:	03 53 fc             	add    -0x4(%ebx),%edx
4048c9:	e8 8a e3 ff ff       	call   0x402c58
4048ce:	58                   	pop    %eax
4048cf:	89 fa                	mov    %edi,%edx
4048d1:	85 ff                	test   %edi,%edi
4048d3:	74 03                	je     0x4048d8
4048d5:	ff 4f f8             	decl   -0x8(%edi)
4048d8:	e8 e7 fc ff ff       	call   0x4045c4
4048dd:	5f                   	pop    %edi
4048de:	5e                   	pop    %esi
4048df:	5b                   	pop    %ebx
4048e0:	c3                   	ret
4048e1:	89 ca                	mov    %ecx,%edx
4048e3:	e9 dc fc ff ff       	jmp    0x4045c4
4048e8:	89 ca                	mov    %ecx,%edx
4048ea:	e9 49 ff ff ff       	jmp    0x404838
4048ef:	c3                   	ret
4048f0:	53                   	push   %ebx
4048f1:	56                   	push   %esi
4048f2:	57                   	push   %edi
4048f3:	52                   	push   %edx
4048f4:	50                   	push   %eax
4048f5:	89 d3                	mov    %edx,%ebx
4048f7:	31 ff                	xor    %edi,%edi
4048f9:	8b 4c 94 14          	mov    0x14(%esp,%edx,4),%ecx
4048fd:	85 c9                	test   %ecx,%ecx
4048ff:	74 0c                	je     0x40490d
404901:	39 08                	cmp    %ecx,(%eax)
404903:	75 08                	jne    0x40490d
404905:	89 cf                	mov    %ecx,%edi
404907:	8b 41 fc             	mov    -0x4(%ecx),%eax
40490a:	4a                   	dec    %edx
40490b:	eb 02                	jmp    0x40490f
40490d:	31 c0                	xor    %eax,%eax
40490f:	8b 4c 94 14          	mov    0x14(%esp,%edx,4),%ecx
404913:	85 c9                	test   %ecx,%ecx
404915:	74 09                	je     0x404920
404917:	03 41 fc             	add    -0x4(%ecx),%eax
40491a:	39 cf                	cmp    %ecx,%edi
40491c:	75 02                	jne    0x404920
40491e:	31 ff                	xor    %edi,%edi
404920:	4a                   	dec    %edx
404921:	75 ec                	jne    0x40490f
404923:	85 ff                	test   %edi,%edi
404925:	74 17                	je     0x40493e
404927:	89 c2                	mov    %eax,%edx
404929:	8b 04 24             	mov    (%esp),%eax
40492c:	8b 77 fc             	mov    -0x4(%edi),%esi
40492f:	e8 88 02 00 00       	call   0x404bbc
404934:	8b 3c 24             	mov    (%esp),%edi
404937:	ff 37                	push   (%edi)
404939:	03 37                	add    (%edi),%esi
40493b:	4b                   	dec    %ebx
40493c:	eb 08                	jmp    0x404946
40493e:	e8 f1 fc ff ff       	call   0x404634
404943:	50                   	push   %eax
404944:	89 c6                	mov    %eax,%esi
404946:	8b 44 9c 18          	mov    0x18(%esp,%ebx,4),%eax
40494a:	89 f2                	mov    %esi,%edx
40494c:	85 c0                	test   %eax,%eax
40494e:	74 0a                	je     0x40495a
404950:	8b 48 fc             	mov    -0x4(%eax),%ecx
404953:	01 ce                	add    %ecx,%esi
404955:	e8 fe e2 ff ff       	call   0x402c58
40495a:	4b                   	dec    %ebx
40495b:	75 e9                	jne    0x404946
40495d:	5a                   	pop    %edx
40495e:	58                   	pop    %eax
40495f:	85 ff                	test   %edi,%edi
404961:	75 0c                	jne    0x40496f
404963:	85 d2                	test   %edx,%edx
404965:	74 03                	je     0x40496a
404967:	ff 4a f8             	decl   -0x8(%edx)
40496a:	e8 55 fc ff ff       	call   0x4045c4
40496f:	5a                   	pop    %edx
404970:	5f                   	pop    %edi
404971:	5e                   	pop    %esi
404972:	5b                   	pop    %ebx
404973:	58                   	pop    %eax
404974:	8d 24 94             	lea    (%esp,%edx,4),%esp
404977:	ff e0                	jmp    *%eax
404979:	c3                   	ret
40497a:	8b c0                	mov    %eax,%eax
40497c:	53                   	push   %ebx
40497d:	56                   	push   %esi
40497e:	57                   	push   %edi
40497f:	89 c6                	mov    %eax,%esi
404981:	89 d7                	mov    %edx,%edi
404983:	39 d0                	cmp    %edx,%eax
404985:	0f 84 8f 00 00 00    	je     0x404a1a
40498b:	85 f6                	test   %esi,%esi
40498d:	74 68                	je     0x4049f7
40498f:	85 ff                	test   %edi,%edi
404991:	74 6b                	je     0x4049fe
404993:	8b 46 fc             	mov    -0x4(%esi),%eax
404996:	8b 57 fc             	mov    -0x4(%edi),%edx
404999:	29 d0                	sub    %edx,%eax
40499b:	77 02                	ja     0x40499f
40499d:	01 c2                	add    %eax,%edx
40499f:	52                   	push   %edx
4049a0:	c1 ea 02             	shr    $0x2,%edx
4049a3:	74 26                	je     0x4049cb
4049a5:	8b 0e                	mov    (%esi),%ecx
4049a7:	8b 1f                	mov    (%edi),%ebx
4049a9:	39 d9                	cmp    %ebx,%ecx
4049ab:	75 58                	jne    0x404a05
4049ad:	4a                   	dec    %edx
4049ae:	74 15                	je     0x4049c5
4049b0:	8b 4e 04             	mov    0x4(%esi),%ecx
4049b3:	8b 5f 04             	mov    0x4(%edi),%ebx
4049b6:	39 d9                	cmp    %ebx,%ecx
4049b8:	75 4b                	jne    0x404a05
4049ba:	83 c6 08             	add    $0x8,%esi
4049bd:	83 c7 08             	add    $0x8,%edi
4049c0:	4a                   	dec    %edx
4049c1:	75 e2                	jne    0x4049a5
4049c3:	eb 06                	jmp    0x4049cb
4049c5:	83 c6 04             	add    $0x4,%esi
4049c8:	83 c7 04             	add    $0x4,%edi
4049cb:	5a                   	pop    %edx
4049cc:	83 e2 03             	and    $0x3,%edx
4049cf:	74 22                	je     0x4049f3
4049d1:	8b 0e                	mov    (%esi),%ecx
4049d3:	8b 1f                	mov    (%edi),%ebx
4049d5:	38 d9                	cmp    %bl,%cl
4049d7:	75 41                	jne    0x404a1a
4049d9:	4a                   	dec    %edx
4049da:	74 17                	je     0x4049f3
4049dc:	38 fd                	cmp    %bh,%ch
4049de:	75 3a                	jne    0x404a1a
4049e0:	4a                   	dec    %edx
4049e1:	74 10                	je     0x4049f3
4049e3:	81 e3 00 00 ff 00    	and    $0xff0000,%ebx
4049e9:	81 e1 00 00 ff 00    	and    $0xff0000,%ecx
4049ef:	39 d9                	cmp    %ebx,%ecx
4049f1:	75 27                	jne    0x404a1a
4049f3:	01 c0                	add    %eax,%eax
4049f5:	eb 23                	jmp    0x404a1a
4049f7:	8b 57 fc             	mov    -0x4(%edi),%edx
4049fa:	29 d0                	sub    %edx,%eax
4049fc:	eb 1c                	jmp    0x404a1a
4049fe:	8b 46 fc             	mov    -0x4(%esi),%eax
404a01:	29 d0                	sub    %edx,%eax
404a03:	eb 15                	jmp    0x404a1a
404a05:	5a                   	pop    %edx
404a06:	38 d9                	cmp    %bl,%cl
404a08:	75 10                	jne    0x404a1a
404a0a:	38 fd                	cmp    %bh,%ch
404a0c:	75 0c                	jne    0x404a1a
404a0e:	c1 e9 10             	shr    $0x10,%ecx
404a11:	c1 eb 10             	shr    $0x10,%ebx
404a14:	38 d9                	cmp    %bl,%cl
404a16:	75 02                	jne    0x404a1a
404a18:	38 fd                	cmp    %bh,%ch
404a1a:	5f                   	pop    %edi
404a1b:	5e                   	pop    %esi
404a1c:	5b                   	pop    %ebx
404a1d:	c3                   	ret
404a1e:	8b c0                	mov    %eax,%eax
404a20:	85 c0                	test   %eax,%eax
404a22:	74 0a                	je     0x404a2e
404a24:	8b 50 f8             	mov    -0x8(%eax),%edx
404a27:	42                   	inc    %edx
404a28:	7e 04                	jle    0x404a2e
404a2a:	f0 ff 40 f8          	lock incl -0x8(%eax)
404a2e:	c3                   	ret
404a2f:	90                   	nop
404a30:	85 c0                	test   %eax,%eax
404a32:	74 02                	je     0x404a36
404a34:	c3                   	ret
404a35:	00 b8 35 4a 40 00    	add    %bh,0x404a35(%eax)
404a3b:	c3                   	ret
404a3c:	8b 10                	mov    (%eax),%edx
404a3e:	85 d2                	test   %edx,%edx
404a40:	74 38                	je     0x404a7a
404a42:	8b 4a f8             	mov    -0x8(%edx),%ecx
404a45:	49                   	dec    %ecx
404a46:	74 32                	je     0x404a7a
404a48:	53                   	push   %ebx
404a49:	89 c3                	mov    %eax,%ebx
404a4b:	8b 42 fc             	mov    -0x4(%edx),%eax
404a4e:	e8 e1 fb ff ff       	call   0x404634
404a53:	89 c2                	mov    %eax,%edx
404a55:	8b 03                	mov    (%ebx),%eax
404a57:	89 13                	mov    %edx,(%ebx)
404a59:	50                   	push   %eax
404a5a:	8b 48 fc             	mov    -0x4(%eax),%ecx
404a5d:	e8 f6 e1 ff ff       	call   0x402c58
404a62:	58                   	pop    %eax
404a63:	8b 48 f8             	mov    -0x8(%eax),%ecx
404a66:	49                   	dec    %ecx
404a67:	7c 0e                	jl     0x404a77
404a69:	f0 ff 48 f8          	lock decl -0x8(%eax)
404a6d:	75 08                	jne    0x404a77
404a6f:	8d 40 f8             	lea    -0x8(%eax),%eax
404a72:	e8 f1 df ff ff       	call   0x402a68
404a77:	8b 13                	mov    (%ebx),%edx
404a79:	5b                   	pop    %ebx
404a7a:	89 d0                	mov    %edx,%eax
404a7c:	c3                   	ret
404a7d:	8d 40 00             	lea    0x0(%eax),%eax
404a80:	e9 b7 ff ff ff       	jmp    0x404a3c
404a85:	c3                   	ret
404a86:	8b c0                	mov    %eax,%eax
404a88:	e9 af ff ff ff       	jmp    0x404a3c
404a8d:	c3                   	ret
404a8e:	8b c0                	mov    %eax,%eax
404a90:	53                   	push   %ebx
404a91:	85 c0                	test   %eax,%eax
404a93:	74 2d                	je     0x404ac2
404a95:	8b 58 fc             	mov    -0x4(%eax),%ebx
404a98:	85 db                	test   %ebx,%ebx
404a9a:	74 26                	je     0x404ac2
404a9c:	4a                   	dec    %edx
404a9d:	7c 1b                	jl     0x404aba
404a9f:	39 da                	cmp    %ebx,%edx
404aa1:	7d 1f                	jge    0x404ac2
404aa3:	29 d3                	sub    %edx,%ebx
404aa5:	85 c9                	test   %ecx,%ecx
404aa7:	7c 19                	jl     0x404ac2
404aa9:	39 d9                	cmp    %ebx,%ecx
404aab:	7f 11                	jg     0x404abe
404aad:	01 c2                	add    %eax,%edx
404aaf:	8b 44 24 08          	mov    0x8(%esp),%eax
404ab3:	e8 a8 fb ff ff       	call   0x404660
404ab8:	eb 11                	jmp    0x404acb
404aba:	31 d2                	xor    %edx,%edx
404abc:	eb e5                	jmp    0x404aa3
404abe:	89 d9                	mov    %ebx,%ecx
404ac0:	eb eb                	jmp    0x404aad
404ac2:	8b 44 24 08          	mov    0x8(%esp),%eax
404ac6:	e8 a5 fa ff ff       	call   0x404570
404acb:	5b                   	pop    %ebx
404acc:	c2 04 00             	ret    $0x4
404acf:	c3                   	ret
404ad0:	53                   	push   %ebx
404ad1:	56                   	push   %esi
404ad2:	57                   	push   %edi
404ad3:	89 c3                	mov    %eax,%ebx
404ad5:	89 d6                	mov    %edx,%esi
404ad7:	89 cf                	mov    %ecx,%edi
404ad9:	e8 a2 ff ff ff       	call   0x404a80
404ade:	8b 13                	mov    (%ebx),%edx
404ae0:	85 d2                	test   %edx,%edx
404ae2:	74 30                	je     0x404b14
404ae4:	8b 4a fc             	mov    -0x4(%edx),%ecx
404ae7:	4e                   	dec    %esi
404ae8:	7c 2a                	jl     0x404b14
404aea:	39 ce                	cmp    %ecx,%esi
404aec:	7d 26                	jge    0x404b14
404aee:	85 ff                	test   %edi,%edi
404af0:	7e 22                	jle    0x404b14
404af2:	29 f1                	sub    %esi,%ecx
404af4:	39 cf                	cmp    %ecx,%edi
404af6:	7e 02                	jle    0x404afa
404af8:	89 cf                	mov    %ecx,%edi
404afa:	29 f9                	sub    %edi,%ecx
404afc:	01 f2                	add    %esi,%edx
404afe:	8d 04 17             	lea    (%edi,%edx,1),%eax
404b01:	e8 52 e1 ff ff       	call   0x402c58
404b06:	8b 13                	mov    (%ebx),%edx
404b08:	89 d8                	mov    %ebx,%eax
404b0a:	8b 52 fc             	mov    -0x4(%edx),%edx
404b0d:	29 fa                	sub    %edi,%edx
404b0f:	e8 a8 00 00 00       	call   0x404bbc
404b14:	5f                   	pop    %edi
404b15:	5e                   	pop    %esi
404b16:	5b                   	pop    %ebx
404b17:	c3                   	ret
404b18:	85 c0                	test   %eax,%eax
404b1a:	74 56                	je     0x404b72
404b1c:	53                   	push   %ebx
404b1d:	56                   	push   %esi
404b1e:	57                   	push   %edi
404b1f:	55                   	push   %ebp
404b20:	89 c3                	mov    %eax,%ebx
404b22:	89 d6                	mov    %edx,%esi
404b24:	89 cf                	mov    %ecx,%edi
404b26:	8b 12                	mov    (%edx),%edx
404b28:	52                   	push   %edx
404b29:	85 d2                	test   %edx,%edx
404b2b:	74 03                	je     0x404b30
404b2d:	8b 52 fc             	mov    -0x4(%edx),%edx
404b30:	4f                   	dec    %edi
404b31:	7d 02                	jge    0x404b35
404b33:	31 ff                	xor    %edi,%edi
404b35:	39 d7                	cmp    %edx,%edi
404b37:	7e 02                	jle    0x404b3b
404b39:	89 d7                	mov    %edx,%edi
404b3b:	8b 6b fc             	mov    -0x4(%ebx),%ebp
404b3e:	89 f0                	mov    %esi,%eax
404b40:	01 ea                	add    %ebp,%edx
404b42:	e8 75 00 00 00       	call   0x404bbc
404b47:	58                   	pop    %eax
404b48:	39 d8                	cmp    %ebx,%eax
404b4a:	75 02                	jne    0x404b4e
404b4c:	8b 1e                	mov    (%esi),%ebx
404b4e:	8b 06                	mov    (%esi),%eax
404b50:	8d 14 2f             	lea    (%edi,%ebp,1),%edx
404b53:	8b 48 fc             	mov    -0x4(%eax),%ecx
404b56:	29 d1                	sub    %edx,%ecx
404b58:	01 c2                	add    %eax,%edx
404b5a:	01 f8                	add    %edi,%eax
404b5c:	e8 f7 e0 ff ff       	call   0x402c58
404b61:	89 d8                	mov    %ebx,%eax
404b63:	8b 16                	mov    (%esi),%edx
404b65:	89 e9                	mov    %ebp,%ecx
404b67:	01 fa                	add    %edi,%edx
404b69:	e8 ea e0 ff ff       	call   0x402c58
404b6e:	5d                   	pop    %ebp
404b6f:	5f                   	pop    %edi
404b70:	5e                   	pop    %esi