aabc47:	cc                   	int3
aabc48:	cc                   	int3
aabc49:	cc                   	int3
aabc4a:	cc                   	int3
aabc4b:	cc                   	int3
aabc4c:	cc                   	int3
aabc4d:	cc                   	int3
aabc4e:	cc                   	int3
aabc4f:	cc                   	int3
aabc50:	80 79 04 00          	cmpb   $0x0,0x4(%ecx)
aabc54:	74 03                	je     0xaabc59
aabc56:	8b 01                	mov    (%ecx),%eax
aabc58:	c3                   	ret
aabc59:	6a 00                	push   $0x0
aabc5b:	68 9f 01 00 00       	push   $0x19f
aabc60:	68 20 f5 c7 00       	push   $0xc7f520
aabc65:	68 98 f5 c7 00       	push   $0xc7f598
aabc6a:	68 08 f6 c7 00       	push   $0xc7f608
aabc6f:	e8 e4 a7 98 ff       	call   0x436458
aabc74:	cc                   	int3
aabc75:	cc                   	int3
aabc76:	cc                   	int3
aabc77:	cc                   	int3
aabc78:	cc                   	int3
aabc79:	cc                   	int3
aabc7a:	cc                   	int3
aabc7b:	cc                   	int3
aabc7c:	cc                   	int3
aabc7d:	cc                   	int3
aabc7e:	80 79 04 00          	cmpb   $0x0,0x4(%ecx)
aabc82:	75 03                	jne    0xaabc87
aabc84:	8b 01                	mov    (%ecx),%eax
aabc86:	c3                   	ret
aabc87:	6a 00                	push   $0x0
aabc89:	68 a5 01 00 00       	push   $0x1a5
aabc8e:	68 20 f5 c7 00       	push   $0xc7f520
aabc93:	68 28 f6 c7 00       	push   $0xc7f628
aabc98:	68 94 f6 c7 00       	push   $0xc7f694
aabc9d:	e8 b6 a7 98 ff       	call   0x436458
aabca2:	cc                   	int3
aabca3:	cc                   	int3
aabca4:	cc                   	int3
aabca5:	cc                   	int3
aabca6:	cc                   	int3
aabca7:	cc                   	int3
aabca8:	cc                   	int3
aabca9:	cc                   	int3
aabcaa:	cc                   	int3
aabcab:	cc                   	int3
aabcac:	8b ff                	mov    %edi,%edi
aabcae:	55                   	push   %ebp
aabcaf:	8b ec                	mov    %esp,%ebp
aabcb1:	8b 4d 0c             	mov    0xc(%ebp),%ecx
aabcb4:	80 79 04 00          	cmpb   $0x0,0x4(%ecx)
aabcb8:	74 12                	je     0xaabccc
aabcba:	e8 51 1d 98 ff       	call   0x42da10
aabcbf:	50                   	push   %eax
aabcc0:	ff 75 08             	push   0x8(%ebp)
aabcc3:	e8 4b fe 95 ff       	call   0x40bb13
aabcc8:	59                   	pop    %ecx
aabcc9:	59                   	pop    %ecx
aabcca:	5d                   	pop    %ebp
aabccb:	c3                   	ret
aabccc:	e8 b4 a3 97 ff       	call   0x426085
aabcd1:	33 c9                	xor    %ecx,%ecx
aabcd3:	38 4d 08             	cmp    %cl,0x8(%ebp)
aabcd6:	0f 95 c1             	setne  %cl
aabcd9:	c1 e1 1f             	shl    $0x1f,%ecx
aabcdc:	81 c9 00 00 80 7f    	or     $0x7f800000,%ecx
aabce2:	89 08                	mov    %ecx,(%eax)
aabce4:	5d                   	pop    %ebp
aabce5:	c3                   	ret
aabce6:	cc                   	int3
aabce7:	cc                   	int3
aabce8:	cc                   	int3
aabce9:	cc                   	int3
aabcea:	cc                   	int3
aabceb:	cc                   	int3
aabcec:	cc                   	int3
aabced:	cc                   	int3
aabcee:	cc                   	int3
aabcef:	cc                   	int3
aabcf0:	cc                   	int3
aabcf1:	cc                   	int3
aabcf2:	cc                   	int3
aabcf3:	cc                   	int3
aabcf4:	8b ff                	mov    %edi,%edi
aabcf6:	55                   	push   %ebp
aabcf7:	8b ec                	mov    %esp,%ebp
aabcf9:	83 ec 24             	sub    $0x24,%esp
aabcfc:	53                   	push   %ebx
aabcfd:	56                   	push   %esi
aabcfe:	8b 75 0c             	mov    0xc(%ebp),%esi
aabd01:	33 db                	xor    %ebx,%ebx
aabd03:	57                   	push   %edi
aabd04:	8b 7d 08             	mov    0x8(%ebp),%edi
aabd07:	3b f3                	cmp    %ebx,%esi
aabd09:	77 16                	ja     0xaabd21
aabd0b:	83 ff ff             	cmp    $0xffffffff,%edi
aabd0e:	77 11                	ja     0xaabd21
aabd10:	0f bd c7             	bsr    %edi,%eax
aabd13:	89 5d dc             	mov    %ebx,-0x24(%ebp)
aabd16:	74 05                	je     0xaabd1d
aabd18:	8d 48 01             	lea    0x1(%eax),%ecx
aabd1b:	eb 14                	jmp    0xaabd31
aabd1d:	8b cb                	mov    %ebx,%ecx
aabd1f:	eb 10                	jmp    0xaabd31
aabd21:	0f bd c6             	bsr    %esi,%eax
aabd24:	89 5d dc             	mov    %ebx,-0x24(%ebp)
aabd27:	8d 48 01             	lea    0x1(%eax),%ecx
aabd2a:	75 02                	jne    0xaabd2e
aabd2c:	8b cb                	mov    %ebx,%ecx
aabd2e:	83 c1 20             	add    $0x20,%ecx
aabd31:	8b 45 1c             	mov    0x1c(%ebp),%eax
aabd34:	33 d2                	xor    %edx,%edx
aabd36:	8a 40 04             	mov    0x4(%eax),%al
aabd39:	84 c0                	test   %al,%al
aabd3b:	88 45 ff             	mov    %al,-0x1(%ebp)
aabd3e:	0f 94 c2             	sete   %dl
aabd41:	33 c0                	xor    %eax,%eax
aabd43:	4a                   	dec    %edx
aabd44:	83 e2 1d             	and    $0x1d,%edx
aabd47:	83 c2 18             	add    $0x18,%edx
aabd4a:	2b d1                	sub    %ecx,%edx
aabd4c:	8b 4d 10             	mov    0x10(%ebp),%ecx
aabd4f:	2b ca                	sub    %edx,%ecx
aabd51:	89 55 f4             	mov    %edx,-0xc(%ebp)
aabd54:	38 45 ff             	cmp    %al,-0x1(%ebp)
aabd57:	89 4d f8             	mov    %ecx,-0x8(%ebp)
aabd5a:	0f 94 c0             	sete   %al
aabd5d:	48                   	dec    %eax
aabd5e:	25 80 03 00 00       	and    $0x380,%eax
aabd63:	83 c0 7f             	add    $0x7f,%eax
aabd66:	89 45 f0             	mov    %eax,-0x10(%ebp)
aabd69:	3b c8                	cmp    %eax,%ecx
aabd6b:	7e 15                	jle    0xaabd82
aabd6d:	ff 75 1c             	push   0x1c(%ebp)
aabd70:	ff 75 14             	push   0x14(%ebp)
aabd73:	e8 03 02 98 ff       	call   0x42bf7b
aabd78:	59                   	pop    %ecx
aabd79:	59                   	pop    %ecx
aabd7a:	6a 03                	push   $0x3
aabd7c:	58                   	pop    %eax
aabd7d:	e9 b7 02 00 00       	jmp    0xaac039
aabd82:	33 c0                	xor    %eax,%eax
aabd84:	38 45 ff             	cmp    %al,-0x1(%ebp)
aabd87:	0f 94 c0             	sete   %al
aabd8a:	48                   	dec    %eax
aabd8b:	25 80 fc ff ff       	and    $0xfffffc80,%eax
aabd90:	83 c0 82             	add    $0xffffff82,%eax
aabd93:	3b c8                	cmp    %eax,%ecx
aabd95:	0f 8d 35 01 00 00    	jge    0xaabed0
aabd9b:	8b 45 f0             	mov    -0x10(%ebp),%eax
aabd9e:	48                   	dec    %eax
aabd9f:	03 c1                	add    %ecx,%eax
aabda1:	8b 4d f0             	mov    -0x10(%ebp),%ecx
aabda4:	03 c2                	add    %edx,%eax
aabda6:	f7 d9                	neg    %ecx
aabda8:	89 45 ec             	mov    %eax,-0x14(%ebp)
aabdab:	89 4d f8             	mov    %ecx,-0x8(%ebp)
aabdae:	85 c0                	test   %eax,%eax
aabdb0:	0f 89 12 01 00 00    	jns    0xaabec8
aabdb6:	f7 d8                	neg    %eax
aabdb8:	89 45 f0             	mov    %eax,-0x10(%ebp)
aabdbb:	83 f8 40             	cmp    $0x40,%eax
aabdbe:	0f 83 f0 00 00 00    	jae    0xaabeb4
aabdc4:	8d 48 ff             	lea    -0x1(%eax),%ecx
aabdc7:	33 d2                	xor    %edx,%edx
aabdc9:	33 c0                	xor    %eax,%eax
aabdcb:	40                   	inc    %eax
aabdcc:	e8 8e eb 97 ff       	call   0x42a95f
aabdd1:	8b 4d f0             	mov    -0x10(%ebp),%ecx
aabdd4:	89 45 e8             	mov    %eax,-0x18(%ebp)
aabdd7:	83 c0 ff             	add    $0xffffffff,%eax
aabdda:	89 45 e0             	mov    %eax,-0x20(%ebp)
aabddd:	8b c2                	mov    %edx,%eax
aabddf:	83 d0 ff             	adc    $0xffffffff,%eax
aabde2:	89 55 e4             	mov    %edx,-0x1c(%ebp)
aabde5:	89 45 dc             	mov    %eax,-0x24(%ebp)
aabde8:	33 d2                	xor    %edx,%edx
aabdea:	33 c0                	xor    %eax,%eax
aabdec:	40                   	inc    %eax
aabded:	e8 6d eb 97 ff       	call   0x42a95f
aabdf2:	23 c7                	and    %edi,%eax
aabdf4:	c6 45 fd 01          	movb   $0x1,-0x3(%ebp)
aabdf8:	23 d6                	and    %esi,%edx
aabdfa:	0b c2                	or     %edx,%eax
aabdfc:	75 03                	jne    0xaabe01
aabdfe:	88 5d fd             	mov    %bl,-0x3(%ebp)
aabe01:	8b 45 e8             	mov    -0x18(%ebp),%eax
aabe04:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
aabe07:	23 c7                	and    %edi,%eax
aabe09:	23 ce                	and    %esi,%ecx
aabe0b:	0b c1                	or     %ecx,%eax
aabe0d:	b1 01                	mov    $0x1,%cl
aabe0f:	75 02                	jne    0xaabe13
aabe11:	8a cb                	mov    %bl,%cl
aabe13:	88 4d ff             	mov    %cl,-0x1(%ebp)
aabe16:	38 5d 18             	cmp    %bl,0x18(%ebp)
aabe19:	74 10                	je     0xaabe2b
aabe1b:	8b 45 e0             	mov    -0x20(%ebp),%eax
aabe1e:	8b 55 dc             	mov    -0x24(%ebp),%edx
aabe21:	23 c7                	and    %edi,%eax
aabe23:	23 d6                	and    %esi,%edx
aabe25:	0b c2                	or     %edx,%eax
aabe27:	8a c3                	mov    %bl,%al
aabe29:	74 02                	je     0xaabe2d
aabe2b:	b0 01                	mov    $0x1,%al
aabe2d:	88 45 fe             	mov    %al,-0x2(%ebp)
aabe30:	84 c9                	test   %cl,%cl
aabe32:	75 04                	jne    0xaabe38
aabe34:	84 c0                	test   %al,%al
aabe36:	74 35                	je     0xaabe6d
aabe38:	e8 0b 77 96 ff       	call   0x413548
aabe3d:	85 c0                	test   %eax,%eax
aabe3f:	74 1b                	je     0xaabe5c
aabe41:	3d 00 01 00 00       	cmp    $0x100,%eax
aabe46:	74 0c                	je     0xaabe54
aabe48:	3d 00 02 00 00       	cmp    $0x200,%eax
aabe4d:	75 1e                	jne    0xaabe6d
aabe4f:	8a 5d 14             	mov    0x14(%ebp),%bl
aabe52:	eb 19                	jmp    0xaabe6d
aabe54:	38 5d 14             	cmp    %bl,0x14(%ebp)
aabe57:	0f 94 c3             	sete   %bl
aabe5a:	eb 11                	jmp    0xaabe6d
aabe5c:	38 5d ff             	cmp    %bl,-0x1(%ebp)
aabe5f:	74 0c                	je     0xaabe6d
aabe61:	38 5d fe             	cmp    %bl,-0x2(%ebp)
aabe64:	75 05                	jne    0xaabe6b
aabe66:	38 5d fd             	cmp    %bl,-0x3(%ebp)
aabe69:	74 02                	je     0xaabe6d
aabe6b:	b3 01                	mov    $0x1,%bl
aabe6d:	8b 4d f0             	mov    -0x10(%ebp),%ecx
aabe70:	8b c7                	mov    %edi,%eax
aabe72:	8b d6                	mov    %esi,%edx
aabe74:	e8 af cd 96 ff       	call   0x418c28
aabe79:	8b f8                	mov    %eax,%edi
aabe7b:	8b f2                	mov    %edx,%esi
aabe7d:	0f b6 c3             	movzbl %bl,%eax
aabe80:	99                   	cltd
aabe81:	03 f8                	add    %eax,%edi
aabe83:	8b c7                	mov    %edi,%eax
aabe85:	13 f2                	adc    %edx,%esi
aabe87:	0b c6                	or     %esi,%eax
aabe89:	74 29                	je     0xaabeb4
aabe8b:	8b 4d 1c             	mov    0x1c(%ebp),%ecx
aabe8e:	e8 ec a4 95 ff       	call   0x40637f
aabe93:	3b f2                	cmp    %edx,%esi
aabe95:	0f 82 5d 01 00 00    	jb     0xaabff8
aabe9b:	77 08                	ja     0xaabea5
aabe9d:	3b f8                	cmp    %eax,%edi
aabe9f:	0f 86 53 01 00 00    	jbe    0xaabff8
aabea5:	8b 5d 10             	mov    0x10(%ebp),%ebx
aabea8:	2b 5d ec             	sub    -0x14(%ebp),%ebx
aabeab:	2b 5d f4             	sub    -0xc(%ebp),%ebx
aabeae:	4b                   	dec    %ebx
aabeaf:	e9 47 01 00 00       	jmp    0xaabffb
aabeb4:	ff 75 1c             	push   0x1c(%ebp)
aabeb7:	ff 75 14             	push   0x14(%ebp)
aabeba:	e8 f3 fd 95 ff       	call   0x40bcb2
aabebf:	59                   	pop    %ecx
aabec0:	59                   	pop    %ecx
aabec1:	6a 02                	push   $0x2
aabec3:	e9 b4 fe ff ff       	jmp    0xaabd7c
aabec8:	8b 4d ec             	mov    -0x14(%ebp),%ecx
aabecb:	e9 1b 01 00 00       	jmp    0xaabfeb
aabed0:	85 d2                	test   %edx,%edx
aabed2:	0f 89 0e 01 00 00    	jns    0xaabfe6
aabed8:	f7 da                	neg    %edx
aabeda:	89 55 f4             	mov    %edx,-0xc(%ebp)
aabedd:	83 fa 40             	cmp    $0x40,%edx
aabee0:	72 09                	jb     0xaabeeb
aabee2:	8b fb                	mov    %ebx,%edi
aabee4:	8b f3                	mov    %ebx,%esi
aabee6:	e9 c1 00 00 00       	jmp    0xaabfac
aabeeb:	33 c0                	xor    %eax,%eax
aabeed:	8d 4a ff             	lea    -0x1(%edx),%ecx
aabef0:	40                   	inc    %eax
aabef1:	33 d2                	xor    %edx,%edx
aabef3:	e8 67 ea 97 ff       	call   0x42a95f
aabef8:	8b 4d f4             	mov    -0xc(%ebp),%ecx
aabefb:	89 45 dc             	mov    %eax,-0x24(%ebp)
aabefe:	83 c0 ff             	add    $0xffffffff,%eax
aabf01:	89 45 e4             	mov    %eax,-0x1c(%ebp)
aabf04:	8b c2                	mov    %edx,%eax
aabf06:	83 d0 ff             	adc    $0xffffffff,%eax
aabf09:	89 55 e0             	mov    %edx,-0x20(%ebp)
aabf0c:	89 45 e8             	mov    %eax,-0x18(%ebp)
aabf0f:	33 d2                	xor    %edx,%edx
aabf11:	33 c0                	xor    %eax,%eax
aabf13:	40                   	inc    %eax
aabf14:	e8 46 ea 97 ff       	call   0x42a95f
aabf19:	23 c7                	and    %edi,%eax
aabf1b:	c6 45 ff 01          	movb   $0x1,-0x1(%ebp)
aabf1f:	23 d6                	and    %esi,%edx
aabf21:	0b c2                	or     %edx,%eax
aabf23:	75 03                	jne    0xaabf28
aabf25:	88 5d ff             	mov    %bl,-0x1(%ebp)
aabf28:	8b 45 dc             	mov    -0x24(%ebp),%eax
aabf2b:	8b 4d e0             	mov    -0x20(%ebp),%ecx
aabf2e:	23 c7                	and    %edi,%eax
aabf30:	23 ce                	and    %esi,%ecx
aabf32:	0b c1                	or     %ecx,%eax
aabf34:	b1 01                	mov    $0x1,%cl
aabf36:	75 02                	jne    0xaabf3a
aabf38:	8a cb                	mov    %bl,%cl
aabf3a:	88 4d fd             	mov    %cl,-0x3(%ebp)
aabf3d:	38 5d 18             	cmp    %bl,0x18(%ebp)
aabf40:	74 10                	je     0xaabf52
aabf42:	8b 45 e4             	mov    -0x1c(%ebp),%eax
aabf45:	8b 55 e8             	mov    -0x18(%ebp),%edx
aabf48:	23 c7                	and    %edi,%eax
aabf4a:	23 d6                	and    %esi,%edx
aabf4c:	0b c2                	or     %edx,%eax
aabf4e:	8a c3                	mov    %bl,%al
aabf50:	74 02                	je     0xaabf54
aabf52:	b0 01                	mov    $0x1,%al
aabf54:	88 45 fe             	mov    %al,-0x2(%ebp)
aabf57:	84 c9                	test   %cl,%cl
aabf59:	75 04                	jne    0xaabf5f
aabf5b:	84 c0                	test   %al,%al
aabf5d:	74 35                	je     0xaabf94
aabf5f:	e8 e4 75 96 ff       	call   0x413548
aabf64:	85 c0                	test   %eax,%eax
aabf66:	74 1b                	je     0xaabf83
aabf68:	3d 00 01 00 00       	cmp    $0x100,%eax
aabf6d:	74 0c                	je     0xaabf7b
aabf6f:	3d 00 02 00 00       	cmp    $0x200,%eax
aabf74:	75 1e                	jne    0xaabf94
aabf76:	8a 5d 14             	mov    0x14(%ebp),%bl
aabf79:	eb 19                	jmp    0xaabf94
aabf7b:	38 5d 14             	cmp    %bl,0x14(%ebp)
aabf7e:	0f 94 c3             	sete   %bl
aabf81:	eb 11                	jmp    0xaabf94
aabf83:	38 5d fd             	cmp    %bl,-0x3(%ebp)
aabf86:	74 0c                	je     0xaabf94
aabf88:	38 5d fe             	cmp    %bl,-0x2(%ebp)
aabf8b:	75 05                	jne    0xaabf92
aabf8d:	38 5d ff             	cmp    %bl,-0x1(%ebp)
aabf90:	74 02                	je     0xaabf94
aabf92:	b3 01                	mov    $0x1,%bl
aabf94:	8b 4d f4             	mov    -0xc(%ebp),%ecx
aabf97:	8b c7                	mov    %edi,%eax
aabf99:	8b d6                	mov    %esi,%edx
aabf9b:	e8 88 cc 96 ff       	call   0x418c28
aabfa0:	8b f8                	mov    %eax,%edi
aabfa2:	8b f2                	mov    %edx,%esi
aabfa4:	0f b6 c3             	movzbl %bl,%eax
aabfa7:	99                   	cltd
aabfa8:	03 f8                	add    %eax,%edi