53997e:	8b 41 fc             	mov    -0x4(%ecx),%eax
539981:	3b c1                	cmp    %ecx,%eax
539983:	73 22                	jae    0x5399a7
539985:	2b c8                	sub    %eax,%ecx
539987:	83 f9 04             	cmp    $0x4,%ecx
53998a:	72 20                	jb     0x5399ac
53998c:	83 f9 23             	cmp    $0x23,%ecx
53998f:	77 20                	ja     0x5399b1
539991:	8b c8                	mov    %eax,%ecx
539993:	51                   	push   %ecx
539994:	e8 f6 7d ec ff       	call   0x40178f
539999:	59                   	pop    %ecx
53999a:	c2 08 00             	ret    $0x8
53999d:	e8 eb 3f f0 ff       	call   0x43d98d
5399a2:	e8 e6 3f f0 ff       	call   0x43d98d
5399a7:	e8 e1 3f f0 ff       	call   0x43d98d
5399ac:	e8 dc 3f f0 ff       	call   0x43d98d
5399b1:	e8 d7 3f f0 ff       	call   0x43d98d
5399b6:	cc                   	int3
5399b7:	cc                   	int3
5399b8:	cc                   	int3
5399b9:	cc                   	int3
5399ba:	cc                   	int3
5399bb:	cc                   	int3
5399bc:	cc                   	int3
5399bd:	cc                   	int3
5399be:	cc                   	int3
5399bf:	cc                   	int3
5399c0:	cc                   	int3
5399c1:	cc                   	int3
5399c2:	cc                   	int3
5399c3:	cc                   	int3
5399c4:	cc                   	int3
5399c5:	cc                   	int3
5399c6:	cc                   	int3
5399c7:	cc                   	int3
5399c8:	cc                   	int3
5399c9:	cc                   	int3
5399ca:	cc                   	int3
5399cb:	cc                   	int3
5399cc:	cc                   	int3
5399cd:	cc                   	int3
5399ce:	cc                   	int3
5399cf:	cc                   	int3
5399d0:	8b 44 24 08          	mov    0x8(%esp),%eax
5399d4:	8b 4c 24 04          	mov    0x4(%esp),%ecx
5399d8:	3d ff ff ff 3f       	cmp    $0x3fffffff,%eax
5399dd:	77 2e                	ja     0x539a0d
5399df:	c1 e0 02             	shl    $0x2,%eax
5399e2:	3d 00 10 00 00       	cmp    $0x1000,%eax
5399e7:	72 1a                	jb     0x539a03
5399e9:	f6 c1 1f             	test   $0x1f,%cl
5399ec:	75 24                	jne    0x539a12
5399ee:	8b 41 fc             	mov    -0x4(%ecx),%eax
5399f1:	3b c1                	cmp    %ecx,%eax
5399f3:	73 22                	jae    0x539a17
5399f5:	2b c8                	sub    %eax,%ecx
5399f7:	83 f9 04             	cmp    $0x4,%ecx
5399fa:	72 20                	jb     0x539a1c
5399fc:	83 f9 23             	cmp    $0x23,%ecx
5399ff:	77 20                	ja     0x539a21
539a01:	8b c8                	mov    %eax,%ecx
539a03:	51                   	push   %ecx
539a04:	e8 86 7d ec ff       	call   0x40178f
539a09:	59                   	pop    %ecx
539a0a:	c2 08 00             	ret    $0x8
539a0d:	e8 7b 3f f0 ff       	call   0x43d98d
539a12:	e8 76 3f f0 ff       	call   0x43d98d
539a17:	e8 71 3f f0 ff       	call   0x43d98d
539a1c:	e8 6c 3f f0 ff       	call   0x43d98d
539a21:	e8 67 3f f0 ff       	call   0x43d98d
539a26:	cc                   	int3
539a27:	cc                   	int3
539a28:	cc                   	int3
539a29:	cc                   	int3
539a2a:	cc                   	int3
539a2b:	cc                   	int3
539a2c:	cc                   	int3
539a2d:	cc                   	int3
539a2e:	cc                   	int3
539a2f:	cc                   	int3
539a30:	cc                   	int3
539a31:	cc                   	int3
539a32:	cc                   	int3
539a33:	cc                   	int3
539a34:	cc                   	int3
539a35:	cc                   	int3
539a36:	cc                   	int3
539a37:	cc                   	int3
539a38:	cc                   	int3
539a39:	cc                   	int3
539a3a:	cc                   	int3
539a3b:	cc                   	int3
539a3c:	cc                   	int3
539a3d:	cc                   	int3
539a3e:	cc                   	int3
539a3f:	cc                   	int3
539a40:	8b 44 24 08          	mov    0x8(%esp),%eax
539a44:	8b 4c 24 04          	mov    0x4(%esp),%ecx
539a48:	3d c7 71 1c 07       	cmp    $0x71c71c7,%eax
539a4d:	77 31                	ja     0x539a80
539a4f:	8d 04 c0             	lea    (%eax,%eax,8),%eax
539a52:	c1 e0 02             	shl    $0x2,%eax
539a55:	3d 00 10 00 00       	cmp    $0x1000,%eax
539a5a:	72 1a                	jb     0x539a76
539a5c:	f6 c1 1f             	test   $0x1f,%cl
539a5f:	75 24                	jne    0x539a85
539a61:	8b 41 fc             	mov    -0x4(%ecx),%eax
539a64:	3b c1                	cmp    %ecx,%eax
539a66:	73 22                	jae    0x539a8a
539a68:	2b c8                	sub    %eax,%ecx
539a6a:	83 f9 04             	cmp    $0x4,%ecx
539a6d:	72 20                	jb     0x539a8f
539a6f:	83 f9 23             	cmp    $0x23,%ecx
539a72:	77 20                	ja     0x539a94
539a74:	8b c8                	mov    %eax,%ecx
539a76:	51                   	push   %ecx
539a77:	e8 13 7d ec ff       	call   0x40178f
539a7c:	59                   	pop    %ecx
539a7d:	c2 08 00             	ret    $0x8
539a80:	e8 08 3f f0 ff       	call   0x43d98d
539a85:	e8 03 3f f0 ff       	call   0x43d98d
539a8a:	e8 fe 3e f0 ff       	call   0x43d98d
539a8f:	e8 f9 3e f0 ff       	call   0x43d98d
539a94:	e8 f4 3e f0 ff       	call   0x43d98d
539a99:	cc                   	int3
539a9a:	cc                   	int3
539a9b:	cc                   	int3
539a9c:	cc                   	int3
539a9d:	cc                   	int3
539a9e:	cc                   	int3
539a9f:	cc                   	int3
539aa0:	cc                   	int3
539aa1:	cc                   	int3
539aa2:	cc                   	int3
539aa3:	cc                   	int3
539aa4:	cc                   	int3
539aa5:	cc                   	int3
539aa6:	cc                   	int3
539aa7:	cc                   	int3
539aa8:	cc                   	int3
539aa9:	cc                   	int3
539aaa:	cc                   	int3
539aab:	cc                   	int3
539aac:	cc                   	int3
539aad:	cc                   	int3
539aae:	cc                   	int3
539aaf:	cc                   	int3
539ab0:	8b 44 24 08          	mov    0x8(%esp),%eax
539ab4:	8b 4c 24 04          	mov    0x4(%esp),%ecx
539ab8:	3d c4 4e ec 04       	cmp    $0x4ec4ec4,%eax
539abd:	77 2e                	ja     0x539aed
539abf:	6b c0 34             	imul   $0x34,%eax,%eax
539ac2:	3d 00 10 00 00       	cmp    $0x1000,%eax
539ac7:	72 1a                	jb     0x539ae3
539ac9:	f6 c1 1f             	test   $0x1f,%cl
539acc:	75 24                	jne    0x539af2
539ace:	8b 41 fc             	mov    -0x4(%ecx),%eax
539ad1:	3b c1                	cmp    %ecx,%eax
539ad3:	73 22                	jae    0x539af7
539ad5:	2b c8                	sub    %eax,%ecx
539ad7:	83 f9 04             	cmp    $0x4,%ecx
539ada:	72 20                	jb     0x539afc
539adc:	83 f9 23             	cmp    $0x23,%ecx
539adf:	77 20                	ja     0x539b01
539ae1:	8b c8                	mov    %eax,%ecx
539ae3:	51                   	push   %ecx
539ae4:	e8 a6 7c ec ff       	call   0x40178f
539ae9:	59                   	pop    %ecx
539aea:	c2 08 00             	ret    $0x8
539aed:	e8 9b 3e f0 ff       	call   0x43d98d
539af2:	e8 96 3e f0 ff       	call   0x43d98d
539af7:	e8 91 3e f0 ff       	call   0x43d98d
539afc:	e8 8c 3e f0 ff       	call   0x43d98d
539b01:	e8 87 3e f0 ff       	call   0x43d98d
539b06:	cc                   	int3
539b07:	cc                   	int3
539b08:	cc                   	int3
539b09:	cc                   	int3
539b0a:	cc                   	int3
539b0b:	cc                   	int3
539b0c:	cc                   	int3
539b0d:	cc                   	int3
539b0e:	cc                   	int3
539b0f:	cc                   	int3
539b10:	cc                   	int3
539b11:	cc                   	int3
539b12:	cc                   	int3
539b13:	cc                   	int3
539b14:	cc                   	int3
539b15:	cc                   	int3
539b16:	cc                   	int3
539b17:	cc                   	int3
539b18:	cc                   	int3
539b19:	cc                   	int3
539b1a:	cc                   	int3
539b1b:	cc                   	int3
539b1c:	cc                   	int3
539b1d:	cc                   	int3
539b1e:	cc                   	int3
539b1f:	cc                   	int3
539b20:	8b 44 24 08          	mov    0x8(%esp),%eax
539b24:	8b 4c 24 04          	mov    0x4(%esp),%ecx
539b28:	3d 55 55 55 05       	cmp    $0x5555555,%eax
539b2d:	77 31                	ja     0x539b60
539b2f:	8d 04 40             	lea    (%eax,%eax,2),%eax
539b32:	c1 e0 04             	shl    $0x4,%eax
539b35:	3d 00 10 00 00       	cmp    $0x1000,%eax
539b3a:	72 1a                	jb     0x539b56
539b3c:	f6 c1 1f             	test   $0x1f,%cl
539b3f:	75 24                	jne    0x539b65
539b41:	8b 41 fc             	mov    -0x4(%ecx),%eax
539b44:	3b c1                	cmp    %ecx,%eax
539b46:	73 22                	jae    0x539b6a
539b48:	2b c8                	sub    %eax,%ecx
539b4a:	83 f9 04             	cmp    $0x4,%ecx
539b4d:	72 20                	jb     0x539b6f
539b4f:	83 f9 23             	cmp    $0x23,%ecx
539b52:	77 20                	ja     0x539b74
539b54:	8b c8                	mov    %eax,%ecx
539b56:	51                   	push   %ecx
539b57:	e8 33 7c ec ff       	call   0x40178f
539b5c:	59                   	pop    %ecx
539b5d:	c2 08 00             	ret    $0x8
539b60:	e8 28 3e f0 ff       	call   0x43d98d
539b65:	e8 23 3e f0 ff       	call   0x43d98d
539b6a:	e8 1e 3e f0 ff       	call   0x43d98d
539b6f:	e8 19 3e f0 ff       	call   0x43d98d
539b74:	e8 14 3e f0 ff       	call   0x43d98d
539b79:	cc                   	int3
539b7a:	cc                   	int3
539b7b:	cc                   	int3
539b7c:	cc                   	int3
539b7d:	cc                   	int3
539b7e:	cc                   	int3
539b7f:	cc                   	int3
539b80:	cc                   	int3
539b81:	cc                   	int3
539b82:	cc                   	int3
539b83:	cc                   	int3
539b84:	cc                   	int3
539b85:	cc                   	int3
539b86:	cc                   	int3
539b87:	cc                   	int3
539b88:	cc                   	int3
539b89:	cc                   	int3
539b8a:	cc                   	int3
539b8b:	cc                   	int3
539b8c:	cc                   	int3
539b8d:	cc                   	int3
539b8e:	cc                   	int3
539b8f:	cc                   	int3
539b90:	8b 44 24 08          	mov    0x8(%esp),%eax
539b94:	8b 4c 24 04          	mov    0x4(%esp),%ecx
539b98:	3d ff ff ff 3f       	cmp    $0x3fffffff,%eax
539b9d:	77 2e                	ja     0x539bcd
539b9f:	c1 e0 02             	shl    $0x2,%eax
539ba2:	3d 00 10 00 00       	cmp    $0x1000,%eax
539ba7:	72 1a                	jb     0x539bc3
539ba9:	f6 c1 1f             	test   $0x1f,%cl
539bac:	75 24                	jne    0x539bd2
539bae:	8b 41 fc             	mov    -0x4(%ecx),%eax
539bb1:	3b c1                	cmp    %ecx,%eax
539bb3:	73 22                	jae    0x539bd7
539bb5:	2b c8                	sub    %eax,%ecx
539bb7:	83 f9 04             	cmp    $0x4,%ecx
539bba:	72 20                	jb     0x539bdc
539bbc:	83 f9 23             	cmp    $0x23,%ecx
539bbf:	77 20                	ja     0x539be1
539bc1:	8b c8                	mov    %eax,%ecx
539bc3:	51                   	push   %ecx
539bc4:	e8 c6 7b ec ff       	call   0x40178f
539bc9:	59                   	pop    %ecx
539bca:	c2 08 00             	ret    $0x8
539bcd:	e8 bb 3d f0 ff       	call   0x43d98d
539bd2:	e8 b6 3d f0 ff       	call   0x43d98d
539bd7:	e8 b1 3d f0 ff       	call   0x43d98d
539bdc:	e8 ac 3d f0 ff       	call   0x43d98d
539be1:	e8 a7 3d f0 ff       	call   0x43d98d
539be6:	cc                   	int3
539be7:	cc                   	int3
539be8:	cc                   	int3
539be9:	cc                   	int3
539bea:	cc                   	int3
539beb:	cc                   	int3
539bec:	cc                   	int3
539bed:	cc                   	int3
539bee:	cc                   	int3
539bef:	cc                   	int3
539bf0:	cc                   	int3
539bf1:	cc                   	int3
539bf2:	cc                   	int3
539bf3:	cc                   	int3
539bf4:	cc                   	int3
539bf5:	cc                   	int3
539bf6:	cc                   	int3
539bf7:	cc                   	int3
539bf8:	cc                   	int3
539bf9:	cc                   	int3
539bfa:	cc                   	int3
539bfb:	cc                   	int3
539bfc:	cc                   	int3
539bfd:	cc                   	int3
539bfe:	cc                   	int3
539bff:	cc                   	int3
539c00:	8b 01                	mov    (%ecx),%eax
539c02:	3b 41 04             	cmp    0x4(%ecx),%eax
539c05:	0f 94 c0             	sete   %al
539c08:	c3                   	ret
539c09:	cc                   	int3
539c0a:	cc                   	int3
539c0b:	cc                   	int3
539c0c:	cc                   	int3
539c0d:	cc                   	int3
539c0e:	cc                   	int3
539c0f:	cc                   	int3
539c10:	8b 44 24 04          	mov    0x4(%esp),%eax
539c14:	8b 49 04             	mov    0x4(%ecx),%ecx
539c17:	89 08                	mov    %ecx,(%eax)
539c19:	c2 04 00             	ret    $0x4
539c1c:	cc                   	int3
539c1d:	cc                   	int3
539c1e:	cc                   	int3
539c1f:	cc                   	int3
539c20:	8b 44 24 04          	mov    0x4(%esp),%eax
539c24:	8b 09                	mov    (%ecx),%ecx
539c26:	89 08                	mov    %ecx,(%eax)
539c28:	c2 04 00             	ret    $0x4
539c2b:	cc                   	int3
539c2c:	cc                   	int3
539c2d:	cc                   	int3
539c2e:	cc                   	int3
539c2f:	cc                   	int3
539c30:	8b 44 24 04          	mov    0x4(%esp),%eax
539c34:	8b 49 04             	mov    0x4(%ecx),%ecx
539c37:	89 08                	mov    %ecx,(%eax)
539c39:	c2 04 00             	ret    $0x4
539c3c:	cc                   	int3
539c3d:	cc                   	int3
539c3e:	cc                   	int3
539c3f:	cc                   	int3
539c40:	8b 44 24 04          	mov    0x4(%esp),%eax
539c44:	8b 49 04             	mov    0x4(%ecx),%ecx
539c47:	89 08                	mov    %ecx,(%eax)
539c49:	c2 04 00             	ret    $0x4
539c4c:	cc                   	int3
539c4d:	cc                   	int3
539c4e:	cc                   	int3
539c4f:	cc                   	int3
539c50:	8b 44 24 04          	mov    0x4(%esp),%eax