403abf:	ff 74 24 04          	push   0x4(%esp)
403ac3:	52                   	push   %edx
403ac4:	51                   	push   %ecx
403ac5:	e8 76 73 00 00       	call   0x40ae40
403aca:	83 c4 0c             	add    $0xc,%esp
403acd:	8b c8                	mov    %eax,%ecx
403acf:	8b c1                	mov    %ecx,%eax
403ad1:	c3                   	ret
403ad2:	8b 44 24 04          	mov    0x4(%esp),%eax
403ad6:	83 78 14 10          	cmpl   $0x10,0x14(%eax)
403ada:	72 02                	jb     0x403ade
403adc:	8b 00                	mov    (%eax),%eax
403ade:	89 41 04             	mov    %eax,0x4(%ecx)
403ae1:	8b c1                	mov    %ecx,%eax
403ae3:	c7 01 f0 17 43 00    	movl   $0x4317f0,(%ecx)
403ae9:	c2 04 00             	ret    $0x4
403aec:	8b 44 24 04          	mov    0x4(%esp),%eax
403af0:	89 41 04             	mov    %eax,0x4(%ecx)
403af3:	8b c1                	mov    %ecx,%eax
403af5:	c7 01 f0 17 43 00    	movl   $0x4317f0,(%ecx)
403afb:	c2 04 00             	ret    $0x4
403afe:	55                   	push   %ebp
403aff:	8b ec                	mov    %esp,%ebp
403b01:	51                   	push   %ecx
403b02:	51                   	push   %ecx
403b03:	53                   	push   %ebx
403b04:	56                   	push   %esi
403b05:	33 db                	xor    %ebx,%ebx
403b07:	8b f1                	mov    %ecx,%esi
403b09:	53                   	push   %ebx
403b0a:	e8 c1 95 02 00       	call   0x42d0d0
403b0f:	33 c0                	xor    %eax,%eax
403b11:	89 5e 04             	mov    %ebx,0x4(%esi)
403b14:	88 5e 08             	mov    %bl,0x8(%esi)
403b17:	89 5e 0c             	mov    %ebx,0xc(%esi)
403b1a:	88 5e 10             	mov    %bl,0x10(%esi)
403b1d:	89 5e 14             	mov    %ebx,0x14(%esi)
403b20:	66 89 46 18          	mov    %ax,0x18(%esi)
403b24:	89 5e 1c             	mov    %ebx,0x1c(%esi)
403b27:	66 89 46 20          	mov    %ax,0x20(%esi)
403b2b:	89 5e 24             	mov    %ebx,0x24(%esi)
403b2e:	88 5e 28             	mov    %bl,0x28(%esi)
403b31:	89 5e 2c             	mov    %ebx,0x2c(%esi)
403b34:	88 5e 30             	mov    %bl,0x30(%esi)
403b37:	39 45 08             	cmp    %eax,0x8(%ebp)
403b3a:	74 13                	je     0x403b4f
403b3c:	ff 75 08             	push   0x8(%ebp)
403b3f:	56                   	push   %esi
403b40:	e8 6a 98 02 00       	call   0x42d3af
403b45:	59                   	pop    %ecx
403b46:	59                   	pop    %ecx
403b47:	8b c6                	mov    %esi,%eax
403b49:	5e                   	pop    %esi
403b4a:	5b                   	pop    %ebx
403b4b:	c9                   	leave
403b4c:	c2 04 00             	ret    $0x4
403b4f:	68 04 95 43 00       	push   $0x439504
403b54:	8d 4d f8             	lea    -0x8(%ebp),%ecx
403b57:	e8 90 ff ff ff       	call   0x403aec
403b5c:	8b c8                	mov    %eax,%ecx
403b5e:	e8 f6 fe ff ff       	call   0x403a59
403b63:	cc                   	int3
403b64:	56                   	push   %esi
403b65:	8b f1                	mov    %ecx,%esi
403b67:	57                   	push   %edi
403b68:	56                   	push   %esi
403b69:	e8 8d 98 02 00       	call   0x42d3fb
403b6e:	83 7e 2c 00          	cmpl   $0x0,0x2c(%esi)
403b72:	59                   	pop    %ecx
403b73:	74 09                	je     0x403b7e
403b75:	ff 76 2c             	push   0x2c(%esi)
403b78:	e8 93 30 00 00       	call   0x406c10
403b7d:	59                   	pop    %ecx
403b7e:	33 ff                	xor    %edi,%edi
403b80:	89 7e 2c             	mov    %edi,0x2c(%esi)
403b83:	39 7e 24             	cmp    %edi,0x24(%esi)
403b86:	74 09                	je     0x403b91
403b88:	ff 76 24             	push   0x24(%esi)
403b8b:	e8 80 30 00 00       	call   0x406c10
403b90:	59                   	pop    %ecx
403b91:	89 7e 24             	mov    %edi,0x24(%esi)
403b94:	39 7e 1c             	cmp    %edi,0x1c(%esi)
403b97:	74 09                	je     0x403ba2
403b99:	ff 76 1c             	push   0x1c(%esi)
403b9c:	e8 6f 30 00 00       	call   0x406c10
403ba1:	59                   	pop    %ecx
403ba2:	89 7e 1c             	mov    %edi,0x1c(%esi)
403ba5:	39 7e 14             	cmp    %edi,0x14(%esi)
403ba8:	74 09                	je     0x403bb3
403baa:	ff 76 14             	push   0x14(%esi)
403bad:	e8 5e 30 00 00       	call   0x406c10
403bb2:	59                   	pop    %ecx
403bb3:	89 7e 14             	mov    %edi,0x14(%esi)
403bb6:	39 7e 0c             	cmp    %edi,0xc(%esi)
403bb9:	74 09                	je     0x403bc4
403bbb:	ff 76 0c             	push   0xc(%esi)
403bbe:	e8 4d 30 00 00       	call   0x406c10
403bc3:	59                   	pop    %ecx
403bc4:	89 7e 0c             	mov    %edi,0xc(%esi)
403bc7:	39 7e 04             	cmp    %edi,0x4(%esi)
403bca:	74 09                	je     0x403bd5
403bcc:	ff 76 04             	push   0x4(%esi)
403bcf:	e8 3c 30 00 00       	call   0x406c10
403bd4:	59                   	pop    %ecx
403bd5:	89 7e 04             	mov    %edi,0x4(%esi)
403bd8:	8b ce                	mov    %esi,%ecx
403bda:	5f                   	pop    %edi
403bdb:	5e                   	pop    %esi
403bdc:	e9 47 95 02 00       	jmp    0x42d128
403be1:	f6 44 24 04 01       	testb  $0x1,0x4(%esp)
403be6:	56                   	push   %esi
403be7:	8b f1                	mov    %ecx,%esi
403be9:	c7 06 8c 84 43 00    	movl   $0x43848c,(%esi)
403bef:	74 0a                	je     0x403bfb
403bf1:	6a 04                	push   $0x4
403bf3:	56                   	push   %esi
403bf4:	e8 f7 2d 00 00       	call   0x4069f0
403bf9:	59                   	pop    %ecx
403bfa:	59                   	pop    %ecx
403bfb:	8b c6                	mov    %esi,%eax
403bfd:	5e                   	pop    %esi
403bfe:	c2 04 00             	ret    $0x4
403c01:	55                   	push   %ebp
403c02:	8b ec                	mov    %esp,%ebp
403c04:	51                   	push   %ecx
403c05:	56                   	push   %esi
403c06:	8b f1                	mov    %ecx,%esi
403c08:	83 3e 00             	cmpl   $0x0,(%esi)
403c0b:	75 24                	jne    0x403c31
403c0d:	6a 00                	push   $0x0
403c0f:	8d 4d fc             	lea    -0x4(%ebp),%ecx
403c12:	e8 b9 94 02 00       	call   0x42d0d0
403c17:	83 3e 00             	cmpl   $0x0,(%esi)
403c1a:	75 0d                	jne    0x403c29
403c1c:	a1 40 fe 43 00       	mov    0x43fe40,%eax
403c21:	40                   	inc    %eax
403c22:	a3 40 fe 43 00       	mov    %eax,0x43fe40
403c27:	89 06                	mov    %eax,(%esi)
403c29:	8d 4d fc             	lea    -0x4(%ebp),%ecx
403c2c:	e8 f7 94 02 00       	call   0x42d128
403c31:	8b 06                	mov    (%esi),%eax
403c33:	5e                   	pop    %esi
403c34:	c9                   	leave
403c35:	c3                   	ret
403c36:	f0 ff 41 04          	lock incl 0x4(%ecx)
403c3a:	c3                   	ret
403c3b:	83 c8 ff             	or     $0xffffffff,%eax
403c3e:	f0 0f c1 41 04       	lock xadd %eax,0x4(%ecx)
403c43:	6a 00                	push   $0x0
403c45:	58                   	pop    %eax
403c46:	0f 44 c1             	cmove  %ecx,%eax
403c49:	c3                   	ret
403c4a:	8b 49 04             	mov    0x4(%ecx),%ecx
403c4d:	85 c9                	test   %ecx,%ecx
403c4f:	74 11                	je     0x403c62
403c51:	8b 01                	mov    (%ecx),%eax
403c53:	ff 50 08             	call   *0x8(%eax)
403c56:	85 c0                	test   %eax,%eax
403c58:	74 08                	je     0x403c62
403c5a:	8b 10                	mov    (%eax),%edx
403c5c:	8b c8                	mov    %eax,%ecx
403c5e:	6a 01                	push   $0x1
403c60:	ff 12                	call   *(%edx)
403c62:	c3                   	ret
403c63:	55                   	push   %ebp
403c64:	8b ec                	mov    %esp,%ebp
403c66:	8b 49 04             	mov    0x4(%ecx),%ecx
403c69:	53                   	push   %ebx
403c6a:	8b 5d 08             	mov    0x8(%ebp),%ebx
403c6d:	56                   	push   %esi
403c6e:	57                   	push   %edi
403c6f:	33 ff                	xor    %edi,%edi
403c71:	8b f3                	mov    %ebx,%esi
403c73:	3b 59 0c             	cmp    0xc(%ecx),%ebx
403c76:	73 0c                	jae    0x403c84
403c78:	8b 41 08             	mov    0x8(%ecx),%eax
403c7b:	8b 04 b0             	mov    (%eax,%esi,4),%eax
403c7e:	85 c0                	test   %eax,%eax
403c80:	75 1c                	jne    0x403c9e
403c82:	eb 02                	jmp    0x403c86
403c84:	8b c7                	mov    %edi,%eax
403c86:	80 79 14 00          	cmpb   $0x0,0x14(%ecx)
403c8a:	74 12                	je     0x403c9e
403c8c:	e8 1a 96 02 00       	call   0x42d2ab
403c91:	3b 58 0c             	cmp    0xc(%eax),%ebx
403c94:	73 06                	jae    0x403c9c
403c96:	8b 40 08             	mov    0x8(%eax),%eax
403c99:	8b 3c b0             	mov    (%eax,%esi,4),%edi
403c9c:	8b c7                	mov    %edi,%eax
403c9e:	5f                   	pop    %edi
403c9f:	5e                   	pop    %esi
403ca0:	5b                   	pop    %ebx
403ca1:	5d                   	pop    %ebp
403ca2:	c2 04 00             	ret    $0x4
403ca5:	33 c0                	xor    %eax,%eax
403ca7:	40                   	inc    %eax
403ca8:	c3                   	ret
403ca9:	55                   	push   %ebp
403caa:	8b ec                	mov    %esp,%ebp
403cac:	8b 45 0c             	mov    0xc(%ebp),%eax
403caf:	83 ec 10             	sub    $0x10,%esp
403cb2:	53                   	push   %ebx
403cb3:	8b d9                	mov    %ecx,%ebx
403cb5:	56                   	push   %esi
403cb6:	57                   	push   %edi
403cb7:	89 43 04             	mov    %eax,0x4(%ebx)
403cba:	8d 45 f0             	lea    -0x10(%ebp),%eax
403cbd:	50                   	push   %eax
403cbe:	c7 03 e0 90 43 00    	movl   $0x4390e0,(%ebx)
403cc4:	e8 9d 99 02 00       	call   0x42d666
403cc9:	8b f0                	mov    %eax,%esi
403ccb:	8d 7b 08             	lea    0x8(%ebx),%edi
403cce:	59                   	pop    %ecx
403ccf:	8b c3                	mov    %ebx,%eax
403cd1:	a5                   	movsl  %ds:(%esi),%es:(%edi)
403cd2:	a5                   	movsl  %ds:(%esi),%es:(%edi)
403cd3:	a5                   	movsl  %ds:(%esi),%es:(%edi)
403cd4:	a5                   	movsl  %ds:(%esi),%es:(%edi)
403cd5:	5f                   	pop    %edi
403cd6:	5e                   	pop    %esi
403cd7:	5b                   	pop    %ebx
403cd8:	c9                   	leave
403cd9:	c2 08 00             	ret    $0x8
403cdc:	55                   	push   %ebp
403cdd:	8b ec                	mov    %esp,%ebp
403cdf:	83 ec 38             	sub    $0x38,%esp
403ce2:	53                   	push   %ebx
403ce3:	56                   	push   %esi
403ce4:	8b 75 08             	mov    0x8(%ebp),%esi
403ce7:	33 db                	xor    %ebx,%ebx
403ce9:	89 5d fc             	mov    %ebx,-0x4(%ebp)
403cec:	85 f6                	test   %esi,%esi
403cee:	74 57                	je     0x403d47
403cf0:	39 1e                	cmp    %ebx,(%esi)
403cf2:	75 53                	jne    0x403d47
403cf4:	57                   	push   %edi
403cf5:	6a 18                	push   $0x18
403cf7:	e8 c4 2c 00 00       	call   0x4069c0
403cfc:	8b f8                	mov    %eax,%edi
403cfe:	59                   	pop    %ecx
403cff:	85 ff                	test   %edi,%edi
403d01:	74 32                	je     0x403d35
403d03:	8b 4d 0c             	mov    0xc(%ebp),%ecx
403d06:	8b 51 04             	mov    0x4(%ecx),%edx
403d09:	85 d2                	test   %edx,%edx
403d0b:	75 07                	jne    0x403d14
403d0d:	b9 14 95 43 00       	mov    $0x439514,%ecx
403d12:	eb 0a                	jmp    0x403d1e
403d14:	8b 4a 18             	mov    0x18(%edx),%ecx
403d17:	85 c9                	test   %ecx,%ecx
403d19:	75 03                	jne    0x403d1e
403d1b:	8d 4a 1c             	lea    0x1c(%edx),%ecx
403d1e:	53                   	push   %ebx
403d1f:	51                   	push   %ecx
403d20:	8d 4d c8             	lea    -0x38(%ebp),%ecx
403d23:	e8 d6 fd ff ff       	call   0x403afe
403d28:	50                   	push   %eax
403d29:	8b cf                	mov    %edi,%ecx
403d2b:	e8 79 ff ff ff       	call   0x403ca9
403d30:	33 db                	xor    %ebx,%ebx
403d32:	43                   	inc    %ebx
403d33:	eb 02                	jmp    0x403d37
403d35:	8b c3                	mov    %ebx,%eax
403d37:	89 06                	mov    %eax,(%esi)
403d39:	5f                   	pop    %edi
403d3a:	f6 c3 01             	test   $0x1,%bl
403d3d:	74 08                	je     0x403d47
403d3f:	8d 4d c8             	lea    -0x38(%ebp),%ecx
403d42:	e8 1d fe ff ff       	call   0x403b64
403d47:	6a 02                	push   $0x2
403d49:	58                   	pop    %eax
403d4a:	5e                   	pop    %esi
403d4b:	5b                   	pop    %ebx
403d4c:	c9                   	leave
403d4d:	c3                   	ret
403d4e:	56                   	push   %esi
403d4f:	8b f1                	mov    %ecx,%esi
403d51:	8b 46 10             	mov    0x10(%esi),%eax
403d54:	85 c0                	test   %eax,%eax
403d56:	7e 0a                	jle    0x403d62
403d58:	ff 76 0c             	push   0xc(%esi)
403d5b:	e8 b0 2e 00 00       	call   0x406c10
403d60:	eb 0a                	jmp    0x403d6c
403d62:	79 09                	jns    0x403d6d
403d64:	ff 76 0c             	push   0xc(%esi)
403d67:	e8 84 2c 00 00       	call   0x4069f0
403d6c:	59                   	pop    %ecx
403d6d:	ff 76 14             	push   0x14(%esi)
403d70:	e8 9b 2e 00 00       	call   0x406c10
403d75:	59                   	pop    %ecx
403d76:	5e                   	pop    %esi
403d77:	c3                   	ret
403d78:	8d 41 08             	lea    0x8(%ecx),%eax
403d7b:	50                   	push   %eax
403d7c:	0f b6 44 24 08       	movzbl 0x8(%esp),%eax
403d81:	50                   	push   %eax
403d82:	e8 4a 99 02 00       	call   0x42d6d1
403d87:	59                   	pop    %ecx
403d88:	59                   	pop    %ecx
403d89:	c2 04 00             	ret    $0x4
403d8c:	56                   	push   %esi
403d8d:	8b 74 24 08          	mov    0x8(%esp),%esi
403d91:	3b 74 24 0c          	cmp    0xc(%esp),%esi
403d95:	74 1a                	je     0x403db1
403d97:	57                   	push   %edi
403d98:	8d 79 08             	lea    0x8(%ecx),%edi
403d9b:	0f b6 06             	movzbl (%esi),%eax
403d9e:	57                   	push   %edi
403d9f:	50                   	push   %eax
403da0:	e8 2c 99 02 00       	call   0x42d6d1
403da5:	88 06                	mov    %al,(%esi)
403da7:	46                   	inc    %esi
403da8:	59                   	pop    %ecx
403da9:	59                   	pop    %ecx
403daa:	3b 74 24 10          	cmp    0x10(%esp),%esi
403dae:	75 eb                	jne    0x403d9b
403db0:	5f                   	pop    %edi
403db1:	8b c6                	mov    %esi,%eax
403db3:	5e                   	pop    %esi
403db4:	c2 08 00             	ret    $0x8
403db7:	8d 41 08             	lea    0x8(%ecx),%eax
403dba:	50                   	push   %eax
403dbb:	0f b6 44 24 08       	movzbl 0x8(%esp),%eax
403dc0:	50                   	push   %eax
403dc1:	e8 fa 99 02 00       	call   0x42d7c0
403dc6:	59                   	pop    %ecx
403dc7:	59                   	pop    %ecx
403dc8:	c2 04 00             	ret    $0x4
403dcb:	56                   	push   %esi
403dcc:	8b 74 24 08          	mov    0x8(%esp),%esi
403dd0:	3b 74 24 0c          	cmp    0xc(%esp),%esi
403dd4:	74 1a                	je     0x403df0
403dd6:	57                   	push   %edi
403dd7:	8d 79 08             	lea    0x8(%ecx),%edi
403dda:	0f b6 06             	movzbl (%esi),%eax
403ddd:	57                   	push   %edi
403dde:	50                   	push   %eax
403ddf:	e8 dc 99 02 00       	call   0x42d7c0
403de4:	88 06                	mov    %al,(%esi)
403de6:	46                   	inc    %esi
403de7:	59                   	pop    %ecx
403de8:	59                   	pop    %ecx
403de9:	3b 74 24 10          	cmp    0x10(%esp),%esi
403ded:	75 eb                	jne    0x403dda
403def:	5f                   	pop    %edi
403df0:	8b c6                	mov    %esi,%eax
403df2:	5e                   	pop    %esi
403df3:	c2 08 00             	ret    $0x8
403df6:	8a 44 24 04          	mov    0x4(%esp),%al
403dfa:	c2 04 00             	ret    $0x4